From 57569822a606917e43a5ef04648f8f5bb6402698 Mon Sep 17 00:00:00 2001 From: meganasampson Date: Wed, 22 Jul 2026 13:42:10 +0100 Subject: [PATCH 1/3] update docs for python version reqs --- README.md | 4 ++-- docs/source/install/install.rst | 14 +++++++------- docs/source/install/install_linux.rst | 18 +++++++++--------- docs/source/install/install_mac.rst | 16 ++++++++-------- docs/source/install/install_windows.rst | 8 ++++---- 5 files changed, 30 insertions(+), 30 deletions(-) diff --git a/README.md b/README.md index 1aa35d819..ade4d5227 100644 --- a/README.md +++ b/README.md @@ -25,7 +25,7 @@ The code to run the simulated experiments and produce the output shown here come pip install pyvale ``` -We recommend installing `pyvale` into a virtual environment of your choice as `pyvale` requires python 3.11. If you need help setting up your virtual environment and installing `pyvale` head over to the [installation guide](https://computer-aided-validation-laboratory.github.io/pyvale/install/install.html) in our docs. +We recommend installing `pyvale` into a virtual environment of your choice as `pyvale` requires python 3.13. If you need help setting up your virtual environment and installing `pyvale` head over to the [installation guide](https://computer-aided-validation-laboratory.github.io/pyvale/install/install.html) in our docs. ## Contributors The Computer Aided Validation Team at UKAEA: @@ -40,7 +40,7 @@ The Computer Aided Validation Team at UKAEA: - Michael Atkinson ([mikesmic](https://github.com/mikesmic)), UK Atomic Energy Authority - Adel Tayeb ([3adelTayeb](https://github.com/3adelTayeb)), UK Atomic Energy Authority - Alex Marsh ([alexmarsh2](https://github.com/alexmarsh2)), UK Atomic Energy Authority -- Rory Spencer ([fusmatrs](https://github.com/orgs/Computer-Aided-Validation-Laboratory/people/fusmatrs)), UK Atomic Energy Authority +- Rory Spencer ([fusmatrs](https://github.com/fusmatrs)), UK Atomic Energy Authority - John Charlton ([coolmule0](https://github.com/coolmule0)), UK Atomic Energy Authority diff --git a/docs/source/install/install.rst b/docs/source/install/install.rst index 254a9656a..3a4d71684 100644 --- a/docs/source/install/install.rst +++ b/docs/source/install/install.rst @@ -3,7 +3,7 @@ Installation =================== -If you have **Python 3.11** installed you can setup ``pyvale`` using your preferred package manager: +If you have **Python 3.13** installed you can setup ``pyvale`` using your preferred package manager: .. tab-set:: @@ -11,8 +11,8 @@ If you have **Python 3.11** installed you can setup ``pyvale`` using your prefe .. code-block:: bash - # Create a virtual environment with Python 3.11 - python3.11 -m venv venv-pyvale + # Create a virtual environment with Python 3.13 + python3.13 -m venv venv-pyvale # Activate the environment source venv-pyvale/bin/activate # On Windows: .\venv-pyvale\Scripts\Activate.ps1 @@ -24,8 +24,8 @@ If you have **Python 3.11** installed you can setup ``pyvale`` using your prefe .. code-block:: bash - # Initialize a new project with Python 3.11 - uv init --python 3.11 try-pyvale + # Initialize a new project with Python 3.13 + uv init --python 3.13 try-pyvale cd try-pyvale # Add pyvale as a dependency @@ -36,8 +36,8 @@ If you have **Python 3.11** installed you can setup ``pyvale`` using your prefe .. code-block:: bash - # Create a conda environment with Python 3.11 - conda create -n pyvale-env python=3.11 + # Create a conda environment with Python 3.13 + conda create -n pyvale-env python=3.13 # Activate the environment conda activate pyvale-env diff --git a/docs/source/install/install_linux.rst b/docs/source/install/install_linux.rst index d83cc0493..981055864 100644 --- a/docs/source/install/install_linux.rst +++ b/docs/source/install/install_linux.rst @@ -3,28 +3,28 @@ Ubuntu Linux ############ -Configuring Python3.11 +Configuring Python3.13 ------------------------ -To be compatible with ``bpy`` (the Blender python interface), ``pyvale`` uses python 3.11. To install python 3.11 without corrupting your operating systems python installation first add the deadsnakes repository to apt: +To be compatible with ``bpy`` (the Blender python interface), ``pyvale`` uses python 3.13. To install python 3.13 without corrupting your operating systems python installation first add the deadsnakes repository to apt: .. code-block:: bash sudo add-apt-repository ppa:deadsnakes/ppa && sudo apt update -Install python 3.11: +Install python 3.13: .. code-block:: bash - sudo apt install python3.11 python3.11-dev python3.11-venv + sudo apt install python3.13 python3.13-dev python3.13-venv -Check your python 3.11 install is working using the following command which should open an interactive python interpreter: +Check your python 3.13 install is working using the following command which should open an interactive python interpreter: .. code-block:: bash - python3.11 + python3.13 -If everything has worked you should see an interactive python console with Python 3.11.xx in the header. You can now exit the interpreter using ``quit()``. +If everything has worked you should see an interactive python console with Python 3.13.xx in the header. You can now exit the interpreter using ``quit()``. Interactive ROI Dependencies ---------------------------- @@ -43,7 +43,7 @@ We recommend installing ``pyvale`` in a virtual environment using ``venv`` or `` .. code-block:: bash - python3.11 -m venv pyvale-env + python3.13 -m venv pyvale-env Now activate the virtual environment: @@ -61,7 +61,7 @@ Installation from PyPI pip install pyvale -You should now be able to start a python 3.11 interpreter in your terminal using (again make sure your pyvale-env is active): +You should now be able to start a python 3.13 interpreter in your terminal using (again make sure your pyvale-env is active): .. code-block:: bash diff --git a/docs/source/install/install_mac.rst b/docs/source/install/install_mac.rst index 9b256282c..d03cee37b 100644 --- a/docs/source/install/install_mac.rst +++ b/docs/source/install/install_mac.rst @@ -3,10 +3,10 @@ MacOS ###### -Configuring Python 3.11 +Configuring Python 3.13 *********************** -To be compatible with ``bpy`` (the Blender python interface), ``pyvale`` requires python 3.11. +To be compatible with ``bpy`` (the Blender python interface), ``pyvale`` requires python 3.13. Homebrew is a free and open-source commonly used package manager for macOS that often simplifies the process of installing, updating, and managing software. Install via Homebrew @@ -17,24 +17,24 @@ After you have homebrew setup, you can install python3.11 with: .. code-block:: - brew install python@3.11 + brew install python@3.13 To verify the installation you can try the command: .. code-block:: - which python3.11 + which python3.13 Install via Python.org ====================== To install python3.11 from ``_ hover over the “Downloads” link in the navigation. Select macOS. -You'll then need to select 3.11.9 (or whatever the latest version of 3.11 is). +You'll then need to select 3.13 (or whatever the latest version of 3.13 is). This should download the installer which you can then run through. If you have multiple python version the above instructions should put python in -location ``/Library/Frameworks/Python.framework/Versions/3.11/bin/``. In that -folder there should be a ``python3``, which is really a link to ``python3.11``. +location ``/Library/Frameworks/Python.framework/Versions/3.13/bin/``. In that +folder there should be a ``python3``, which is really a link to ``python3.13``. Virtual Environment @@ -45,7 +45,7 @@ To create a specific virtual environment for ``pyvale`` first open a terminal Th .. code-block:: batch - python3.11 -m venv pyvale-env + python3.13 -m venv pyvale-env This will create a virtual environment called 'pyvale-env' in a folder of the same name. To activate the virtual environment from your current location type this into your terminal: diff --git a/docs/source/install/install_windows.rst b/docs/source/install/install_windows.rst index 66bd948a6..7705796c7 100644 --- a/docs/source/install/install_windows.rst +++ b/docs/source/install/install_windows.rst @@ -6,7 +6,7 @@ Windows 11 Installing python ----------------- -To be compatible with ``bpy`` (the Blender python interface), ``pyvale`` uses python 3.11. To install python 3.11 for windows grab the correct installer for your system (most likely windows 64 bit) from the python website here: https://www.python.org/downloads/release/python-3119/. +To be compatible with ``bpy`` (the Blender python interface), ``pyvale`` uses python 3.13. To install python 3.13 for windows grab the correct installer for your system (most likely windows 64 bit) from the python website here: https://www.python.org/downloads/release/python-3130/. Launch the installer, select 'custom installation' and make sure the 'py launcher' option is checked. Then click next and finish the installation. If you are prompted to disable the maximum path length then click this to confirm you want to disable the path length. @@ -17,9 +17,9 @@ To confirm your installation has worked you should open a windows command line u .. code-block:: batch - py -3.11 + py -3.13 -If you see prompt with Python 3.11.9 in the header and the starting cursor has '>>>' then everything has worked. If you install other python versions on windows you can start them using the py launcher using this syntax ``py -#.#``. Where the '\#' is the version you want to start. For pyvale we will stick with python 3.11. +If you see prompt with Python 3.13 in the header and the starting cursor has '>>>' then everything has worked. If you install other python versions on windows you can start them using the py launcher using this syntax ``py -#.#``. Where the '\#' is the version you want to start. For pyvale we will stick with python 3.13. Troubleshooting the py launcher ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -41,7 +41,7 @@ We recommend installing ``pyvale`` in a virtual environment using ``venv`` or `` .. code-block:: batch - py -3.11 -m venv pyvale-env + py -3.13 -m venv pyvale-env This will create a virtual environment called 'pyvale-env' in a folder of the same name. To activate the virtual environment from your current location type this into the command prompt: From 00f5f7885541ff26dfcc340019404c811ebc3f21 Mon Sep 17 00:00:00 2001 From: meganasampson Date: Wed, 22 Jul 2026 14:48:04 +0100 Subject: [PATCH 2/3] change mentions of python3.11 to python3.13 --- CONTRIBUTING.md | 2 +- docs/source/guide_user/guide_user.rst | 2 +- docs/source/install/install_mac.rst | 6 +++--- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index d32bb7a4e..f105b3a0b 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -68,7 +68,7 @@ Use the following command in the pyvale directory to install pyvale for developm pip install pyvale -e . ``` -We recommend installing Pyvale into a virtual environment of your choice as pyvale requires python 3.11. If you need help setting up your virtual environment and installing pyvale head over to our [installation guide](https://computer-aided-validation-laboratory.github.io/pyvale/install/install.html). +We recommend installing Pyvale into a virtual environment of your choice as pyvale requires python 3.13. If you need help setting up your virtual environment and installing pyvale head over to our [installation guide](https://computer-aided-validation-laboratory.github.io/pyvale/install/install.html). ### Make a Branch diff --git a/docs/source/guide_user/guide_user.rst b/docs/source/guide_user/guide_user.rst index bf406ce77..b5f3f8acc 100644 --- a/docs/source/guide_user/guide_user.rst +++ b/docs/source/guide_user/guide_user.rst @@ -51,7 +51,7 @@ For the computationally expensive modules in pyvale such as the simulation of im How do I get started with pyvale? --------------------------------- -You can install pyvale from PyPI using ``pip install pyvale``. We recommend a virtual environment with python 3.11. If you are a new python user and need help setting up the correct python version and your virtual environment then go to our detailed :ref:`install guide `. +You can install pyvale from PyPI using ``pip install pyvale``. We recommend a virtual environment with python 3.13. If you are a new python user and need help setting up the correct python version and your virtual environment then go to our detailed :ref:`install guide `. Once you have pyvale installed you should get familiar with the core concepts of pyvale starting with the :ref:`basic examples `. These examples come with some pre-packaged simulation data so you will not need to provide your own simulation to get started. With the core functionality of pyvale you will have everything you need to be able to build any custom sensor array that samples scalar (e.g. temperature), vector (e.g. displacement, velocity) or tensor fields (e.g. strain). diff --git a/docs/source/install/install_mac.rst b/docs/source/install/install_mac.rst index d03cee37b..1e716af17 100644 --- a/docs/source/install/install_mac.rst +++ b/docs/source/install/install_mac.rst @@ -13,7 +13,7 @@ Install via Homebrew ===================== Simple installation instructions for Homebrew itself be found at ``_. -After you have homebrew setup, you can install python3.11 with: +After you have homebrew setup, you can install python3.13 with: .. code-block:: @@ -28,7 +28,7 @@ To verify the installation you can try the command: Install via Python.org ====================== -To install python3.11 from ``_ hover over the “Downloads” link in the navigation. Select macOS. +To install python3.13 from ``_ hover over the “Downloads” link in the navigation. Select macOS. You'll then need to select 3.13 (or whatever the latest version of 3.13 is). This should download the installer which you can then run through. @@ -72,7 +72,7 @@ Installation from PyPI pip install pyvale -You should now be able to start a python 3.11 interpreter in your terminal using (again make sure your pyvale-env is active): +You should now be able to start a python 3.13 interpreter in your terminal using (again make sure your pyvale-env is active): .. code-block:: bash From 608423d11fe258e5f759852018fdcf81bdd03995 Mon Sep 17 00:00:00 2001 From: JoelPhys Date: Thu, 23 Jul 2026 11:37:10 +0100 Subject: [PATCH 3/3] sensorsim gold files to prevent failing tests. --- docs/source/install/install_mac.rst | 8 ++++---- src/pyvale/verif/pointsens.py | 16 +++++++++++++++- ...ytic_nomesh_pos-grid-22_time-sim_err-all.npy | Bin 0 -> 480 bytes ...omesh_pos-grid-22_time-sim_err-basic-dep.npy | Bin 0 -> 480 bytes ...omesh_pos-grid-22_time-sim_err-basic-gen.npy | Bin 0 -> 480 bytes ...ic_nomesh_pos-grid-22_time-sim_err-basic.npy | Bin 0 -> 480 bytes ...ic_nomesh_pos-grid-22_time-sim_err-calib.npy | Bin 0 -> 480 bytes ...omesh_pos-grid-22_time-sim_err-field-dep.npy | Bin 0 -> 480 bytes ...ic_nomesh_pos-grid-22_time-sim_err-field.npy | Bin 0 -> 480 bytes ...tic_nomesh_pos-grid-22_time-sim_err-none.npy | Bin 0 -> 480 bytes ...tic_nomesh_pos-grid-22_time-user_err-all.npy | Bin 0 -> 1728 bytes ...mesh_pos-grid-22_time-user_err-basic-dep.npy | Bin 0 -> 1728 bytes ...mesh_pos-grid-22_time-user_err-basic-gen.npy | Bin 0 -> 1728 bytes ...c_nomesh_pos-grid-22_time-user_err-basic.npy | Bin 0 -> 1728 bytes ...c_nomesh_pos-grid-22_time-user_err-calib.npy | Bin 0 -> 1728 bytes ...mesh_pos-grid-22_time-user_err-field-dep.npy | Bin 0 -> 1728 bytes ...c_nomesh_pos-grid-22_time-user_err-field.npy | Bin 0 -> 1728 bytes ...ic_nomesh_pos-grid-22_time-user_err-none.npy | Bin 0 -> 1728 bytes ...lytic_nomesh_pos-line-4_time-sim_err-all.npy | Bin 0 -> 480 bytes ...nomesh_pos-line-4_time-sim_err-basic-dep.npy | Bin 0 -> 480 bytes ...nomesh_pos-line-4_time-sim_err-basic-gen.npy | Bin 0 -> 480 bytes ...tic_nomesh_pos-line-4_time-sim_err-basic.npy | Bin 0 -> 480 bytes ...tic_nomesh_pos-line-4_time-sim_err-calib.npy | Bin 0 -> 480 bytes ...nomesh_pos-line-4_time-sim_err-field-dep.npy | Bin 0 -> 480 bytes ...tic_nomesh_pos-line-4_time-sim_err-field.npy | Bin 0 -> 480 bytes ...ytic_nomesh_pos-line-4_time-sim_err-none.npy | Bin 0 -> 480 bytes ...ytic_nomesh_pos-line-4_time-user_err-all.npy | Bin 0 -> 1728 bytes ...omesh_pos-line-4_time-user_err-basic-dep.npy | Bin 0 -> 1728 bytes ...omesh_pos-line-4_time-user_err-basic-gen.npy | Bin 0 -> 1728 bytes ...ic_nomesh_pos-line-4_time-user_err-basic.npy | Bin 0 -> 1728 bytes ...ic_nomesh_pos-line-4_time-user_err-calib.npy | Bin 0 -> 1728 bytes ...omesh_pos-line-4_time-user_err-field-dep.npy | Bin 0 -> 1728 bytes ...ic_nomesh_pos-line-4_time-user_err-field.npy | Bin 0 -> 1728 bytes ...tic_nomesh_pos-line-4_time-user_err-none.npy | Bin 0 -> 1728 bytes ...3d_nomesh_pos-line-y-xy_time-sim_err-all.npy | Bin 0 -> 800 bytes ...esh_pos-line-y-xy_time-sim_err-basic-dep.npy | Bin 0 -> 800 bytes ...esh_pos-line-y-xy_time-sim_err-basic-gen.npy | Bin 0 -> 800 bytes ..._nomesh_pos-line-y-xy_time-sim_err-basic.npy | Bin 0 -> 800 bytes ..._nomesh_pos-line-y-xy_time-sim_err-calib.npy | Bin 0 -> 800 bytes ...esh_pos-line-y-xy_time-sim_err-field-dep.npy | Bin 0 -> 800 bytes ..._nomesh_pos-line-y-xy_time-sim_err-field.npy | Bin 0 -> 800 bytes ...d_nomesh_pos-line-y-xy_time-sim_err-none.npy | Bin 0 -> 800 bytes ...d_nomesh_pos-line-y-xy_time-user_err-all.npy | Bin 0 -> 1728 bytes ...sh_pos-line-y-xy_time-user_err-basic-dep.npy | Bin 0 -> 1728 bytes ...sh_pos-line-y-xy_time-user_err-basic-gen.npy | Bin 0 -> 1728 bytes ...nomesh_pos-line-y-xy_time-user_err-basic.npy | Bin 0 -> 1728 bytes ...nomesh_pos-line-y-xy_time-user_err-calib.npy | Bin 0 -> 1728 bytes ...sh_pos-line-y-xy_time-user_err-field-dep.npy | Bin 0 -> 1728 bytes ...nomesh_pos-line-y-xy_time-user_err-field.npy | Bin 0 -> 1728 bytes ..._nomesh_pos-line-y-xy_time-user_err-none.npy | Bin 0 -> 1728 bytes ...3d_nomesh_pos-line-y-yz_time-sim_err-all.npy | Bin 0 -> 800 bytes ...esh_pos-line-y-yz_time-sim_err-basic-dep.npy | Bin 0 -> 800 bytes ...esh_pos-line-y-yz_time-sim_err-basic-gen.npy | Bin 0 -> 800 bytes ..._nomesh_pos-line-y-yz_time-sim_err-basic.npy | Bin 0 -> 800 bytes ..._nomesh_pos-line-y-yz_time-sim_err-calib.npy | Bin 0 -> 800 bytes ...esh_pos-line-y-yz_time-sim_err-field-dep.npy | Bin 0 -> 800 bytes ..._nomesh_pos-line-y-yz_time-sim_err-field.npy | Bin 0 -> 800 bytes ...d_nomesh_pos-line-y-yz_time-sim_err-none.npy | Bin 0 -> 800 bytes ...d_nomesh_pos-line-y-yz_time-user_err-all.npy | Bin 0 -> 1728 bytes ...sh_pos-line-y-yz_time-user_err-basic-dep.npy | Bin 0 -> 1728 bytes ...sh_pos-line-y-yz_time-user_err-basic-gen.npy | Bin 0 -> 1728 bytes ...nomesh_pos-line-y-yz_time-user_err-basic.npy | Bin 0 -> 1728 bytes ...nomesh_pos-line-y-yz_time-user_err-calib.npy | Bin 0 -> 1728 bytes ...sh_pos-line-y-yz_time-user_err-field-dep.npy | Bin 0 -> 1728 bytes ...nomesh_pos-line-y-yz_time-user_err-field.npy | Bin 0 -> 1728 bytes ..._nomesh_pos-line-y-yz_time-user_err-none.npy | Bin 0 -> 1728 bytes ...ytic_nomesh_pos-grid-23_time-sim_err-all.npy | Bin 0 -> 1712 bytes ...omesh_pos-grid-23_time-sim_err-basic-dep.npy | Bin 0 -> 1712 bytes ...omesh_pos-grid-23_time-sim_err-basic-gen.npy | Bin 0 -> 1712 bytes ...ic_nomesh_pos-grid-23_time-sim_err-basic.npy | Bin 0 -> 1712 bytes ...omesh_pos-grid-23_time-sim_err-field-dep.npy | Bin 0 -> 1712 bytes ...ic_nomesh_pos-grid-23_time-sim_err-field.npy | Bin 0 -> 1712 bytes ...tic_nomesh_pos-grid-23_time-sim_err-none.npy | Bin 0 -> 1712 bytes ...tic_nomesh_pos-grid-23_time-user_err-all.npy | Bin 0 -> 7328 bytes ...mesh_pos-grid-23_time-user_err-basic-dep.npy | Bin 0 -> 7328 bytes ...mesh_pos-grid-23_time-user_err-basic-gen.npy | Bin 0 -> 7328 bytes ...c_nomesh_pos-grid-23_time-user_err-basic.npy | Bin 0 -> 7328 bytes ...mesh_pos-grid-23_time-user_err-field-dep.npy | Bin 0 -> 7328 bytes ...c_nomesh_pos-grid-23_time-user_err-field.npy | Bin 0 -> 7328 bytes ...ic_nomesh_pos-grid-23_time-user_err-none.npy | Bin 0 -> 7328 bytes ...lytic_nomesh_pos-line-4_time-sim_err-all.npy | Bin 0 -> 1184 bytes ...nomesh_pos-line-4_time-sim_err-basic-dep.npy | Bin 0 -> 1184 bytes ...nomesh_pos-line-4_time-sim_err-basic-gen.npy | Bin 0 -> 1184 bytes ...tic_nomesh_pos-line-4_time-sim_err-basic.npy | Bin 0 -> 1184 bytes ...nomesh_pos-line-4_time-sim_err-field-dep.npy | Bin 0 -> 1184 bytes ...tic_nomesh_pos-line-4_time-sim_err-field.npy | Bin 0 -> 1184 bytes ...ytic_nomesh_pos-line-4_time-sim_err-none.npy | Bin 0 -> 1184 bytes ...ytic_nomesh_pos-line-4_time-user_err-all.npy | Bin 0 -> 4928 bytes ...omesh_pos-line-4_time-user_err-basic-dep.npy | Bin 0 -> 4928 bytes ...omesh_pos-line-4_time-user_err-basic-gen.npy | Bin 0 -> 4928 bytes ...ic_nomesh_pos-line-4_time-user_err-basic.npy | Bin 0 -> 4928 bytes ...omesh_pos-line-4_time-user_err-field-dep.npy | Bin 0 -> 4928 bytes ...ic_nomesh_pos-line-4_time-user_err-field.npy | Bin 0 -> 4928 bytes ...tic_nomesh_pos-line-4_time-user_err-none.npy | Bin 0 -> 4928 bytes ...ytic_nomesh_pos-grid-23_time-sim_err-all.npy | Bin 0 -> 1184 bytes ...omesh_pos-grid-23_time-sim_err-basic-dep.npy | Bin 0 -> 1184 bytes ...omesh_pos-grid-23_time-sim_err-basic-gen.npy | Bin 0 -> 1184 bytes ...ic_nomesh_pos-grid-23_time-sim_err-basic.npy | Bin 0 -> 1184 bytes ...omesh_pos-grid-23_time-sim_err-field-dep.npy | Bin 0 -> 1184 bytes ...ic_nomesh_pos-grid-23_time-sim_err-field.npy | Bin 0 -> 1184 bytes ...tic_nomesh_pos-grid-23_time-sim_err-none.npy | Bin 0 -> 1184 bytes ...tic_nomesh_pos-grid-23_time-user_err-all.npy | Bin 0 -> 4928 bytes ...mesh_pos-grid-23_time-user_err-basic-dep.npy | Bin 0 -> 4928 bytes ...mesh_pos-grid-23_time-user_err-basic-gen.npy | Bin 0 -> 4928 bytes ...c_nomesh_pos-grid-23_time-user_err-basic.npy | Bin 0 -> 4928 bytes ...mesh_pos-grid-23_time-user_err-field-dep.npy | Bin 0 -> 4928 bytes ...c_nomesh_pos-grid-23_time-user_err-field.npy | Bin 0 -> 4928 bytes ...ic_nomesh_pos-grid-23_time-user_err-none.npy | Bin 0 -> 4928 bytes ...lytic_nomesh_pos-line-4_time-sim_err-all.npy | Bin 0 -> 832 bytes ...nomesh_pos-line-4_time-sim_err-basic-dep.npy | Bin 0 -> 832 bytes ...nomesh_pos-line-4_time-sim_err-basic-gen.npy | Bin 0 -> 832 bytes ...tic_nomesh_pos-line-4_time-sim_err-basic.npy | Bin 0 -> 832 bytes ...nomesh_pos-line-4_time-sim_err-field-dep.npy | Bin 0 -> 832 bytes ...tic_nomesh_pos-line-4_time-sim_err-field.npy | Bin 0 -> 832 bytes ...ytic_nomesh_pos-line-4_time-sim_err-none.npy | Bin 0 -> 832 bytes ...ytic_nomesh_pos-line-4_time-user_err-all.npy | Bin 0 -> 3328 bytes ...omesh_pos-line-4_time-user_err-basic-dep.npy | Bin 0 -> 3328 bytes ...omesh_pos-line-4_time-user_err-basic-gen.npy | Bin 0 -> 3328 bytes ...ic_nomesh_pos-line-4_time-user_err-basic.npy | Bin 0 -> 3328 bytes ...omesh_pos-line-4_time-user_err-field-dep.npy | Bin 0 -> 3328 bytes ...ic_nomesh_pos-line-4_time-user_err-field.npy | Bin 0 -> 3328 bytes ...tic_nomesh_pos-line-4_time-user_err-none.npy | Bin 0 -> 3328 bytes 122 files changed, 19 insertions(+), 5 deletions(-) create mode 100644 tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-grid-22_time-sim_err-all.npy create mode 100644 tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-grid-22_time-sim_err-basic-dep.npy create mode 100644 tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-grid-22_time-sim_err-basic-gen.npy create mode 100644 tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-grid-22_time-sim_err-basic.npy create mode 100644 tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-grid-22_time-sim_err-calib.npy create mode 100644 tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-grid-22_time-sim_err-field-dep.npy create mode 100644 tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-grid-22_time-sim_err-field.npy create mode 100644 tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-grid-22_time-sim_err-none.npy create mode 100644 tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-grid-22_time-user_err-all.npy create mode 100644 tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-grid-22_time-user_err-basic-dep.npy create mode 100644 tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-grid-22_time-user_err-basic-gen.npy create mode 100644 tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-grid-22_time-user_err-basic.npy create mode 100644 tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-grid-22_time-user_err-calib.npy create mode 100644 tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-grid-22_time-user_err-field-dep.npy create mode 100644 tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-grid-22_time-user_err-field.npy create mode 100644 tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-grid-22_time-user_err-none.npy create mode 100644 tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-line-4_time-sim_err-all.npy create mode 100644 tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-line-4_time-sim_err-basic-dep.npy create mode 100644 tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-line-4_time-sim_err-basic-gen.npy create mode 100644 tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-line-4_time-sim_err-basic.npy create mode 100644 tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-line-4_time-sim_err-calib.npy create mode 100644 tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-line-4_time-sim_err-field-dep.npy create mode 100644 tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-line-4_time-sim_err-field.npy create mode 100644 tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-line-4_time-sim_err-none.npy create mode 100644 tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-line-4_time-user_err-all.npy create mode 100644 tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-line-4_time-user_err-basic-dep.npy create mode 100644 tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-line-4_time-user_err-basic-gen.npy create mode 100644 tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-line-4_time-user_err-basic.npy create mode 100644 tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-line-4_time-user_err-calib.npy create mode 100644 tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-line-4_time-user_err-field-dep.npy create mode 100644 tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-line-4_time-user_err-field.npy create mode 100644 tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-line-4_time-user_err-none.npy create mode 100644 tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-sim_err-all.npy create mode 100644 tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-sim_err-basic-dep.npy create mode 100644 tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-sim_err-basic-gen.npy create mode 100644 tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-sim_err-basic.npy create mode 100644 tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-sim_err-calib.npy create mode 100644 tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-sim_err-field-dep.npy create mode 100644 tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-sim_err-field.npy create mode 100644 tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-sim_err-none.npy create mode 100644 tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-user_err-all.npy create mode 100644 tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-user_err-basic-dep.npy create mode 100644 tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-user_err-basic-gen.npy create mode 100644 tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-user_err-basic.npy create mode 100644 tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-user_err-calib.npy create mode 100644 tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-user_err-field-dep.npy create mode 100644 tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-user_err-field.npy create mode 100644 tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-user_err-none.npy create mode 100644 tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-yz_time-sim_err-all.npy create mode 100644 tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-yz_time-sim_err-basic-dep.npy create mode 100644 tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-yz_time-sim_err-basic-gen.npy create mode 100644 tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-yz_time-sim_err-basic.npy create mode 100644 tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-yz_time-sim_err-calib.npy create mode 100644 tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-yz_time-sim_err-field-dep.npy create mode 100644 tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-yz_time-sim_err-field.npy create mode 100644 tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-yz_time-sim_err-none.npy create mode 100644 tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-yz_time-user_err-all.npy create mode 100644 tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-yz_time-user_err-basic-dep.npy create mode 100644 tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-yz_time-user_err-basic-gen.npy create mode 100644 tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-yz_time-user_err-basic.npy create mode 100644 tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-yz_time-user_err-calib.npy create mode 100644 tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-yz_time-user_err-field-dep.npy create mode 100644 tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-yz_time-user_err-field.npy create mode 100644 tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-yz_time-user_err-none.npy create mode 100644 tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-grid-23_time-sim_err-all.npy create mode 100644 tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-grid-23_time-sim_err-basic-dep.npy create mode 100644 tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-grid-23_time-sim_err-basic-gen.npy create mode 100644 tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-grid-23_time-sim_err-basic.npy create mode 100644 tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-grid-23_time-sim_err-field-dep.npy create mode 100644 tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-grid-23_time-sim_err-field.npy create mode 100644 tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-grid-23_time-sim_err-none.npy create mode 100644 tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-grid-23_time-user_err-all.npy create mode 100644 tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-grid-23_time-user_err-basic-dep.npy create mode 100644 tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-grid-23_time-user_err-basic-gen.npy create mode 100644 tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-grid-23_time-user_err-basic.npy create mode 100644 tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-grid-23_time-user_err-field-dep.npy create mode 100644 tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-grid-23_time-user_err-field.npy create mode 100644 tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-grid-23_time-user_err-none.npy create mode 100644 tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-line-4_time-sim_err-all.npy create mode 100644 tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-line-4_time-sim_err-basic-dep.npy create mode 100644 tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-line-4_time-sim_err-basic-gen.npy create mode 100644 tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-line-4_time-sim_err-basic.npy create mode 100644 tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-line-4_time-sim_err-field-dep.npy create mode 100644 tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-line-4_time-sim_err-field.npy create mode 100644 tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-line-4_time-sim_err-none.npy create mode 100644 tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-line-4_time-user_err-all.npy create mode 100644 tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-line-4_time-user_err-basic-dep.npy create mode 100644 tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-line-4_time-user_err-basic-gen.npy create mode 100644 tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-line-4_time-user_err-basic.npy create mode 100644 tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-line-4_time-user_err-field-dep.npy create mode 100644 tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-line-4_time-user_err-field.npy create mode 100644 tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-line-4_time-user_err-none.npy create mode 100644 tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-sim_err-all.npy create mode 100644 tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-sim_err-basic-dep.npy create mode 100644 tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-sim_err-basic-gen.npy create mode 100644 tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-sim_err-basic.npy create mode 100644 tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-sim_err-field-dep.npy create mode 100644 tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-sim_err-field.npy create mode 100644 tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-sim_err-none.npy create mode 100644 tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-user_err-all.npy create mode 100644 tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-user_err-basic-dep.npy create mode 100644 tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-user_err-basic-gen.npy create mode 100644 tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-user_err-basic.npy create mode 100644 tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-user_err-field-dep.npy create mode 100644 tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-user_err-field.npy create mode 100644 tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-user_err-none.npy create mode 100644 tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-line-4_time-sim_err-all.npy create mode 100644 tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-line-4_time-sim_err-basic-dep.npy create mode 100644 tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-line-4_time-sim_err-basic-gen.npy create mode 100644 tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-line-4_time-sim_err-basic.npy create mode 100644 tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-line-4_time-sim_err-field-dep.npy create mode 100644 tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-line-4_time-sim_err-field.npy create mode 100644 tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-line-4_time-sim_err-none.npy create mode 100644 tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-line-4_time-user_err-all.npy create mode 100644 tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-line-4_time-user_err-basic-dep.npy create mode 100644 tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-line-4_time-user_err-basic-gen.npy create mode 100644 tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-line-4_time-user_err-basic.npy create mode 100644 tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-line-4_time-user_err-field-dep.npy create mode 100644 tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-line-4_time-user_err-field.npy create mode 100644 tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-line-4_time-user_err-none.npy diff --git a/docs/source/install/install_mac.rst b/docs/source/install/install_mac.rst index 1e716af17..28d4a8415 100644 --- a/docs/source/install/install_mac.rst +++ b/docs/source/install/install_mac.rst @@ -109,8 +109,8 @@ used during the build process: .. code-block:: bash - export CC=/opt/homebrew/opt/gcc/bin/gcc-15 - export CXX=/opt/homebrew/opt/gcc/bin/g++-15 + export CC=$(brew --prefix gcc)/bin/gcc-15 + export CXX=$(brew --prefix gcc)/bin/g++-15 You might need to change the number at the end depending on which version of ``gcc`` you have installed. @@ -128,8 +128,8 @@ used during the build process: .. code-block:: bash - export CC=/opt/homebrew/opt/llvm/bin/clang - export CXX=/opt/homebrew/opt/llvm/bin/clang++ + export CC=$(brew --prefix llvm)/bin/clang + export CXX=$(brew --prefix llvm)/bin/clang++ Clone and Install the Github Repository ======================================= diff --git a/src/pyvale/verif/pointsens.py b/src/pyvale/verif/pointsens.py index 7a9d61e3a..9580a7284 100644 --- a/src/pyvale/verif/pointsens.py +++ b/src/pyvale/verif/pointsens.py @@ -103,11 +103,25 @@ def check_gold_measurements(sens_dict: dict[str,sens.SensorsPoint], atol: float = 1e-5) -> list[str]: fails = [] + MACOS_GOLD_CASES = { + "scal2d_analytic_nomesh", + "scal3d_nomesh", + "vec2d_analytic_nomesh", + "tens2d_analytic_nomesh", + } + for ss in sens_dict: measurements = sens_dict[ss].sim_measurements() gold_path = pointsensconst.GOLD_PATH / f"{ss}.npy" - load_path = pointsensconst.GOLD_PATH / f"{ss.lower()}.npy" + print(ss.lower()) + + if any(case in ss.lower() for case in MACOS_GOLD_CASES): + load_path = (pointsensconst.GOLD_PATH / "macos" / f"{ss.lower()}.npy") + else: + load_path = (pointsensconst.GOLD_PATH / f"{ss.lower()}.npy") + + if load_path.is_file(): gold = np.load(load_path) diff --git a/tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-grid-22_time-sim_err-all.npy b/tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-grid-22_time-sim_err-all.npy new file mode 100644 index 0000000000000000000000000000000000000000..0df46b60d73d52f58666a6cd77e0ab0c05fb5e71 GIT binary patch literal 480 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlV+i=qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= zXCxM+0{I#yItqqBWT>g5P^&-|;9>xSNC#TbU6PJqbK{;lfN8M<5ZY)ng!Ws8%7=-c rI0F%1a}z?t^uuTdhDeA1U=V@R-MHkjiJN}LGzXhHki86GKs*fq?{rz@ literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-grid-22_time-sim_err-basic-dep.npy b/tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-grid-22_time-sim_err-basic-dep.npy new file mode 100644 index 0000000000000000000000000000000000000000..f79759d115eb09fbd1cc0b2e2e5b3be086248af5 GIT binary patch literal 480 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlV+i=qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= zXCxM+0{I#yItqqBWT>g5P^&-|;9@`m9A_0BK-?u~48gRV@#jMTt<6Js+l?YGPU%7>VD=8QL(e{)R$m^LmB u2Ga<0BEftH1{lo%1~7NR+y`?P%ssgE!^}aaA?Cu|3G*+^U8I{A=>P!X4ofxw literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-grid-22_time-sim_err-basic-gen.npy b/tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-grid-22_time-sim_err-basic-gen.npy new file mode 100644 index 0000000000000000000000000000000000000000..c673be89b1b50a8e11a5fc5ece491aa47935bd08 GIT binary patch literal 480 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlV+i=qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= zXCxM+0{I#yItqqBWT>g5P^&-|;Cggndg$E0Kle)|%zSvFOWwhu$!cZlP9q1o6~5;# z$6GnvP%J;lujb@%%FgmAOS+pw|HikTAzwWm-pOd(+Y;gL5Hp)yJ+UXy;YiAy7x#|@ zJ2YIl9lFyX%wf5E+oa_Y+y@@5e&SyASj8b+%35NJzp=x_u1CqDwhj(=*k7wl>$*BD zS+mK$>X^3!-{ooj+Fkw*FE7~7JGvss;mj+>c0E=vy51A#&~o;P{f_uVhg@IAi!$EH4l(O~MCyd3Iat{=ZP3W&JD@l5Q-A+| zV}}QmuTPqofQCjOSeHY7BFjTK4c1`;KUb=Rc+iA8}1^c&D{fZgXU^ e!;1ZfdlnU>I*9I^p1DRR(_y{r4TZ;{*$x0(_P{Ct literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-grid-22_time-sim_err-basic.npy b/tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-grid-22_time-sim_err-basic.npy new file mode 100644 index 0000000000000000000000000000000000000000..c673be89b1b50a8e11a5fc5ece491aa47935bd08 GIT binary patch literal 480 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlV+i=qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= zXCxM+0{I#yItqqBWT>g5P^&-|;Cggndg$E0Kle)|%zSvFOWwhu$!cZlP9q1o6~5;# z$6GnvP%J;lujb@%%FgmAOS+pw|HikTAzwWm-pOd(+Y;gL5Hp)yJ+UXy;YiAy7x#|@ zJ2YIl9lFyX%wf5E+oa_Y+y@@5e&SyASj8b+%35NJzp=x_u1CqDwhj(=*k7wl>$*BD zS+mK$>X^3!-{ooj+Fkw*FE7~7JGvss;mj+>c0E=vy51A#&~o;P{f_uVhg@IAi!$EH4l(O~MCyd3Iat{=ZP3W&JD@l5Q-A+| zV}}QmuTPqofQCjOSeHY7BFjTK4c1`;KUb=Rc+iA8}1^c&D{fZgXU^ e!;1ZfdlnU>I*9I^p1DRR(_y{r4TZ;{*$x0(_P{Ct literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-grid-22_time-sim_err-calib.npy b/tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-grid-22_time-sim_err-calib.npy new file mode 100644 index 0000000000000000000000000000000000000000..02668467e029021d2cc4f43857089ec8a53ccaca GIT binary patch literal 480 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlV+i=qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= zXCxM+0{I#yItqqBWT>g5P^&-|;7Zmu61(R0#9nFA39HB$B?so^#eSI=4IQ2zJ}Ypx z)5>8=yjD;4Do2N->fyhih`Tv7|DMirv)jwTYohzpZ7lu{Qx4{S%RLb2z`RO#rqBOi zhv-+^AIsQ$aQ*1! G!T11j*|x6$ literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-grid-22_time-sim_err-field-dep.npy b/tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-grid-22_time-sim_err-field-dep.npy new file mode 100644 index 0000000000000000000000000000000000000000..343e283e1a80802620b031bb1ea9026f6341d88f GIT binary patch literal 480 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlV+i=qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= zXCxM+0{I#yItqqBWT>g5P^&-|;Hr3R(f8Ow&!G}ZmqBTmIJxvSkgg5P^&-|;Np}ybNkBEqxQQ3QiYjTTRN;MJk6@%x8&ouy6~{={=R;u&-i;M!?l*2;5}I>4!1veZPq@R=1_QQRj_4qy2IqB z-0$AWp0_u-@w01}jgy0nNB8@dFX0X%&ZP|MdEpMTAJ6{Z*qPvvSJRbi9iQZ&y~vuQ z`Bg5P^&-|;9`J+RGH(2GRGAiAhe;wj8!0D1?4+B)IYZ9du-tb z758%31XNup;}4Y&bol%q1cIUJ!W>}c)`9h@IY4MLhxuT09iV(Shd8jk-ca!X2Y!$< z3WK5YVGi%X=0-r(MZ?X7xf4P=!rcYo2g2O}@kbQYz41`@CPLkt3{{r~Hy7qk2<--U d7la=McL&5D2~hVYL*1L^@B!@J45+$n2LSoDxupOA literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-grid-22_time-user_err-all.npy b/tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-grid-22_time-user_err-all.npy new file mode 100644 index 0000000000000000000000000000000000000000..ffac55db8b2a626d3a54c2fe9e3441e2745bf00d GIT binary patch literal 1728 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlV+i=qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= zXCxM+0{I#yItqq53Z@2{ItsN4WC1P)Fo<**r9mMuIKrVz(h(dVH+UfQm;Vl6K8$wy z4B^K;gV1YkqS7bMK=?3P>;Qz1P8)58h!djymO<1JOA|5=T^`+C=zN$z2+`=_fX;`7 z7pXKTUHk`w2yi@*l1>4cX9EML3hmu9XA*gT^%(WOb_8PsU(L}8=YFevlH5tT&_KqTAB#|Phq#qzS zn5E}X6^eA|Am#%UiUh<%JGcZKoSdWxcY_5nHt)|Dyh$tezdXE02;{lvpT_9K$XH>U zGNatrrp)SOMT@Ii!ZNh5s#)dA-Ad{9jdEqm>^@JIZdJ{V=hf-b9dl#%4TjaDVKo}* z533K=e>y$N@8|vZWOsgg8%TBe(%u6q`hKve_k#DF17P0j2My&AxR{NAbHM@dOGgJk zI#F=iJ`U!s7?{zAzz>}S_}V!M)(a_cN9q*#AaojB37i4ruJBcR82j7uS+KX62A|mH zz}>SMFmIg)SF;zujD8V(6wHD*lWv|Ks`4GmRrKdvCG)+mV}d`E7(tM z;YuKf{i7y~yTa?%IG)>W;o;l__RW^?MeHiJ^6M1M?bxfGUEu7%UXbtMs~y75=m)`P z&JmFQhpj>E@#Znm_-ugm?$u6UCz?sn>xg&yUQ3GS8B07nb-(A9BcAuU;&~zH_d8z@ zzg|te&e?viLsjwVb%aL4?=#vIpT)HJTWI?|K3^A)PF?)X2gTo;C83wRhTqk4ggwPP zcGMLrN&)-NRB(7NcprEV*gw6qcXrOc*){#LWA@8#*(*C`pX`!7vP1UA?${eUV_)>r z*AO4;wat3?TVGrKIe8zv7rYO=2Ye6gp1rek`e)bt-(bh|&TjcXz)tC#UGiSDLwaU+ No9}I_{r$i1{|VE>70&qD28XcOMNw5;&H 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 o=ox=F9c_Qx^3+#jd literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-grid-22_time-user_err-field.npy b/tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-grid-22_time-user_err-field.npy new file mode 100644 index 0000000000000000000000000000000000000000..1e12de1a9ef5d748475a900ce5ce0b3e9c68683c GIT binary patch literal 1728 zcmbV}e^|^19LKY#R#z+1M5|ms=;|Do9MbXhu12S>bEodAJLi6UySuI{*WIn2g*KIy z2>rljStHeGLnw;;3PnYJ^kbQwGEwwHD2%n)AKLTybDw|S&*$@gJ+FU01sr}DH+q6e zvdKD1jKVc7y-)=0Ga7{$N$WwLmK;@#a4D@#uA1k()3h>eUl_UbYBtXoOjUhcL>2*Km75*myx*HM7dM3K!zh0 zwj;SlKC&;(nf&zyF_z3b^+X#Xg}2D#Pge&yCcmo7VI3flbKt!D5ibICzvc68kYvaU z>$KaaBVbx3WlS+j#<|5w&%N?{<*=k~(T;@3QFcyLIsM{)p7*{FGa)437%;cdpKkkO zF(sLf>bI5TDA97X7tA&j0W7Rrr-6BA)JwLFr2EygW}KQf_(KoNAJxkZ=ER#U=tf6~BGc zSgL@ou{?ZHh6?#f`kJOEO4Kllw+G5%U?0c7)fu1y=Rn03^NGYbH*=7?yYB}j984a4 zPjo9l`!uH2S*IND-}^qyf*z~ELFX2K!=j87-wGcDI+O)oBXe;2c7VNM&gaP5yY2F} z0uF>%Ceho?!f@05hfu-U035PPs*d@N3tDH6M}60Fl&E>E=Tq4b=|}hvvUqsiM=I@N z1R+zEY^WHBMr+aFXO|9eVUmC1%fH-2U>}*85om~naiG+6-&`q7)^{GHvfllTUY<23 zj)K^Q;UmDnHmTtjB;oTVqtys z!XfO_;B?x(DZ&!vI9FGDxI5Jt2SrJ?N#>Xur)_tcEjt)D-oN*Kn02fRmqL%W`8yta zMEb(U53X54J2w+PHgAs=%G}xb()ZzpRxTe8PE4`NV@9ApdUX`z3=26EA2qCYkHlAY z>E3+Hl}KGRaoee#;b16(y+d_TC}LX^>V^;$PrK_Ru#-bY{;J%^FA^=mL3>9Y%dzK$ zNNy7?MVjx)SN1!U_?Fh$P5ng-W^LB$V{fHc_p(@XZAAPO+Z@iP1m2Z6Y!?!URB*84H^`E zW!qJkP4oj<3sNtaS+O^<+DgD-g2i{#nPh37{tyWd+VoM8eO! zj1vPo?A}UCA*UGNkxn#Lz0srpu%LXXD-o5BTgh(%4T#3w;k|j+x#0-Qi76+LF|z52?{$M88U>F9=)oCY?UKDe_Cizp-UgB&5dIZT<~WHMSmY_jjtX z_l3(%x@9I^p4nj1?a+PKlaj>8w7;e=FnPRK{-(iyq3egCJ2N5QGtqVJ=;iVGSzOPC zty}eWs|M~b#+3e^Jtq}2>vAx5Y2TCJ`&`!N;bCv*67z|l`Q1v~JlwGNOI|*VqHiJ2 z?ks(J?{N`z0IMbA)KLCv>REB!oO;`wT0-3tEHosKb^lw6fbdy{o_QaB9KU44BhjZE zX+OO#3GS$1zctvE{(R$o`&#y`#JiM#PA{EXMgMk$W2ZeaX2&_54`z2P=l%B zTn=P^@}^xKbkJ8Vnzua4df8V?e@>iwR~>Wg#0}w7!NYjBT?*caIVebt+i7>fAbh(} z);6&9io;F+ZtNVj93HjQVd6gIyeCmV9e;><&E|U+&WQ6a;JT51mvTP`DWczU)~$fS z^V@^%Z!N6PNBP~p1%3_t>nbKZx44ID72MOrxeb~nMJn_l~K=z7X`!r z7YvtEw*ryq?%(^Tuf?CjXC)?G%xx*~RG~ujvE#_|S2Oy15_3H=t?E^8r-OZKF|r{0 zuV=>+^VC_tp2@uK#2w*7L7Q*nSKo+&X`EwUYf%eAbtX*rfUmE^;&{SQb!68V&T zDAaM054V;-$wxhPJzCBrAC2UriG29TM`Es$k5=;GCm)G&64hTNlVHA9{V_5L94pG5%2Qma79pqy@`B;x{vJU5X literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-line-4_time-sim_err-all.npy b/tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-line-4_time-sim_err-all.npy new file mode 100644 index 0000000000000000000000000000000000000000..8d4cf188bf647baefa294f9f29c09b65688f6cca GIT binary patch literal 480 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlV+i=qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= zXCxM+0{I#yItqqBWT>g5P^&-|;9>xSNC!qV`ac*%IKbp#G%4b8e;6N~M%M=bz+YDl literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-line-4_time-sim_err-basic-dep.npy b/tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-line-4_time-sim_err-basic-dep.npy new file mode 100644 index 0000000000000000000000000000000000000000..0738de53fd18bbc7668c12ce1412971e3cdd954d GIT binary patch literal 480 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlV+i=qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= zXCxM+0{I#yItqqBWT>g5P^&-|;9@`m2mY%&fVe6Q7GRo*!3j)%`tJ^=MHu{`;z3~g z*Z&YO&CL)2rWqI_(P#!R`0-yGEdJxaHJJYO-v!F|2GhUm1EJy&^M2OjG7n}x0~km! z7=ZOjFgSo|m^=Ud_XqP?83?%#W*&?N8_RIvzadyZ%>S?cdqMdSe}AhF1M@Nc3o{2n F0|5VPP0;`V literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-line-4_time-sim_err-basic-gen.npy b/tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-line-4_time-sim_err-basic-gen.npy new file mode 100644 index 0000000000000000000000000000000000000000..adeeebc1bc4539aecf81b3571f6c1eef39ef8f0f GIT binary patch literal 480 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlV+i=qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= zXCxM+0{I#yItqqBWT>g5P^&-|;Cggndg$E0KlewuZ_Tm(r|K|OZI90!9!m$4Yvsm{ z4;>wj&JbkIF7|N9^liKL(814P%gVEBL>C1*1Z}_6cSI}H;oM8>M;yn(9VFzX*%uv+ za_C>Xf`@}K&SANG+oa_Y+y|D~9{uunotDF@*u{+-{#!WAUS+N~ce0B^6^G$Xj+b5z zOI2<5&1emDICv#{wGn5C!{s#_o@Oi$cQEkza`!+tZbS#Xyo!8c>eX~yT6O{ z9ReO?J=>}0=&<g5P^&-|;Cggndg$E0KlewuZ_Tm(r|K|OZI90!9!m$4Yvsm{ z4;>wj&JbkIF7|N9^liKL(814P%gVEBL>C1*1Z}_6cSI}H;oM8>M;yn(9VFzX*%uv+ za_C>Xf`@}K&SANG+oa_Y+y|D~9{uunotDF@*u{+-{#!WAUS+N~ce0B^6^G$Xj+b5z zOI2<5&1emDICv#{wGn5C!{s#_o@Oi$cQEkza`!+tZbS#Xyo!8c>eX~yT6O{ z9ReO?J=>}0=&<g5P^&-|;7Zmu61(R0#NORWOF<@C!@*1V?H$Hf<_@p=9&C8^ z$k9RYf1ir}eRqeRjiIUv&wL%GhB zI{C9CV|n8oVCGKSdDr%etB%9`tqa9NZ&^EBn|fzT)qNKSwX!3ncOQ8>-29%%Hm4%c zffZ_A@W$IaBf26SG&x@9dhx|L{QbQyb!S(+!{xIkf0ODG;pS$`btk5Z8aRmTs*Q_2 zXYU{cb?1q-YqOPJ`8zPJ(w*t^KiI(^>OPoxyx*hvwzDKSNQgfA=lDC(Av(qSzQ1o0 t+}tlh5h_19j2vD<{eS0=$cO%iUT}YF2H$0U-5Lh>FU)=7Xy(Dp1puNZvK9aU literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-line-4_time-sim_err-field-dep.npy b/tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-line-4_time-sim_err-field-dep.npy new file mode 100644 index 0000000000000000000000000000000000000000..cf9f1b1693ed489d75df9c1de1b7d105fd76f8a2 GIT binary patch literal 480 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlV+i=qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= zXCxM+0{I#yItqqBWT>g5P^&-|;BpBC0e1&nv?~F5T>9Sp2LW$~*H9Y9rtyC=W_ Z7wttr9+$qkt3V*g0Y=Y3g5P^&-|;QDwsr0uBZN&8C)^%Y4=Y#knc`S|8!d9Z`)^siyl zxq=;h4!mag_aMrlT*F(T{7$UH)8&$OwohUlcI2y_7E4KXC^NG7@3k%2VdB2xa={;| z4$M;CLOGk$9PY{QxU=xX8GDu35)r9y4h~EASt-`IhdBr@-?*{mRHy@MSH+AKhvFQ( zdEPS_iX}RT^J!dC??`a?9-6uPgF%`@%Kx|bnfucmHt~PnW~q|t(7Eb-<)UAi4k_!U znP$B|Z6CmWY*}f%gF~Uz=l(g3p$^B?ce4EE2z7XM({^X+##jeqUb`vzbqNkvMQ0yg z{wm&Kqt?BYo7t%jb(L$FRvt@r_;6*B?>mW`Yo#OD*_ln0$mox`GHvX2=-Kh?|9gE`_-{d&7 da-R^Ho0jV^UHkN5{iFhi2Q{yZUc4=E005O2yY&D7 literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-line-4_time-sim_err-none.npy b/tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-line-4_time-sim_err-none.npy new file mode 100644 index 0000000000000000000000000000000000000000..c219b1964d4fc8d101ff5d8ef2255bdde23e58b8 GIT binary patch literal 480 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlV+i=qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= zXCxM+0{I#yItqqBWT>g5P^&-|;9`J+_y0ja-2pLhng1*6%U7-2T>0-?|&jxT{7I<&tP*59U!zL)L&juejvoW Y`Y^bEUxCyE-3L(*HP1c;sxHj|0AYa|WdHyG literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-line-4_time-user_err-all.npy b/tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-line-4_time-user_err-all.npy new file mode 100644 index 0000000000000000000000000000000000000000..68167626bab1813ec7d48e649e627daba71bc33d GIT binary patch literal 1728 zcmeH{v1$TA6h%j|%1>k}$G{X3BSc9tRVpJ1LCsdO#1#wCup4Y7Kao_X&$n3mLxQe5 zUc?Kt6C|YaHHUlWy|-^?nE7gV9v*{&n2EU>M9FKcno`{jZ=eto6ohde1RL>7T5?77L}#juZc_Mt(pXN^1;efh3+_?Q!f zkMF^Ub`f=;D-ZpAd0d~D{~bJ;U4G@+a@DddnPYx7tZvjSm-?8KvenG>rS<=c+@Cei z1&z6x_%9!MKYZHPkLSRgLIl})ocX`|P&D=(T8?|!{{Jkxzdnb&`;~W&sKdQZuVEU8 g_YoT8JorrR3(a|~(I4b>S0DDF(FcSNa(|!R0;Z5J!~g&Q literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-line-4_time-user_err-basic-dep.npy b/tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-line-4_time-user_err-basic-dep.npy new file mode 100644 index 0000000000000000000000000000000000000000..40424cf28f9350ef857c6114c65079c993cb0c19 GIT binary patch literal 1728 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 B#ZUkM literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-line-4_time-user_err-field-dep.npy b/tests/sensorsim/gold/macos/scal2d_analytic_nomesh_pos-line-4_time-user_err-field-dep.npy new file mode 100644 index 0000000000000000000000000000000000000000..97942ee0cf73164b90ff8195a94f510f02494c26 GIT binary patch literal 1728 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 literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-sim_err-basic-dep.npy b/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-sim_err-basic-dep.npy new file mode 100644 index 0000000000000000000000000000000000000000..c36a8b7b26a8109596d5fac8242d9574b2a8b5cb GIT binary patch literal 800 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlV+i=qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= qXCxM+0{I#yItqq53Py&SItsN4WC1P)Fo<**r9mMu8V-Xk9RL7T+fCB| literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-sim_err-basic-gen.npy b/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-sim_err-basic-gen.npy new file mode 100644 index 0000000000000000000000000000000000000000..6bdd664ca70e624e9777d4c7d980cb90ab674929 GIT binary patch literal 800 zcmbWv|4+&%%gUY19rY!9jseM3^*M zBU(#|*0BYNg*2F~w8=wHf_( zF@p}N3UDVcsk5Fcu*5;?A=1(4EVWX-OQB&}RNZGDpmFAA=;?4FLDh+_33~&Ls(k`k zOaeii(Y~YDmmv9(pwbvfP{AhWJ8m!Q;rgUf&}LZib^=m}==xMPJV>Be3>ndr!TmVf$1VZzxtk+}WaU zme7c4`S4+OBMtlXbMoH31m^9IAIlmEUJdvZM!aV*zH4J?ttX4`oZf%EFN> mdH3 z7TWm@$Et%_I2{$XmOHYDmK1r`SS4ZuF;C8HV_<5_ajwZ_VSB;tK=v~h2{-oL_Yow* zb8%m#A~q5Cny$>3&PhZ=i+^771s3t=9o#eiu#ny89Mgud7`)QzTy9dJ&-Hh0NH9S= z?{YcL(r=yYmL3{P#<#%nKCg>PoUOTkHAa>Sn>=aW2CW(uHu21Gs2YL%)>pMnY6N}S zZMr;zLtLTTk)hQbroHaUza7hA^ptMiyDc09FIV+WZR5c22^#MSHNr0A5a5*a z(|C@LVJ?lKasyG}B(nMveE$(z&nUl%E^>f8o*=7Z1y_9^jzLtdgt!~36 zR}K%e3N$78`w_kKP>=I0EskaFT3o40hb%mzp#N3|whtBllD*NPbiwk^!s^2yc40wN zDjv;@^0B{}N0z+1%@CqR$@ h_9yx0WurVk>9XfK9ML1UY0Ye=MUMvx3DfDV$6uV3QjP!s literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-sim_err-basic.npy b/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-sim_err-basic.npy new file mode 100644 index 0000000000000000000000000000000000000000..6bdd664ca70e624e9777d4c7d980cb90ab674929 GIT binary patch literal 800 zcmbWv|4+&%%gUY19rY!9jseM3^*M zBU(#|*0BYNg*2F~w8=wHf_( zF@p}N3UDVcsk5Fcu*5;?A=1(4EVWX-OQB&}RNZGDpmFAA=;?4FLDh+_33~&Ls(k`k zOaeii(Y~YDmmv9(pwbvfP{AhWJ8m!Q;rgUf&}LZib^=m}==xMPJV>Be3>ndr!TmVf$1VZzxtk+}WaU zme7c4`S4+OBMtlXbMoH31m^9IAIlmEUJdvZM!aV*zH4J?ttX4`oZf%EFN> mdH3 z7TWm@$Et%_I2{$XmOHYDmK1r`SS4ZuF;C8HV_<5_ajwZ_VSB;tK=v~h2{-oL_Yow* zb8%m#A~q5Cny$>3&PhZ=i+^771s3t=9o#eiu#ny89Mgud7`)QzTy9dJ&-Hh0NH9S= z?{YcL(r=yYmL3{P#<#%nKCg>PoUOTkHAa>Sn>=aW2CW(uHu21Gs2YL%)>pMnY6N}S zZMr;zLtLTTk)hQbroHaUza7hA^ptMiyDc09FIV+WZR5c22^#MSHNr0A5a5*a z(|C@LVJ?lKasyG}B(nMveE$(z&nUl%E^>f8o*=7Z1y_9^jzLtdgt!~36 zR}K%e3N$78`w_kKP>=I0EskaFT3o40hb%mzp#N3|whtBllD*NPbiwk^!s^2yc40wN zDjv;@^0B{}N0z+1%@CqR$@ h_9yx0WurVk>9XfK9ML1UY0Ye=MUMvx3DfDV$6uV3QjP!s literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-sim_err-calib.npy b/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-sim_err-calib.npy new file mode 100644 index 0000000000000000000000000000000000000000..ffb5215f8e4950cce07f266b39d1e95f206c0706 GIT binary patch literal 800 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlV+i=qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= zXCxM+0{I#yItqq53Py&SItsN4WC5<|6zlu`zDW+F^k_I>O9wH~^g)P@f~tej#Hxp> H!=(=ZR*xS- literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-sim_err-field-dep.npy b/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-sim_err-field-dep.npy new file mode 100644 index 0000000000000000000000000000000000000000..6fd2606a13d59b532c6711ef4873f15d490831de GIT binary patch literal 800 zcmbWr|1XpQ0LSrT5|=IODAnYt+Z=Y+cGVhJ^eJP?x6_mmc6*)&cMnc?zCDRGqSkaR zwB)E+qg)B6Yw~?s9r*!mR_A<~%J+Ur8rs>q{(`K}FRy*x6%iN0rLi`g98SJ~qSd5I zARz=NlYIq3LXfOfWvOHtNlFz(|LwuDG&ODQ>Qq@KZT()ygoIc~91(j9i2~xk#tn_( zH5XncVVcl54BsLV)DiBgc|pRhTskprB(Y{vXL2VP`z%}`hxtqEM`(1=}3tiH5| z22bB+bP&+U)uq{5#5DRz&vdOHjkq7Z?ehUN>dBJp_s`H63de4K5RHNHup0}(G>STl z?D-)yf_X`vn^s*~W)+oZX-w{0mu_ysMvuqu5)Y+9GBDeW$15WJ-Q)l

#Vw)M^oT)V z(Ol%61_qLg+OBWU8L(x2b`P5w4C=pVee?|8M2%@z+87Y;6Gjdj{;kfhBV@`c3$FFL z=>FbpnDw^Asr4Kf!^-0w#&V&KsOx*G%)`J}pJk;v57)fhXJwu&R(Ylq>2WMtVniFa z3t8N}YizH2z`~=-yldkb3*Y(ImTd+W_k@6~n?;kf@|Ex{i~{rgmJFa&~BUe|tP>w(WUPC_Oo*8Pqsy zbTCsEf(&8D7OsBMb(R{IBu2>K_*H$2kOT>}Zeaqk2T$Ovq^YZ6}N z60Exr9vXFyKs`ZP{;8T^WzS^QyJmt=3A3f3ji9U0c`&1kKsArIYJWF@eO^dbQV)SX z-tKem2ZBA>4R#xP3GxeTUC>7mP;4A=FcDnukFGppVM&DJiXjVqZ1z?8S~?F6jSJYQ zQlQOq^ZfiGg4^b0&r6Od5p#NB-OM8@WVa6_@Wa)p?_cj`Xiy_;@Nk+bNP~tOYQAy1 z21cV#k@TVlV{iNG*S2bKDK2_J!v_sYIzpBf{nEhm@%Zu_E`>$$?{8X7p`ag$5(PU` zDBS7gSInmnlXKAfkvoNJelMF_XHeKZK0_KTpzuQYJZ#89N8Z)pB1@;J#?~<6qeQJZ z?vZ3V1y`FubAe+r`tD^~=ls#4wXs+4n61Nb$NpO`fvI>~nVvM;n2KxC*%E^H*o&ypro$BFn6B*3uELMzKs7MMqtgDmbyz9ov3%!$}8;kJVeTP9~ zrS{<@MH>7^``sjGcfhNSb9ZY~24)zlmfR281^sAgBbUhnJOcQ;oLJaDG1wl9W$`h# zWpPz5i`N}v>17ox;{6BgCOlwqdAXIf>?w=yk-xg#->~oqJ{tHEb1n; fe=!fSaJmujsp2b(XFtn&^1ichi+i?ckD0|^yE9M# literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-sim_err-none.npy b/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-sim_err-none.npy new file mode 100644 index 0000000000000000000000000000000000000000..1aa25729c42bd600175a5201d43b60a37c56a280 GIT binary patch literal 800 zcmbV||1Z>W9LKL(8-1b3b-u)nnCX6iIfU&-?DvN!;gLy2gD@68eTP zMzc_|npXNQ^kwSS$*gZgZR!_h`LbQ2*>2VOq5gm#zr6N*{PKG4SrwDCCoW|XFPE1m zCh{CwEe;lnLluEyiBPP_R%_IUR4{I(52 z%e{m!m6TwM*2PeVBDDEBi|;6`(1vIQ=c5&o?Hr4c0B`1@00B5!+^KIGYYPvNA>0=g5~-B2?13M z3U64wm6l{+bzjVwJ?|)t@sHXCqgjZ}QU)&WOYkCQp5% zpR=%C8nUvvhehPY!o;mFS#(?ui;@}Ge|xUoeZC{NTnTN)jDNW0?_Sz@e&mJ*a|70u zM~aT4?frv$)Ac7{bF1T7h#(JE)un}%qI|flUNXr4nhz5B!LfzXAxZUVD6LxuqjuII z*{s9j0Ex-ki$g-n;fKi)9BPc64QZ(y%s1PFCMAcTx*c6BG#rLj)!NzSaY!<_$4}@v T6sMkcjylC*(%+44Jk8+`Coe_L literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-user_err-all.npy b/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-user_err-all.npy new file mode 100644 index 0000000000000000000000000000000000000000..ac3cf2350fa28d7ed5faa2b4662331e92d052e98 GIT binary patch literal 1728 zcmeH@F$%&!5JeM9PqE!9q)<>0u}Ed7*a%4_!9*;?NFp}kDZH($1eedSob()p?LeG_69A-LD`j8jbB02B!BF$=jnVib3(#vCV$*OuV3Dh`H z)6piiNx4tv>7zsD$Qs>6au7fJs3oOe_GR8x zlV`5X0GKC} ADF6Tf literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-user_err-basic-gen.npy b/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-user_err-basic-gen.npy new file mode 100644 index 0000000000000000000000000000000000000000..30af2f0f099ab335b83d69a96803b9df726a6b63 GIT binary patch literal 1728 zcmbV}`#aQ$9>=w48xE?K-G-h-MdHxr7AtRAp$MVnagh0b=R0m==1V5w`?aOx6erfD zi|K5+*1ANeb&H0cX_2Bm6bGAiZEZ`nVzX??OBhK%9=bs9740$ypx@sP7oZS$ro9xh9CL-sooP<>)PRsI_fwY3AOuiOcwS=w+* zJ}02UmFiZk@^Jrvss3;(fw>`dS(`tB)Rv98<01mamip4YH3Z5l^V&N=pv)}boVEjr ztt09m9jha-^SVW7<53d+2{y}v1|+&izL?<_k&rbfoy%M#5O>?T`OQ`mDr>cM^dm?x zdwPTe1q22=k9M8AN}__dyWfA5#9Y(ehil~|?865+=HHNb;6K(jb(}>08LtaQBP6!9 z+BQ+&lL$;Yv`}z`#H%tlX=XBsBh_72vQQH1=1j{S^hoHvEbRZsG>Kb1@0Y8(lzbgx zX9t4Bc{{=^HkX8UW42;T4~fS&^qcl@`H=p>$sZXaQToG9YFJ2uxBY2F)^{XE`h!%P zlssOIo^P5|`1s5^+UU8mFU2nSeWVWw`K6WI93}T+;3~H`oy5=9Hu4SuiHw1qtIrPc z@dxE6$n+xN>)P&XAHqYK-kqYzbRJxOnHpbK?$Z51Xw}R#53h|!Q_EBdG_#2=hg}I| z%seezI7NU{UC#{X5y&iBhrAdP8*bDFTFsMqpG>?xdWS?++acfIm7Kan#sy1jKE_;) zgWLl6_)Ai*v4x4Ue|TlG-HpPL*Z;Xywt>R@O&$K=Lq7D!!gzE0C|v#ZR;i;Fg{7#5 zpi|Zq23JsHPCD@YJ2(A%Laq%C;XL zPzcjq@ot--fSS^$y%iMdj;|PPvJxO9J6itGgM!d9+)C$b3J>c{_b+%;(DiD0G@vFx zm}yhtjXc2~<=T(Q3*a51!5%wf{)Tu}kr*G)(}H z0Y!aTawKeu^QNAaMq^f6Yt+&r26ZVFbLm;J2s9b6i}O`9>X-ZTQni+n#nOv5?B zK*y0sgMECv*}9(wljJaO=0`*J;7oLYy>+c5_=5OT$+iZ6*>L`C)kiUMUTg z2#vkxFVhH?bPAgzX-F3BWr9i?12MN`@17|A#a2T0FB)0TXN;WZX%zG|xXG(&%x*Yq zMrG1iyL+$O*+d>>$1W5TI!Ydi3sg_w$_Qd)1G9^MeFU8+`)*YM+E=yINb(L=yDG zjUJBjQ}COzjV!sFjGlYNQ}66j@I|;y#6o-ud?e)oTb5F={H#NCy)XsdnX1u-DXAFK z92|c5V^ zU0c$Dg|SECn&vwUbe0yr+kT0~^rKFvmIeloLMGlneaAqMOXr+l&mzIr{q#^PgPl9p z&8oyQNcQ}|Jfe$1cCGr2%rq7U^mbesQDMP3k5(gf76nEnbZi5Q&gb1`{9qO#uO*yu z5eqNkNSfQ1EVAcZVpK;MjGnr5d;?faz8P?S;mYElL%~-pOj+0~6pFZB208uhg+G%l MxLGary4M)|52C^SumAu6 literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-user_err-basic.npy b/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-user_err-basic.npy new file mode 100644 index 0000000000000000000000000000000000000000..30af2f0f099ab335b83d69a96803b9df726a6b63 GIT binary patch literal 1728 zcmbV}`#aQ$9>=w48xE?K-G-h-MdHxr7AtRAp$MVnagh0b=R0m==1V5w`?aOx6erfD zi|K5+*1ANeb&H0cX_2Bm6bGAiZEZ`nVzX??OBhK%9=bs9740$ypx@sP7oZS$ro9xh9CL-sooP<>)PRsI_fwY3AOuiOcwS=w+* zJ}02UmFiZk@^Jrvss3;(fw>`dS(`tB)Rv98<01mamip4YH3Z5l^V&N=pv)}boVEjr ztt09m9jha-^SVW7<53d+2{y}v1|+&izL?<_k&rbfoy%M#5O>?T`OQ`mDr>cM^dm?x zdwPTe1q22=k9M8AN}__dyWfA5#9Y(ehil~|?865+=HHNb;6K(jb(}>08LtaQBP6!9 z+BQ+&lL$;Yv`}z`#H%tlX=XBsBh_72vQQH1=1j{S^hoHvEbRZsG>Kb1@0Y8(lzbgx zX9t4Bc{{=^HkX8UW42;T4~fS&^qcl@`H=p>$sZXaQToG9YFJ2uxBY2F)^{XE`h!%P zlssOIo^P5|`1s5^+UU8mFU2nSeWVWw`K6WI93}T+;3~H`oy5=9Hu4SuiHw1qtIrPc z@dxE6$n+xN>)P&XAHqYK-kqYzbRJxOnHpbK?$Z51Xw}R#53h|!Q_EBdG_#2=hg}I| z%seezI7NU{UC#{X5y&iBhrAdP8*bDFTFsMqpG>?xdWS?++acfIm7Kan#sy1jKE_;) zgWLl6_)Ai*v4x4Ue|TlG-HpPL*Z;Xywt>R@O&$K=Lq7D!!gzE0C|v#ZR;i;Fg{7#5 zpi|Zq23JsHPCD@YJ2(A%Laq%C;XL zPzcjq@ot--fSS^$y%iMdj;|PPvJxO9J6itGgM!d9+)C$b3J>c{_b+%;(DiD0G@vFx zm}yhtjXc2~<=T(Q3*a51!5%wf{)Tu}kr*G)(}H z0Y!aTawKeu^QNAaMq^f6Yt+&r26ZVFbLm;J2s9b6i}O`9>X-ZTQni+n#nOv5?B zK*y0sgMECv*}9(wljJaO=0`*J;7oLYy>+c5_=5OT$+iZ6*>L`C)kiUMUTg z2#vkxFVhH?bPAgzX-F3BWr9i?12MN`@17|A#a2T0FB)0TXN;WZX%zG|xXG(&%x*Yq zMrG1iyL+$O*+d>>$1W5TI!Ydi3sg_w$_Qd)1G9^MeFU8+`)*YM+E=yINb(L=yDG zjUJBjQ}COzjV!sFjGlYNQ}66j@I|;y#6o-ud?e)oTb5F={H#NCy)XsdnX1u-DXAFK z92|c5V^ zU0c$Dg|SECn&vwUbe0yr+kT0~^rKFvmIeloLMGlneaAqMOXr+l&mzIr{q#^PgPl9p z&8oyQNcQ}|Jfe$1cCGr2%rq7U^mbesQDMP3k5(gf76nEnbZi5Q&gb1`{9qO#uO*yu z5eqNkNSfQ1EVAcZVpK;MjGnr5d;?faz8P?S;mYElL%~-pOj+0~6pFZB208uhg+G%l MxLGary4M)|52C^SumAu6 literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-user_err-calib.npy b/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-user_err-calib.npy new file mode 100644 index 0000000000000000000000000000000000000000..8a0fd1034bff315538f31d855c3a2e40ca3280ff GIT binary patch literal 1728 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlV+i=qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= zXCxM+0{I#yItqq53Z@2{ItsN4WC5<|6zlu`zDW+F^k_JYri0OZFw)C`C}?>Y1EtaV jFmYToOg%b{t{#^>OdO^j#)r``aTtwD941eQrc^%wT}Fk) literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-user_err-field-dep.npy b/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-user_err-field-dep.npy new file mode 100644 index 0000000000000000000000000000000000000000..0290c8f5c226cfeec18ef1ea5d273b39377b28fc GIT binary patch literal 1728 zcmb`>`&W#490%}8O=vDuoYPt-Sl}wa(q03f`HnmYSp6BT@UmI$wc}zw^>rz|G zCaaE2v?vwX+SakUDe0m@xz5U1mmD2Qt?9V5&;AR0e13VI_xqgpIiDk|*9A($40uUA zm562%sCbc^P_!&+iAXFIMQx2&#LMC~ZH=dy|9WrPmIQ|D6JliB7%tl`5(}NhLKi1H zv2dsGf1Qbc=;U&BI0a|Hy|FoQ6fA1;BTG^#*lfNL)}2jZ;vOq@O92Im>AXWFr4+6% z-(!8Nn!<_%U5&nh!p!;6 zfB_AeuIMdoNaID%(6ReQG`(Pee$1H^XiO~>aQjuS%Hue9yWjj+%sHoV;9M zu{56K9kMY>=l&?_)z_S$Aqsyg?W&@&bb&$m-_10nyxGz3AJ9;o6@^yx(WnXx2srr< zjb*8ebgg3;+XpDO7{qCtQh1tjt|V7%Rs3K9~WuMV3yp?<(`iU72ROfz^=#8|E;+DoqpcqU-;e~WD9*Sh zPOYV0`soXLZgxTA#OJ*>PQoh3)xpkiat?{Z{IehIqwNDga{pewC5|qMBwT1^s)JG1d#)l14lSh3xjx5D+z>65uFRZpv98QzJHl2K>26A z*>qKb84>i+CtDNIw=%KyB|iz*)eaeoeM$J~XV;lt2FWO8d<`NuB%@_<*t4CL$@qHK ztjQBUC&NH8oMrE>MDwX!u|lat!s=+>_|rr^5mXX$*|pc04EK04~nSfsul z4XP8fkaWBwqn<1VFTU989?GKrwQ^u6ibZaDUu8uii-s}fGYivLC>FfaKg?iZz25cC z)La%7mMyvKPO$i3;jsMsA{OU^?-#|DuxM(((;9Yxh1oUlBIimL14es0k5{wkT2=SK z@Cu7eb^W2Xt1Pq^^TylPvGAImQcfCJq@?c4oYcso>dBAfQWJ~pN(0AF*IC>SXbKkI jU}3y})NXzY3zPDr6W()9>Y4wxww1-X;%967zM%gCY=8D= literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-user_err-field.npy b/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-xy_time-user_err-field.npy new file mode 100644 index 0000000000000000000000000000000000000000..460d3187825858396308d2c6f3fabc73b6564335 GIT binary patch literal 1728 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 literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-yz_time-sim_err-basic-dep.npy b/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-yz_time-sim_err-basic-dep.npy new file mode 100644 index 0000000000000000000000000000000000000000..c36a8b7b26a8109596d5fac8242d9574b2a8b5cb GIT binary patch literal 800 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlV+i=qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= qXCxM+0{I#yItqq53Py&SItsN4WC1P)Fo<**r9mMu8V-Xk9RL7T+fCB| literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-yz_time-sim_err-basic-gen.npy b/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-yz_time-sim_err-basic-gen.npy new file mode 100644 index 0000000000000000000000000000000000000000..f523bd104bfc1ca108ab4d591ef0222e7b860020 GIT binary patch literal 800 zcmbV`{ZGts0LPEv>(uPQ%`{XmfM90i%b;I(CQ|T*!^-U!Y`gHNWoG z6E%Y*SMo`bhQXktF}O{}pnA!T1(KO8f;7iQ{q`6T*$`1^ImbX=Zz$dMmO)*n5XLE4 z1(Too%f#;zR4Ys5fOCA`1?bG*c#IK2bG2^)n&T|9etYi3#R3 znT_i-VZdQ^hlqHTh3?k`D0$evepo|Ed2}(JO?Cy3Pg{1ldZ+Oi(VJwZo&%$7eM(sF~gQT(v*X};DLhNai!LotP?Q*U{TTNNdl^b frt2Ev>(uPQ%`{XmfM90i%b;I(CQ|T*!^-U!Y`gHNWoG z6E%Y*SMo`bhQXktF}O{}pnA!T1(KO8f;7iQ{q`6T*$`1^ImbX=Zz$dMmO)*n5XLE4 z1(Too%f#;zR4Ys5fOCA`1?bG*c#IK2bG2^)n&T|9etYi3#R3 znT_i-VZdQ^hlqHTh3?k`D0$evepo|Ed2}(JO?Cy3Pg{1ldZ+Oi(VJwZo&%$7eM(sF~gQT(v*X};DLhNai!LotP?Q*U{TTNNdl^b frt2O9xTV^brH4VSE^kE)L_v MXkyi&tB2_W08{TDIsgCw literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-yz_time-sim_err-field-dep.npy b/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-yz_time-sim_err-field-dep.npy new file mode 100644 index 0000000000000000000000000000000000000000..1ddd61576cb403f830693b1a73809ce68dc92529 GIT binary patch literal 800 zcmbWr`%6=C9LDiQVriO^bb%7aN~f{PrID4wbF{#Dnux8u0}0ZIYpPLSb1yx1xC*=FP?Wr?6D*9Czdg?7&30d<&H8C8fN(Bs_9*9!>Rlv7hHE+UZfqcZzl zrgd^lk}n}psC5fn|KJcyVz!JRC@ng;)+r{SEJ3EXyd;Fm*vwCy;#n1UZ)|(Y*zQy(C}os$X=(Vp{2OvWdA)HlzA%0x@H#W;fR`W zN?%+=#EhvHMy)clGL%RtW1SsCXQHTGIRAq8FR#5{KfQDbviQWU)>eD03TY+b6f7N1 z(UOc%T13$qIqYs$o}HG%D#LW_Br%H4!o8UB{1w9nEVz;u-;+1$&g4Ojh#%Yml34C zHztQ~A;>pA(J|Wy>JFN<2U7?t4V`basRZk$Ydyoa6R50Hgq0Th+C&WpSUM{W?A3w& z3ItZTr7Sin@oLS`kV%jM`wIfss8zd=KQwmZv$F~)TsYmHI@iG?fw|mIDD+8S!Tr`uA_R!YYBsh1y%Y{PX;7l*vUoAfX*o)(IE_k z4c*T*5(Z7#wM`DI8MNh{rn96BS_W<9E>R35*Z2yPgq}E{0EV?ybk)uvbQN(3#;nB9%$Bb8HtDXT%w~lpdVbrEDe8VREp&%0ns$-O zX1AG|5g1(*gUZ~xc*9awSy&lqsf9%~x-FM0b6@%cdcM58&&TJudQvQar2}DB!@((J47^Zy8 zfpmg=wJpGXkl?=gXIn=l!EoS(@v2&a?T5Y#vl|G0oQz4m-bkQte6!fMjbNWU(OT0^ zkhyeAywXA7w3NOa`-q^szEOq81iRW^`OoYmC}OHR>qb|s?Gev{-3BDtfmbmySm2=GygG zAeK)Y{-{S%Q0t zGhY?QW7X+JyL#ezxC2L=S2R4PR9ZC71Rg`U7~$B=!<*CFvnh=Z_H_{m5vLZmPUkUC z$s9@5q~ZCttV4QXX=1I5*Cw|-CAOYx|qq-S9<#kc~=H>ZW7y!)Lr_6!AA(zRn; zIYqyYX+B*^G1NbJnX97E4M@Y!ou~hLrl)#hti`D)*dKVuGRA-(Z*>k^LpEf&CGndp zaxvl`H{f@BH$n<(BuAF#q1{iEq>szTafp&x#sp2(`zB|p38D7-mZ+~L%vJax{6J|`fbGZ)RcEI{c|C=}NO$p5^E47n+w$&oap PtU^xLP literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-yz_time-user_err-all.npy b/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-yz_time-user_err-all.npy new file mode 100644 index 0000000000000000000000000000000000000000..e6aa970c22456ab7538965d0721e1a3fb4d81347 GIT binary patch literal 1728 zcmeHHu?oU46l_<&B3l$PC@6?HbaGQ%gm#i(Qyj!fDlXzz_`hl!xaA~;3cW|$d`=Dt8WFGy1%>}yO Hx9i=06+;BX literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-yz_time-user_err-basic-dep.npy b/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-yz_time-user_err-basic-dep.npy new file mode 100644 index 0000000000000000000000000000000000000000..1e64ad37a8ba07221429eb126028c0171f871f35 GIT binary patch literal 1728 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlV+i=qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= zXCxM+0{I#yItqq53Z@2{ItsN4WC1P)Fo<**r9mMu8V;lBU^E?!=7Z64fY@>X0GKC} ADF6Tf literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-yz_time-user_err-basic-gen.npy b/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-yz_time-user_err-basic-gen.npy new file mode 100644 index 0000000000000000000000000000000000000000..2e12760df6cc0e17d13a3407375fd1ffc4d1f6fa GIT binary patch literal 1728 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 literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-yz_time-user_err-field.npy b/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-yz_time-user_err-field.npy new file mode 100644 index 0000000000000000000000000000000000000000..d5ecc959cf6fa9ea43a6f318018785201ba727e4 GIT binary patch literal 1728 zcmbW!`CC*47YA@wL(l{y7et&FR2T(@HOCm_J75GTAo!y2h84`c1NX8F%mrjq?$|46 z8iKNjiA#`B8MuIgsH1F>3KBw+;3T}$6mODIsyj{G16vh{GIo&-|GU}V zk9J7V*DSJ3%#lF<_C7MKK>`^)J&^RH1oM1*XM%JH?C{gq313U#>B+Kh(m>#dLL#cp zAke8bY{|?g(4>wO{{K4ywY>h!Pm~1ADw>nNct~L73hM|RHG$YBFW%Nk0;}$2xt-ipM*fl69rM}jK5+xf_m#3qf;)M0lLW@SwlEkY8%Z0W4N>P>>7 z{>X3lC827Kd)(ni;-?+0jmCi_w37C*-J3~7O=)H`f=PTb;~zC0O5)O)YkYASiOFeG zm-c^?criRNwQd`U^U8bXmD@=iy_2VDk0232o7JU8lGseg361_kLYc1nbsJ~jr3j(f zha`NOZa#R#x&QG|!SW~)x>4!h?&P%W>AQ7O~jKCAd;|0PpXT;D{qmiPdb^NJA*?{Jv?+(e zaF&O+wuZv}uE8R*g+kSTFP#tTrI7D`gpiF;Fr9pEDtkiVFp>4)(pMA?n&=8H&!Mp_ zBb|OUpGJkcXW;ZZG>AVA<)&mqjCG@sM~%|8qMj)M*O^JJXbuJoaMak?>_jm zHw|OciZ9bZLn^i?+a#uuFdmXJ!)e($F1g}EW3S)BkafN^POLw3=ugglgGRL3MjERp z1XHKDe^f46I-J}i!CN^2Zgba=_z10yw3`(5kyL1wDi+J7ZNpdj6qX*}@_ncsjmW4g zqm9$?c+0A4`6hJ&l-fS3(KHDU4?6AN;weLJ`Cqs1U{&&=^WRy*f zbx(MuK+k^GDO8?>b1hz%9xyD$i-+h!Z$%AjA=D-*aeF!$2`RmoX9TT_49ok5OGs?F8ERW`b% zw8Y@-(1J+M5h)UWt!WK@5f9I%scyeVM^Xg z%3>#|1}$r2oqk+&P8F@Lgo{9LfUP4Cu5=i=n!>^W1)T=(*{lbE*&h?Jcuz1r}a@1*zg$K{;q2)6c zs*M8MiAfg68&fG{Ut*d~Mw!>auPl1<|X=f+rx7q`H&*&>aoj<$H!$5(@)kL9%p#n+kCeAr={sr1~ B@^%0K literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-yz_time-user_err-none.npy b/tests/sensorsim/gold/macos/scal3d_nomesh_pos-line-y-yz_time-user_err-none.npy new file mode 100644 index 0000000000000000000000000000000000000000..a250dc5640cbb42609942c428299dde0947876e2 GIT binary patch literal 1728 zcmbW$=T}tc76x!?1jADA7^MhtTq2_s%cZC^9|8fcG!;h>1!U&T%%KR(8HN!Vj*XIF zB8UnKQidY9D6T*Rr6`zSz)>-v6dM*I3`HVpYy@)rkbmGlUw&)vwf6h&FZ+Zq*JsO4 zb+vf4L=GX4@F|Wxo8u_lz_Da=gfUbc6&4*DLlJ_{efO{^iGb-#$go%eQ?InKWUsSi z+pb+@$xdSbUzw}+IjuaXS7a}ny2*pa7Ax1G0Up9T<1C6^^02kSc4w0=AL=PJ-G^52 zanYynt&ayE5sNbojKcY_l$Q9)()ozoU~uDfB_ED=C(x1{D#on5o^UJV)Tm1+!5`)dcFRHTNad60quP4H~H@ARZbs zcW)vvGT@vWdWD(qIbVeO0yYWsv~-0qIZWe+e+2lQ*y4Nr<-oDu>BrAsW+9*9~70;%bA; zP5MTNoWPyq`71=w3?A!D@fIOAEUA32LrgWdAW_=>WKB8a!EQHqgFq6^x-w@8<9nR9yUqCTeVCOh z%(vz8;qB?lEsZ1K)v+fv{I~!O=B&Fv3<zTdscjcWu8VM1nO01 zRQ~g$&?z!8yJN8z&LYWKEr)10M=ktlxF`mW;<|t}lQEd&HSBKmjm5*smzOdMV)1jq z2ZJAnV=-sy&qG;kF?M}BGMckfjQ8=0AwJ1s1Ox;)$*aUzskOSNw@VDgbNQ#KF)^0> zqFg>-heF}AnN=)f3K^r4g%xWkoKrSWx`4t^%D|OD9}4LgN;iA%qVU{=*Vjx?aQtB@ zu`Zgzf}mqkm6XD><_?<#IfZXRPyE(&n1b{xd)@z~Q7G?xvbpyth3qV^yzmSP_l)-4 zI-W&g?}UgYKSg1Fp(3Lyhr&-=9_T$fL!oGKpMG*4h2k*R>pJ-qaz%};`~nKQCc-_% zg%pe>hIi;93Q9Ydk1h%dyVaLHon{nhZkWw4rtso*&6%Yo6of-7Y!rggo^@O#6h&cOqa)EMTFd=LzDkU{gLS;L8Vb4@tRq?0anR^#ZFze@ z3VqSERbO>H=B^EyC{xNHyBVljb$%a)NdG^oQxkC2B*CY~W2%?8U|t zNf^BDR(APv5?U9HGztcju&{#O?l+r+z9bzg-jGI#fevfEHH|O)+xP7LmInFb;R}ZX zXxN!l8f+EP@N!tW!DA(YR2^IT?~kV={2Gbz=^VfWFEYk9-=u zmfoPp#Y}zQ>C=L8X8v7io@*tIHkMyabPbK(iSHi;{6r&lTBiT1jt2MdPu*`X(pWxo t;Mm6o=3Vt`^|6;}=&RD_^fl5@*&kAU*-XR9B7Ton3ytGTBKxKp{{h7A1Csy% literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-grid-23_time-sim_err-all.npy b/tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-grid-23_time-sim_err-all.npy new file mode 100644 index 0000000000000000000000000000000000000000..b90411dd5364cc0595a6133da3f574febb695743 GIT binary patch literal 1712 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlV+i=qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= zXCxM+0{I$dIts=*3WkQ7ItsN4WC1P)Ajp`h?f{}+?RNpw+k70s^pF4EVER;#512m0 z6AY$rt_c9s-{K*BR)!ET-+D4CpICEEgz=j@WhQORMR%`5#pO~L+w#ml8L{$M@>LnKA?hM5p^Vd?1Ie%hEzE%!<^*r50~tc&OpjXT=MwDafK7e S{7pA$V=g7`#TKq0{{aBVL>Br0 literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-grid-23_time-sim_err-basic-dep.npy b/tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-grid-23_time-sim_err-basic-dep.npy new file mode 100644 index 0000000000000000000000000000000000000000..3e7cd944de07b6cfdbb056ced6c3d852c67d4b36 GIT binary patch literal 1712 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlV+i=qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= zXCxM+0{I$dIts=*3WkQ7ItsN4WC1P)B=F&klmm#HFjEUmzxi(rrZqNOfoZ>G4p4Dt zFx?gD4wd%;(;^IhVEX2o05Ht}1w+kTi81-*+!G?M<_o6N zmqGn~APCG?zZ?Qp#{dRH&0JVIfW`lt|B!euTLy`5SUj^bK>TSK91itwBn}!94nxgc zSUP~kKLZ0K-eLYn#4|2`ql-hrVW^o4D-U4l0G8ij@z213?oUE|NH`2Na~T*cq3Iiv T4j7>Mopk@h!Uqx#L&01CSW)MD literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-grid-23_time-sim_err-basic-gen.npy b/tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-grid-23_time-sim_err-basic-gen.npy new file mode 100644 index 0000000000000000000000000000000000000000..74aaad50f7cafaaa601fd89865833dcf7c88af46 GIT binary patch literal 1712 zcmbV}`9Bm01IFEpV%u88&X$mI%dw23JQ|CUV+?BCW*E8EIMQ3Z4XsLvw34IDZZ^f1 zqjyETW)gDqwyt$lYmsGgD@XKt|AqJY?fL%ne7?_3XAdW;r?61G&^cldD<+UlG*>2C z29t<7%EaJkb}X9_)d+=oGr}I#B-BX8|G>=!7F6!J3Br$}<}}xx(KNL zeXg7wL*F(9*Vqdx=_lWT7bj2)h zs!%1B<3ND%k<#6f&bnwUBUN@un?cgxp(x+N8Zpe6KaMhOAa%GdH#W^4+Rr~}U7mDA z*i+uevVTzF6n}yjr%Hoo@*Dc>c@OlOJtNiIzp~2WN6&p;)qu%knpyU@7VwP}ZXmXj z!E2}wb1rtk#IWnF&KWAUevDdm&2UE#{r)7uoQ~WwlGDdG@4QP&Atb8p#eQ4y=2@88$$ zjyvy$H6~m=aknG>T+(XP3JqJ67YS!=@$Y?d^5-?E=-Hn^G5y8^t&dyE15eNqEy!C~%l1KK;&}Y> zwojSg#8STelL`5XYnE!cK@jrQ3H6aH>YZRvGn%YSesJ-dV=C-=S|E`{&= zDviUy(!r25{)a%^5;6H4Ssje!gl~%+v_iqjeBjslRG8mpHZPIaX^0dJQSx9L8Jj;X zJZRT;LT6E86vx0Fj}@3Nyh`YBQf*sd(S4z~PD>zIFmPn6Y-|@N5Omq=ohjWcoX!mV z*JNJ^Se(>~9>EHa$Wr=r^Pmwz=hjCDn#f2al{Z!%a)ypk{0nIvcaYsWI!8o3LC}7j zF1F-@agw2LZY%?@o1d63HV5LZ&4K#F3&A)slab7g2t}rfXWjYCa;ryYwwf7vBs2+M z(XZY^!JJ+%XZC|D8k0Wm6s*&cQ`-8%>ViKMvuj&>&oeRCl9Qye!Gd(bjX1^aeR7BU z-v5;n0mDFptLo39F;hAe=hQI4%Xi78oSZbrB{|>k=|U99b3XK%y>!Doc~Q({jt(ss zy8-PV{89ZM$Ex)eCb-kyEzPYg43`?k9!L+t*xr%;G>Hf-r0NuBtVLs8Z_yyKf0MUs z^b+SsfeH40n$rDjNr7DRXzlZJG>HBwCs^yFqjda2f{>m+Of+`nN$E0iKp;g6EnuO3 Zw*6IcZ3x6kGv3M7;h=2QYy^iz;lEC``l|o{ literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-grid-23_time-sim_err-basic.npy b/tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-grid-23_time-sim_err-basic.npy new file mode 100644 index 0000000000000000000000000000000000000000..74aaad50f7cafaaa601fd89865833dcf7c88af46 GIT binary patch literal 1712 zcmbV}`9Bm01IFEpV%u88&X$mI%dw23JQ|CUV+?BCW*E8EIMQ3Z4XsLvw34IDZZ^f1 zqjyETW)gDqwyt$lYmsGgD@XKt|AqJY?fL%ne7?_3XAdW;r?61G&^cldD<+UlG*>2C z29t<7%EaJkb}X9_)d+=oGr}I#B-BX8|G>=!7F6!J3Br$}<}}xx(KNL zeXg7wL*F(9*Vqdx=_lWT7bj2)h zs!%1B<3ND%k<#6f&bnwUBUN@un?cgxp(x+N8Zpe6KaMhOAa%GdH#W^4+Rr~}U7mDA z*i+uevVTzF6n}yjr%Hoo@*Dc>c@OlOJtNiIzp~2WN6&p;)qu%knpyU@7VwP}ZXmXj z!E2}wb1rtk#IWnF&KWAUevDdm&2UE#{r)7uoQ~WwlGDdG@4QP&Atb8p#eQ4y=2@88$$ zjyvy$H6~m=aknG>T+(XP3JqJ67YS!=@$Y?d^5-?E=-Hn^G5y8^t&dyE15eNqEy!C~%l1KK;&}Y> zwojSg#8STelL`5XYnE!cK@jrQ3H6aH>YZRvGn%YSesJ-dV=C-=S|E`{&= zDviUy(!r25{)a%^5;6H4Ssje!gl~%+v_iqjeBjslRG8mpHZPIaX^0dJQSx9L8Jj;X zJZRT;LT6E86vx0Fj}@3Nyh`YBQf*sd(S4z~PD>zIFmPn6Y-|@N5Omq=ohjWcoX!mV z*JNJ^Se(>~9>EHa$Wr=r^Pmwz=hjCDn#f2al{Z!%a)ypk{0nIvcaYsWI!8o3LC}7j zF1F-@agw2LZY%?@o1d63HV5LZ&4K#F3&A)slab7g2t}rfXWjYCa;ryYwwf7vBs2+M z(XZY^!JJ+%XZC|D8k0Wm6s*&cQ`-8%>ViKMvuj&>&oeRCl9Qye!Gd(bjX1^aeR7BU z-v5;n0mDFptLo39F;hAe=hQI4%Xi78oSZbrB{|>k=|U99b3XK%y>!Doc~Q({jt(ss zy8-PV{89ZM$Ex)eCb-kyEzPYg43`?k9!L+t*xr%;G>Hf-r0NuBtVLs8Z_yyKf0MUs z^b+SsfeH40n$rDjNr7DRXzlZJG>HBwCs^yFqjda2f{>m+Of+`nN$E0iKp;g6EnuO3 Zw*6IcZ3x6kGv3M7;h=2QYy^iz;lEC``l|o{ literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-grid-23_time-sim_err-field-dep.npy b/tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-grid-23_time-sim_err-field-dep.npy new file mode 100644 index 0000000000000000000000000000000000000000..b6591fa0eea4a3bb67a26432c9b0ba34f5658d65 GIT binary patch literal 1712 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 literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-grid-23_time-user_err-all.npy b/tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-grid-23_time-user_err-all.npy new file mode 100644 index 0000000000000000000000000000000000000000..bee980224a115eff08f2155ef8a7542482ceb4e1 GIT binary patch literal 7328 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 literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-line-4_time-sim_err-basic-dep.npy b/tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-line-4_time-sim_err-basic-dep.npy new file mode 100644 index 0000000000000000000000000000000000000000..9f8cdb7aa8caa2035230a29b123e4b9ddb9d6a90 GIT binary patch literal 1184 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 literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-line-4_time-sim_err-field.npy b/tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-line-4_time-sim_err-field.npy new file mode 100644 index 0000000000000000000000000000000000000000..6a1452874981350fb09d172ae49af81f92a8810d GIT binary patch literal 1184 zcmbWx|5MWi9LMp|9bU&5K_ME@a#Fa6d4ynayT;xd1cEpS8b~@}!ale0ZIf>k2N#6r z1@blG+i(K%EsT~!BEC(65jIW+9w>+o3L-==8DB&c)873Hy?=YZet6uooXa~F8f8Mt zAjxTQ!qnIl8iPvvgz%=(sWd{8l9nP!j+Ugv3IE&u1&OIb+*3sYsSy7UJn2*qI@R6X zg-*?;{;xAjym95zT4py(^t?FLBAyPTt+}rw+c?12c%S|rIH32okUZ4}f}Peuq^}DG znRO2`l3#ueF7a! zSj!D>Ugdy)`+eu*Y!1|%*yOGZ2SRn5O{Aed7}Tu_<3h(#=*z9{bgl}6#}spir|7Os z<~ja>?ghz#iZ8W1*!2$WA4_ygDq}Bn>=t`^mrP=8Av=h~2baPr7`>VFKtd`T1{uz-MJo|2nG&;bA z|AzPl0|u_e7pkG)(9hMTJoU zFm~!ref75hGTcJa>e1z!nQkti8^3!waT?v9J;`Z&bh9#j-eaIEQC~Mdh;Dsmyy^Ss z+9_>kd(f48wy&3>`z*G3ryN~Z_x*1pK)2RuD@m1~;c!r)#o!_`R~XSB|bDJKJ22F5_J022Cb}f@YIqj9R%L7+7hNLBw@87m)k(&S3Um`+R(dC)>pM+RSzzyE;E`!L zx=(6u6PCmzYubK)f{n%>sG8r@E^~bFD!x_T@G&1oor8yyFULWE2`8QWkN`jHGwv!E z0%B_}XBh{QK<0R-dACn8M3Eaen6pxdEP2G(5}yHuYliTuaFR7d+UD2w`-5}B0=vw> zhl0;m&sm^rhJ$h TfB#R1hEEn$T`oKvhKjiWqa_^$ literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-line-4_time-user_err-all.npy b/tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-line-4_time-user_err-all.npy new file mode 100644 index 0000000000000000000000000000000000000000..32ddd3838c33229e1fd1c4d2177e98f195315a48 GIT binary patch literal 4928 zcmd^>OGs2v7{{+-myo-v7R{==nlTu{m|n_Y_L4F+%d`d;I_cajL~SOdsBjh{E@n49 zuplC2R?;F{Xd9J+BCLg#Ic;navywI$WShx3|Nb=ha4+*PGxBc!e2;U^z2EQq&P=qf zv9{hN?$t4gqDn!3*8#_3cZpr`-dHfhZB25{C51H(4JV8 z&@JHuLU(xJFaLT-*wvoHLUj+~k$8=;C$(y!tp?UVb{rS>XYH8Kl2OEqCToS=W7G@n zOq>+@Y~+;CCy_d#gFfi+IPzY&kvB7aLd07J;GgPj5H|JBRqXRxgT8Vj{@x9nd8@5O z;rw`vO`CZ{hEUJakTnm(2_9WeYaWk$SpP-?4@Ciw-WYi3qh=mI=27R1G1RLt3=Xq3 z);zvUfQK3ej}8O%rdEWoPqPZW{qf1}bQ)So~few&9~s5c7#R0Ou7_=NqxEARK>O4ObA&Y;80gZ}#t@aXq}M}Hjm zKyn*+%tcV|=hNV^;S+f5+zcLL8scpRc=%P+`|SdFoKL`Rc7lf|y1saDKFEXfA@iW0 zJUAbjcyK=EG&2v*2YGNlWFG5nKCZ{m$DRiC@m(M4c5VRu%6e+8@ZVcP9`Ey|KJ+>7 zk(=Y_=MN)iEbkX@L+<^a6p#5Fo|n>0aYa1&-*=hzXT0FoIkc&E=QBS&F7sgB-$kr> zEGEH&|37o(am$xG53Bc1=aK$BR{oW)=l=3OthcOk9@jIEHuI<{za0;|`5=#c=i^`G zVOJ-)Zgw{PnN&WHj_f`+|yfR{dyoPBwYz zeUeSS{C%>`_sFy_*D;Sa*JrC-Co9*}Puogm9zE{qd_oHo> vC+{!YT)z^Pd2kNaVm|mCay{(6TlQzWj_1hhWt(|+nrptiPoZ%9{-5y^^HDS0 literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-line-4_time-user_err-basic-dep.npy b/tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-line-4_time-user_err-basic-dep.npy new file mode 100644 index 0000000000000000000000000000000000000000..d395c7a5d957dcf8f3311956bb8bd14113f2ea75 GIT binary patch literal 4928 zcmeH}y=zlZ7{*WSQnZ4oLkkv;D7jT4raiUBQce7dTGJ1;RRdxhYz_`34fl$RNQ;P5 zhJrzQMI=*k?^2|ogX6`e4%#VG{{Z7)C+&TX5167uOIkXdv;25MNZ`EZ{qejU80jC% zG>FIIi8G$_9=J}Abb58%iAqOLx{us!est0u&xN0-vJ+lz?Q`#8wvb!P?Ojo+qViPi zSX4fhn>xG2UuQa2O@y(m8j~UA>%CyiKLA#A3n)|@DAi%`r+)-&5)rUPw}T76j)OD$ z1XvDEf{U#kU{QC1C0~JWf-bO0bc0{hr@_ip98Axj0f$$5z@w@coY7~&S^peZ4iex( zF$v})=fUqE4BurgAny|w!IE#-r!FCX4h*}!%gFDWQ($4v@JHeb^1T(q{nJ;GU$tHX z)ANSUGJVMLs^MbsIMpVnnL1J6*m>A_gb%^) z$NIf8`@ud%Pq8o2PwYeV68jE)#6Ck0v9HiS>?8CJ`v!e;NY#2K=GFRTELH23U9#3E zomJx#dgMz`Z;!0Mx2?){9_9wN>V7x+yLKKsaUSed>{Ij<`xAQ;{luO`|Ivn(Nybe2$?Y{T_{hyu3PVv=mn^eZ0 literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-line-4_time-user_err-basic-gen.npy b/tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-line-4_time-user_err-basic-gen.npy new file mode 100644 index 0000000000000000000000000000000000000000..77f7017c7e056e02d9a84611b297b54a15da706d GIT binary patch literal 4928 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 N%~nn5v2y;m`5(#lnl1nU literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-line-4_time-user_err-none.npy b/tests/sensorsim/gold/macos/tens2d_analytic_nomesh_pos-line-4_time-user_err-none.npy new file mode 100644 index 0000000000000000000000000000000000000000..d95804cb6d077b04082a67177b0be378cf6242ef GIT binary patch literal 4928 zcmeH~O-NKx6vs`8K(HWNh#*cVj>edoW}`TIbjHy!XZ#pHW=3b6Z$EM}W+W!Ugdl_< zNQ>OKab-ap7rBbSjT>DEfdo>xNQl}9p$jAG-8uhvAJit=_TFZA@7;UPnRnj#z2AN6 z8gTY_Pi5W7x@U~WQjw&w!C-8Rn~f%eF+QD~NrrBXPA8)=aorx8O2w4xsqxV5m~viT zYckZB4A-tym<+Rqe>!rraJ;|pX8FO=w`Ts$p|;|}uhvK&@p(R-6{oWWxL!n-#Zt#& z=|$Wxq12N5FqvD1apm+vS_-$347v@Fuw>_Yxd`tnm8PSWck9-Lkey+8h@KXN3W zm{&!TN6f2o@TyXBhj~^bIm6@3k}J$B3wYHm`N8$jc)`4~Nj@;IG#)Uo9J2qJS6aU_ zuUz0&H+a>9c)j3NFL>1lUiIPsxxuS`@TwoY8bCgS;ME{_H3VJ_fma^z$_rk3!7Cr~ z^?_Hz;ME9tH3DAw!7Kl7ywdBz?}c6uy+6eFT(VMLe!UdJyx>3BT%= zzQbJ8{6_tbGT$_h;q^SyTX>)8lb*u$^kY95fM1PD&hWl91i#Yw!u!E6{3-&!io&m= z@GFfcydR9iug2h4WALkS_|*jRoPb|V;yFyhuWlmmDfrbC-p2&|Dj|8L*F)^j^?LAo L;FjM1zxT&454t64 literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-sim_err-all.npy b/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-sim_err-all.npy new file mode 100644 index 0000000000000000000000000000000000000000..7b86ba30467741445dafbb45d030cad0de23feed GIT binary patch literal 1184 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlV+i=qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= zXCxM+0{I$dItoTQ3WkQ7ItsN4WC1P)Aows-%>hJ*J#z-rJ9-?z^u9A*VEUeqH<hk8bXqnW*MYh$PS48EINz`?@0CA?_)LxLcLxoKO^ZWgUa?=T?S+#W@%tG>lKGxqUk!{v~8?gs~~uz8~`;>aXxX+{wTY32`5p z^aM%5=KcqR2$Jks<6{k0e~kyC?*dN<(fVQb!Dt3BfcTRd<|3O13%>+4NVG4p4Dt zFx?gD4wd%;(;^IhVEX2o05Ht}1++5PVx|Jvo|Mf7Q2Q*wG|ZiwZn{9lJt5+1zF<0i z8Pt6Tg1~(B%OOy83}8Sjb7A2M3(q(IA>mlI3=)2@aAReFxW_O!9O|w}95lqev@#bK zuCVZAV1R@p%$qmZ QO^>9z6Xp+yd#PzI0N>K1hX4Qo literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-sim_err-basic-gen.npy b/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-sim_err-basic-gen.npy new file mode 100644 index 0000000000000000000000000000000000000000..68345a9fd49b5bf0ca3da71492ef40cfac2167cb GIT binary patch literal 1184 zcmbV}|2xzN0LN*yQJB?=HLdF$r+aSXd^;uHqMYQu;Ob5ecibUY@;RBb7%Qrg(v0g8 zHBy$P(&fuDcaNO()F^e#J<2Fe7sj4EDXH1Nu-9+z*KhCVb&Aao17FQ0p(>9}d#L8)DVu&9R?d2%|k)=ebq>f9hnPCe?u-hkO=S^(pBV5M58+RY0< zSK0Yd%iJJze6}*`mFHFvH$S#~@mUB@Plvi9MSfZVryR&cZl?@b(zZZe* z0I#t!?_hg3RGfZk%5P+%$t?YFr4pDT{~SJ+ya}D_&K9;zZ^pQ~aHLur49mEM2mQ@L zP}u$D1#S;ygH%D z5ZUeek>mt&T2??#F%wUxVJu$}2qSUA5F-o0O2&g|o`MU@=5a&e?Qj$@O{s|+cHqK? z6$iI{7m32JgzAf-BIs1ryWCcb@yNTG*~;qiOUq48n5lL_-erSkcpTvPrlg6xSUB>w zSD)}J7nw^U9VGUA@NCRK-+4iZIIkJIPDV6{FGP8E!D1K(8cH5^OK|CBh-9)S9&KT7 zMuf+wHCcB%CYO~uGBdYz-fCAtlQ0Bmtg3 zyG=2KMWH`meuEMbi;a^CMipIxz~Pow<2UiBoF%KaH(v2;V5(kdYu!*II#+Gi9SCJE zA-qRoW0W1Ij70>@BFndo%?S|dHJa(x6OD>%msDpNV)P!mwc2Mk4s^AD_6`>rVrf0j z_mh)Q^!TUZzO~Q%KAh3l#dF=@v;T^U;=UQ{n9mwCL!s!W857&)J6#F;t847N0GAeK zk0iuIgFFzW-gHz9*&&bj=Lh0JF;45QP027Zt-t7aKM9rYW@Ax14SwG)|FoiD+yli8 z>;b2ZEYM8uWa@c580QW@2u>B?m;6;#9@Q~W4v3l@VkD@TVM_;(NwN4SkM;e6Bv`O= z&Pn)kkn}#H;n_Vf5jp2r`M=Y=etR`q6wAb5>(@(QB|FWGM7c4%p_U;9oWs1A+hm literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-sim_err-basic.npy b/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-sim_err-basic.npy new file mode 100644 index 0000000000000000000000000000000000000000..68345a9fd49b5bf0ca3da71492ef40cfac2167cb GIT binary patch literal 1184 zcmbV}|2xzN0LN*yQJB?=HLdF$r+aSXd^;uHqMYQu;Ob5ecibUY@;RBb7%Qrg(v0g8 zHBy$P(&fuDcaNO()F^e#J<2Fe7sj4EDXH1Nu-9+z*KhCVb&Aao17FQ0p(>9}d#L8)DVu&9R?d2%|k)=ebq>f9hnPCe?u-hkO=S^(pBV5M58+RY0< zSK0Yd%iJJze6}*`mFHFvH$S#~@mUB@Plvi9MSfZVryR&cZl?@b(zZZe* z0I#t!?_hg3RGfZk%5P+%$t?YFr4pDT{~SJ+ya}D_&K9;zZ^pQ~aHLur49mEM2mQ@L zP}u$D1#S;ygH%D z5ZUeek>mt&T2??#F%wUxVJu$}2qSUA5F-o0O2&g|o`MU@=5a&e?Qj$@O{s|+cHqK? z6$iI{7m32JgzAf-BIs1ryWCcb@yNTG*~;qiOUq48n5lL_-erSkcpTvPrlg6xSUB>w zSD)}J7nw^U9VGUA@NCRK-+4iZIIkJIPDV6{FGP8E!D1K(8cH5^OK|CBh-9)S9&KT7 zMuf+wHCcB%CYO~uGBdYz-fCAtlQ0Bmtg3 zyG=2KMWH`meuEMbi;a^CMipIxz~Pow<2UiBoF%KaH(v2;V5(kdYu!*II#+Gi9SCJE zA-qRoW0W1Ij70>@BFndo%?S|dHJa(x6OD>%msDpNV)P!mwc2Mk4s^AD_6`>rVrf0j z_mh)Q^!TUZzO~Q%KAh3l#dF=@v;T^U;=UQ{n9mwCL!s!W857&)J6#F;t847N0GAeK zk0iuIgFFzW-gHz9*&&bj=Lh0JF;45QP027Zt-t7aKM9rYW@Ax14SwG)|FoiD+yli8 z>;b2ZEYM8uWa@c580QW@2u>B?m;6;#9@Q~W4v3l@VkD@TVM_;(NwN4SkM;e6Bv`O= z&Pn)kkn}#H;n_Vf5jp2r`M=Y=etR`q6wAb5>(@(QB|FWGM7c4%p_U;9oWs1A+hm literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-sim_err-field-dep.npy b/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-sim_err-field-dep.npy new file mode 100644 index 0000000000000000000000000000000000000000..63e620b04c83856ceff4323b180c3218686e4475 GIT binary patch literal 1184 zcmbV~Ye-XJ7{|>Kg`p{hL?s?2J32?AX_FQDl)B||*VN;M&23HR^4hGKWmy=MCWv@R z3@M^0Fe$Y#E6k#K+Xxf`wTooplp>*)n3wA9yzjU3t>??1|ApVDr(T{SQ>L$Tv$~z7 zjoBr~EVPKC59CDC0*cNlvYfQ&3$uzW#_WH&Sf5{#jq;LQeQ`GO!TSVMgn$YU4-ru3 zsQ)?-p*+@c!z&1qe`-4y8p8nlD0m&9cp*`XK+Wc{P;BfTwdWrqeFFRu4%kW_O2|&i z(HsZ=L?z<3MD&H&5EuI>sHiw4+l9EzY#s{}mi4?Y#KnCAxPp{ZM-dnAq#Rv&x8+$v z86SSn$dg=?djWe9l$*ac*slVtv3VSn={k6RdGT#N8>b zuAM+!>_w0#`jPY)ad)tJ91N%eM%O|lq?balS;2@A7w?oDJx>jJZn_V5rF?=&3U>?n;4_lW_IiFD^ojTo?(!`wM>=$zlmB^}X+xKSgmLEeaqJp;VXj+kP^jbw8@n1`lAa}gK!CK&0-kKTs3cvryDza<9< Axc~qF literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-sim_err-field.npy b/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-sim_err-field.npy new file mode 100644 index 0000000000000000000000000000000000000000..db5c16259638fda963aed0ff7016d963eb46b0c0 GIT binary patch literal 1184 zcmbWv{WBW|9LI4_XD!RRYIT-eH55@&lX|SC@)avJsSy$n^%RN62oYLJP_?PGj`N%z zEp{EI&O^&|v2J?ZsfT&!;@0b(+7(^1cz%8=_U*s0&u^di53f=$&L!_ab+xN%85BWe zGG9V*B2(y5jua}H5|t=Pk?<125+#Dj58aIypB#xjIff^W#BXj-C7+>^X|z*RawhqI zO((6xqn`eA7o(UukTf-H30xz+yJA-+jNQLiu|MttDZ~W2tAht*g;>1G)?~q+eQrq| z(GxN{a<8vhv%zke-F_sC4SVZvCW+O4uyE|P_Jk(~LM7od&FFRsxw_FKmM~Fjqx&3P z6?gT7-)k56AuqmIj&Ai&Z9*+A78tClzceCwLPF6Om7X*o`SIVciqI=+%q*@xfW-l+! zhoNiWd?J6X+#einPi;)w1i^d(TY41T+Ws@aN=+Wrt9N6`|A7o^=m<0`NF(AZ+IcK8Afs0?0$^visK|e|VWanNmY|<)gO-SKD%NqFp8;dab z%kS#%(<%W}?w;!?c8!EO#aPYQ!)SO>%Qah&#=x`U&?O4Gsew;=($FQ!M>z}oevnq^ zddd`CLBp%k!XHd9dR)a>Y!84gA#+Yh34mVR4AF&;d0-G7dn{)$0^0lk`RuT71XK}t zhAXldkZ<-qI;$QFqr=Pg#uGx|erq{AFc=R7pYHS!bVeCz4cmGeLrfTL$bNg^VE{PI zhp*(K`@n$_!9_P;HZ)s`u8Pp%a}r&KQ(U?3ofx>WmS4g~_wjJ!{CRYlVy5IBx};E^ zQMr|Z(Lmom_leXE%*V{TpXP_aHN)s8gQ;LB6R*QHz5q0}nwYZsD0oKyGQ&$13HhF^ z<%u{E_}+9*FMB6~)n<)cLX#M1BQpvM$0W$JX%?!`HIFZ{lb}m@Ye=~8T?n)k_mb|Q y+Y#|dsX$lZFW7pIE-7qqwiR6}G5j~4Pz0H06-l2fMX=1usPadb9_JxQMfX2v;`NFE literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-sim_err-none.npy b/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-sim_err-none.npy new file mode 100644 index 0000000000000000000000000000000000000000..46eb99ad33b80aacac7604e21279df59ac0b025f GIT binary patch literal 1184 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlV+i=qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= zXCxM+0{I$dItoTQ3WkQ7ItsN4WC1P)C^*`rd!uQslmmp;au87h0wxnE-^yWkq0I5Z zH4ad57l+(S>a~}`-J$Yc4)Vr8!0ZQA7vMl^b35!_PPSXA-~gcw9M0Yag1;6}zJr5S z-(!ou%PvrH4~Kl9_jEOUq4EI^k!e7%F9@nG1nyp1nLA?@2xvJ#Xe)=$|3SbR%J*`Z z50(#riU&Kmgn~dgR6fe#4Oo3FR9ynxy|gkH;vNI2eGU#E!1jB<-RTZ;-qjGOc!a|= zu=fz|1N(1(k^@9t3f#T4GWWUX{4bvWjU6Dgv%{TtK=98O$`5u(0486V{}E8}ScjDf z+}jfB6QT0S4yvH^Tb~A1mjQP#t<3$k73cs4O9u$;=}^-F1P6kk{78oiVDf$J5Dyhk ea@8xpb6&y literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-user_err-all.npy b/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-user_err-all.npy new file mode 100644 index 0000000000000000000000000000000000000000..7335801d87326d86dd3ab58aaa63a12ba210d09f GIT binary patch literal 4928 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 Z60E)#hN0qq9phC+IQG|a5iQ!n@qgQ#a1sCj literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-user_err-basic.npy b/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-user_err-basic.npy new file mode 100644 index 0000000000000000000000000000000000000000..d53e3178787cbad3ac92b607161d589ec4c892a4 GIT binary patch literal 4928 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 Z60E)#hN0qq9phC+IQG|a5iQ!n@qgQ#a1sCj literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-user_err-field-dep.npy b/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-user_err-field-dep.npy new file mode 100644 index 0000000000000000000000000000000000000000..403d767239d90f5e8383b532a527ecc57afd7425 GIT binary patch literal 4928 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 literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-user_err-field.npy b/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-user_err-field.npy new file mode 100644 index 0000000000000000000000000000000000000000..e67349d18fe193cadc8e133051990202e322f42b GIT binary patch literal 4928 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 literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-user_err-none.npy b/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-grid-23_time-user_err-none.npy new file mode 100644 index 0000000000000000000000000000000000000000..01ef222e7c463e04c61ca40f9f6ec4b2c8710419 GIT binary patch literal 4928 zcmeH~S5#D26oxUDh=PE@5-~Uk3XvjZkRc%cw1I(Pm|c;LR=bz*RQv<4V_u z;ja(eF~fu6Jkg!W{q0ThzUafoyZmTf09I|`j&VX-9|#XluF5rtbVS(8g_ryuOnM;z z!&w%J9=z^ooM-;BF{BT8v-MrWVaNM~<2mEeMvz}5YMEYrB>6^RI@`~{X!4InG}E6b zCXN{NVmg;%@RZ+IEG{uW9|>_uu$=MFjl)#_zQiMo-M^-Ig!7zIxG|o{1boc%Cg3sC zsg|LE=T5{<#`882aV%af$4_j$RgTVlup8F#@^Ns0UH>fsZDTCw-Z-b2x9~`gBP?Sl zTq!z}5NG8=^KSTAm~chd;7->)vGdI@sY6!!P@EqUbt9h5+2c>~LWm=u_`Ugb6s-%w z=;7NZ6weH%^&tqf9)IBegHY_?b;8j9)xdXKhlBLOv8ZXv+NSH_q#FU->o>*>T@Xq7 zQK&o{awikf%zS!q$bKKV^fUXC^c2IMq;Y$(4g}}tAEqgke;sI^huS4(e2*-YYT_k$5@VqEw z^S;rj)$Uo}-zA20Vqs+A*CnJE4|~aCH_2it=_a85P#4qPxJ1&IBXC9Shu#Fv4_e73<1;><)S>wjb+hrbV5SbV$Dv3|7%hj?x+9?fuc2kB*fOOa1qzd^=GcxzX4YLcad|XkLiBeEkH`^$;xN^B+cW z;TRI}o~wWe*iaw5UQ+4#hm#oh_;oS3z{;gUf;ztM;;}Jkoiy{26pMHr84h#ZW$Pg) zJq5ND-rQe!Q$e~(Sl-`dMnjd7^i`MaMhe&rX?;NT75R%Zd|G(K0S(A9~9|{ zQ;$Z@Ejl)vc(akga9j+;ZNR0O+zY79K>S9;u+OZk#`gZ`%tyz{hvb%Z(??2sSk3|z zHE@Mn?m=T;+*F@mcRW`}^CDP9D;%R2h0=APFMG~rMNnK6HZ0;kXv|`Yk3|sse)=j7 zUHElUoMH8`N=EDD@F}0#FCbMxI!SnaAj7;QTSPF(pq&d(suOgy-IEMnsFEb`T0oAdhWtLwDnuS1A8*U(pW@a8%6 za6Y%&>)Z`J9Qb`@quW^5jJ7|siOYaT>~+#;AU-25Z0J^-@z{uCJf{hJA|^hV_soPE z{yya3JJ$FAI`;qaA+NnZI`h%7@^S9;wf7EV9bq}U!H?C; z8Xp=9@qX(3>B+N$X+8|QpS2x+b~Bu=N1^e1?t|l%nBpWDpvpZw*3H(zunFwzOjh%<2E>a9C41rI{n43^j**Xl0h8faC;$Ke literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-line-4_time-sim_err-all.npy b/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-line-4_time-sim_err-all.npy new file mode 100644 index 0000000000000000000000000000000000000000..4d0cb69296f075db3f07f558cfee87029184e8c1 GIT binary patch literal 832 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlV+i=qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= zXCxM+0{I#yItoTQ3WkQ7ItsN4WC1P)AmCt7a{$qoe4N4bI!OmGeSpUcOh4#>&@*=i zg83i*`+@0bwjeM)e{H_hb&Lx!>g}GgqR)2E`rM-h`m=k=@7000Ow({T~b> r!1~e6)&Gp!T(Gft%te;ZTIK{cAD=sr)q~U#ayLjlIp(6dp=~w@~z_bX1ADCu<0@|4iaVN}uFn7V+19JxxLlD?Kzy61SX>NuH zFwMXaiAFPk0nGo@HWwD2Fn7Yj3+BFW^UN>{u4D zkN6>G4m~JWocZFT8jYi*W;xM+E5bw`M30i!fvP237ep2^@k$We!zv+v{-89uuF2FT(>v z`9+ISv*O^KN`ei0FDCuwa`2YC^V#^XM>>_}n|54NoS8zVmnQO+-HHI7Q4 zDOp?KaLVv#^o;xF{w*jqb++2mln@PdH~-V4#&v}y_;r*PiAlxv%XWmcNlW`h?d?lY zNqn`tj2zJEmyUHgc=#U zt~@RimmETEm~1NwHXV;vp9*N3`QJj9*t-%sOQyImkO$8VPOZB!6$)?Xfou74Y|RMV z{isrbHio);wpoLTIMhg9YT*fb)l+de^~trpSqkQJ^4Xu-Um(4D*#iMyN%Ofx771Pg6BUK@k3ob777O z?XyjH3bt#}^XhcwK~omSy=PaC*BbEW(WUN>{u4D zkN6>G4m~JWocZFT8jYi*W;xM+E5bw`M30i!fvP237ep2^@k$We!zv+v{-89uuF2FT(>v z`9+ISv*O^KN`ei0FDCuwa`2YC^V#^XM>>_}n|54NoS8zVmnQO+-HHI7Q4 zDOp?KaLVv#^o;xF{w*jqb++2mln@PdH~-V4#&v}y_;r*PiAlxv%XWmcNlW`h?d?lY zNqn`tj2zJEmyUHgc=#U zt~@RimmETEm~1NwHXV;vp9*N3`QJj9*t-%sOQyImkO$8VPOZB!6$)?Xfou74Y|RMV z{isrbHio);wpoLTIMhg9YT*fb)l+de^~trpSqkQJ^4Xu-Um(4D*#iMyN%Ofx771Pg6BUK@k3ob777O z?XyjH3bt#}^XhcwK~omSy=PaC*BbEW(W>pQz;k;Tt-LpS#L)P1($$ z2`p~q@U|_k;>SNbsJx@Yqxqi;dEYui)wyBN8|G{M)d8B@`F?-3GtgWJ-_T)>d#TM1 zpt&7jaVv+C>0Gl- zT^vqY>zQ%_%?$^O`#TgJW-Dp~nhTK+abV6Y^Xvec3sDz^LE8%RL~u1bINX*IYUw}X z;Q-+WIPggDzdN%y#NifLJi=j>qNr5R(-^3Hg2U3Oyo<9ZCqdPvV9@G6?nr-Wa&WLN zIjxxoG#A1Ta4<5vqO=ict`%53!ohXZAp>ooxe)mT2i@rr^MioqLe!;T(97QGzdY9K z=J4;+W4+K<0S*v;m_xv;>ctj@F%Eyh;t38HK5+8z?Ma5pr#V!;2|ZRHp9xi$gF(9~ zsCBIXnrk*=PP!e?TnInRA$-O9H9|mhO~K*`4%RUbD?aZ|hRUZo_&v#*9SbxUqAmx6 F1^`SMMD+jw literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-line-4_time-sim_err-field.npy b/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-line-4_time-sim_err-field.npy new file mode 100644 index 0000000000000000000000000000000000000000..df26c628d6757fbf07709e0299caf5e8ddef9ee7 GIT binary patch literal 832 zcmbWv{Vx;%9LMo9j7$`g=dPIZa4|Z0%ze9-~z3A3zr_!WuWZ3NYR!TtENUy<-k8X!yq_h#; z6?+rqC3MYa3)WL|=%7`U z^~@1$&*-#D^!3{dTP)z%+O6`K2Oa=xAf=k!Qhztg5ltpRyQ`@5i$SJb4f{SDWe5!~>Gg zp!#`gEbQjq+sM|9gV~1$SrT+lE)J@kMK^7*amX3nL+bZc5ju@cZb_t1)|zqHEh-X{Cg2PdkAhfNpP#WyqxI7}ZPEWGxYT07W%E*;x_= z8H_FC)zL@@T@NqP4C6r8j*u;v@nEoanV>eq1%7}lmmiS`Gp6n)6XS`{Q)qO@(s6*@@oSj&4eY)49=U fF6h^rN{!HMy(Rl|7u|qgeOe{xW{T?*uA%!EMx9Np literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-line-4_time-sim_err-none.npy b/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-line-4_time-sim_err-none.npy new file mode 100644 index 0000000000000000000000000000000000000000..1fa6466da509406af432578274e7a369e4ee2c5e GIT binary patch literal 832 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlV+i=qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= zXCxM+0{I#yItoTQ3WkQ7ItsN4WC1P)DEROn1jHR6w7SC=Fy9c$H+Ogi=G#KW9UVS_ z`7Tg-cZauNz86%TuLFI|RfoF|;$BC%dm!%hg}OHo>fR8jd^ps-QBe2BqPds)=EA}g z=1y36LHL0Xch!fXx~o1O>i$HC`|VSp>eArurIopmbYKn-PZW3l4~K^vL>%hA|4{e+ RPlx&=3#u*`?p|t}3jmMa9E|_~ literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-line-4_time-user_err-all.npy b/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-line-4_time-user_err-all.npy new file mode 100644 index 0000000000000000000000000000000000000000..570fcf79cf0c195d989a7f7e9db452b17d6df1d5 GIT binary patch literal 3328 zcmdT`O-~b16n(J31iLnAVsv5*Epci{2M84t#;T*nf)zw5iC}?Fh-rXy4DmZGj0?kp zz-ktzx|vmXb)hSWi3?11p}274vVWk_U}C_|J-MMBIbMJkx@18p^T^She zkH(tBym;W7N*I$V-zmv=TJQ16l24ya-ATn~#%EJg30v3VNh49zjp_JYqR9Q7vJ{l1 zu8wwDdL;ePY8Az`Xm+bM9v3}?Ps|WuCell|kt^4QKwQmtQT&xBOgLekCp@&K5_TA8 z2rchf!cP(4F$3`z=4H|k7cLSG>Zre)zeHRuTtM9-c&8B|eqX;r`0MCZ!k1rxL8YJg zYY%X18+pA(l=LIU0HI|3J%o5d2j{#-qko~?4{4#YAFMn5Xcl3* z7yA*+qTi2o`0>`Ww;#9jf7g!|QSQfj5`HB0az6qq=r^OAAD&zAgYz1VBW>u{ync@Q zs%0^!V{MqvZys>gTUGF>eV>cxuLV(EzeD_w|rUi6)}8sy6xezHegk;X9;pBT literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-line-4_time-user_err-basic-dep.npy b/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-line-4_time-user_err-basic-dep.npy new file mode 100644 index 0000000000000000000000000000000000000000..8a7a73ee5e713de54902b3807ceb5d6f265c7819 GIT binary patch literal 3328 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 literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-line-4_time-user_err-basic.npy b/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-line-4_time-user_err-basic.npy new file mode 100644 index 0000000000000000000000000000000000000000..5df5d1d423e1ac12d5a69bf4f2a2cc51cea8c5dc GIT binary patch literal 3328 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 literal 0 HcmV?d00001 diff --git a/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-line-4_time-user_err-field-dep.npy b/tests/sensorsim/gold/macos/vec2d_analytic_nomesh_pos-line-4_time-user_err-field-dep.npy new file mode 100644 index 0000000000000000000000000000000000000000..3452ff04855432facf2530cce0e663efbd9e9a5e GIT binary patch literal 3328 zcmb`^`9BnhAIEVeMv`6SD560cF$uXFeB4*=aSVgpN0K8f6De70OUfCQ!n)TE(po~Y z${mV?)>$g&IyTXKeLvrS;rsCU<@NZye|@G}*qK|=cCbaTF-TtCVVsR{x1O z%)8KeR<26IanmB5N48RMPGvd5Qi22(5}M_#C25%FO`0fck^#BRenF>XGMt|gJs*i1=~pH)=@5rV9l?qPM%i0Spd%c%j*E8%fV^BTbL7s)Xi zI0e~b&uSh#r9i!%Pw!g3CX9COnLYiB7O-?GISN9xftN0u!Xg747K#-uc?cla-&;!M z*8%ODl4@*8I$&WO(OR~t1Fr1tHV)@?A-GXweCL!dT#5=hS7EOQDN4;7v<^MUUEH6< zp`{PZQXhfJN_}|d{bwFs$^iO^Jn~$34Pb1Zlj6lVS4R;-bwVBb{g>;qsxJI#*NHY^w@K$ zELsFT-uZU8grG;E)n|B#9%1TSM?}#>TY^LgLyx_C48OFY$MA|*w-|a9jm9%CphsA1 zUTOz=Kt*!|5j}V^$7vDh@$S+Vr3*a@{lth8=n-nI$^H|1Xlu|vcB98$Nk+RQdJON$ zE{{SF+vw4kGw4ybaQ4qT=t1<{EY(Dh#JAV)eM;1UIWytpRP?ZUR&q%TJ?fRzLq1RH zf_O=rM;dx0i8@lX(PRGhjKLR8eV}qis-~kyT{P!0Ko9Z7bm7@71NhlfiYEg-?iqzs zYSCl6y6=T_y5y=7Y#jKN5GSMx6KBPvM>W);z488>n(Ha3;uCgDzpM$FUKxG=6lg=U z^KJ>!G=Oq~k@LWs4ir};q{S2TKxC+;Tj8KS+}g2|FfL;N?6LsK6hnxl#zs*rj9@nA zY1J1uV{k3nn9T|?f!DoiQbzHnV6+k8x|U`Jb&@ri`Gu$9xcN%2b*(w%MJRByby$Gl z!}EF-BbLxQZLd`kVFfYY)|?WytU!%7J(8Ye4a*WrX(#z?pj`DelRMi6yibRAPe|AT z(Vg#0ZJ8|$hch`-l&Fw)-BQxGfePli3))(ScEI)cCSBl_9XxL%N6k6dL(Kcm^pk~cg)BQjnMld3F~bqOT!SEb-c$ttD|wp)M<^8-B|J#w13KX+|_;(L>;4Lw?p%>+I`57Rm5yMP|O71_#W=;08udRH7h z{yu5(pRYZ3;QeorM-O_;)$Vv%fF2hZ&aw>j*wC!GWsM$}*?w3hp$AuspW}bnX>cpy z`O`P(!Eby>ybL|sPsu6oMvv{P=6)VW?s$NMGJmmL6?I_^F6LKH=s~}Ok_p#s1E>g^ zTcCpxTuUfOt6Ve&pL=u-&RkQ_tL7hfvN#RIj;@5?S>~`gepPnYZs>y2~otLSYH-;{hHj@Yj6djGLyym1i$#GEePbsWY$qO{zW6 z-^Ommo^^oENhh0QdXAvJpz`Z$VHy;D+qWLGOanoVMN{bxC%F1!=l%Xi⁡}v~)3w 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