From f9c59e3167b0d9133b89e1db419fe902e1e7c7d8 Mon Sep 17 00:00:00 2001 From: Brendt Wohlberg Date: Fri, 7 Apr 2023 18:15:10 -0600 Subject: [PATCH 01/21] Looser thresholds on test --- scico/test/test_denoiser.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scico/test/test_denoiser.py b/scico/test/test_denoiser.py index 8e36c8b0e..c89151c87 100644 --- a/scico/test/test_denoiser.py +++ b/scico/test/test_denoiser.py @@ -74,13 +74,13 @@ def test_shape(self): def test_jit(self): no_jit = bm4d(self.x1, 1.0) jitted = jax.jit(bm4d)(self.x1, 1.0) - assert np.linalg.norm(no_jit - jitted) < 1e-3 + assert np.linalg.norm(no_jit - jitted) < 2e-3 assert no_jit.dtype == np.float32 assert jitted.dtype == np.float32 no_jit = bm4d(self.x2, 1.0) jitted = jax.jit(bm4d)(self.x2, 1.0) - assert np.linalg.norm(no_jit - jitted) < 1e-3 + assert np.linalg.norm(no_jit - jitted) < 2e-3 assert no_jit.dtype == np.float32 assert jitted.dtype == np.float32 From 974673ead1cfb5eac8295f4f24e83ebac9b270fd Mon Sep 17 00:00:00 2001 From: Brendt Wohlberg Date: Fri, 7 Apr 2023 18:47:47 -0600 Subject: [PATCH 02/21] New pytest actions using pytest-splits --- .github/workflows/pytest_macos.yml | 78 +++++++++++++++++++ .github/workflows/pytest_ubuntu.yml | 117 ++++++++++++++++++++++++++++ 2 files changed, 195 insertions(+) create mode 100644 .github/workflows/pytest_macos.yml create mode 100644 .github/workflows/pytest_ubuntu.yml diff --git a/.github/workflows/pytest_macos.yml b/.github/workflows/pytest_macos.yml new file mode 100644 index 000000000..71c396def --- /dev/null +++ b/.github/workflows/pytest_macos.yml @@ -0,0 +1,78 @@ +# Install scico requirements and run pytest + +name: unit tests (macos) + +on: + push: + branches: [ main ] + pull_request: + branches: [ main ] + + workflow_dispatch: + +jobs: + + test: + runs-on: macos-latest + strategy: + fail-fast: false + matrix: + group: [1, 2, 3, 4, 5] + name: ${{ matrix.label }} + defaults: + run: + shell: bash -l {0} + steps: + # Check-out the repository under $GITHUB_WORKSPACE + - uses: actions/checkout@v2 + with: + submodules: recursive + # Set up conda/mamba environment + - name: Set up mambaforge + uses: conda-incubator/setup-miniconda@v2 + with: + miniforge-variant: Mambaforge + miniforge-version: latest + activate-environment: test-env + use-mamba: true + python-version: 3.9 + # Configure conda environment cache + - name: Set up conda environment cache + uses: actions/cache@v2 + with: + path: ${{ env.CONDA }}/envs + key: conda-${{ runner.os }}-${{ runner.arch }}-${{ hashFiles('requirements.txt') }}-${{ hashFiles('dev_requirements.txt') }}-${{ env.CACHE_NUMBER }} + env: + CACHE_NUMBER: 0 # Increase this value to force cache reset + id: cache + # Display environment details + - name: Display environment details + run: | + conda info + printenv | sort + # Install dependencies in conda environment + - name: Install dependencies + if: steps.cache.outputs.cache-hit != 'true' + run: | + mamba install -c conda-forge pytest pytest-cov + python -m pip install --upgrade pip + pip install pytest-split + pip install -r requirements.txt + pip install -r dev_requirements.txt + mamba install -c astra-toolbox astra-toolbox + mamba install -c conda-forge pyyaml + pip install --upgrade --force-reinstall scipy>=1.6.0 # Temporary fix for GLIBCXX_3.4.30 not found in conda forge version + pip install bm4d>=4.0.0 + pip install "ray[tune]>=2.0.0" + pip install hyperopt + # Install package to be tested + - name: Install package to be tested + run: pip install -e . + # Run unit tests + - name: Run main unit tests + run: pytest -x --splits 5 --group ${{ matrix.group }} + # Run doc tests + - name: Run doc tests + if: matrix.group == 1 + run: | + pytest --ignore-glob="*test_*.py" --doctest-modules scico diff --git a/.github/workflows/pytest_ubuntu.yml b/.github/workflows/pytest_ubuntu.yml new file mode 100644 index 000000000..2796875e7 --- /dev/null +++ b/.github/workflows/pytest_ubuntu.yml @@ -0,0 +1,117 @@ +# Install scico requirements and run pytest + +name: unit tests (ubuntu) + +on: + push: + branches: [ main ] + pull_request: + branches: [ main ] + + workflow_dispatch: + +jobs: + + test: + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + group: [1, 2, 3, 4, 5] + name: ${{ matrix.label }} + defaults: + run: + shell: bash -l {0} + steps: + # Check-out the repository under $GITHUB_WORKSPACE + - uses: actions/checkout@v2 + with: + submodules: recursive + # Set up conda/mamba environment + - name: Set up mambaforge + uses: conda-incubator/setup-miniconda@v2 + with: + miniforge-variant: Mambaforge + miniforge-version: latest + activate-environment: test-env + use-mamba: true + python-version: 3.9 + # Configure conda environment cache + - name: Set up conda environment cache + uses: actions/cache@v2 + with: + path: ${{ env.CONDA }}/envs + key: conda-${{ runner.os }}-${{ runner.arch }}-${{ hashFiles('requirements.txt') }}-${{ hashFiles('dev_requirements.txt') }}-${{ env.CACHE_NUMBER }} + env: + CACHE_NUMBER: 0 # Increase this value to force cache reset + id: cache + # Display environment details + - name: Display environment details + run: | + conda info + printenv | sort + # Install required system package + - name: Install required system package + run: sudo apt-get install -y libopenblas-dev + # Install dependencies in conda environment + - name: Install dependencies + if: steps.cache.outputs.cache-hit != 'true' + run: | + mamba install -c conda-forge pytest pytest-cov + python -m pip install --upgrade pip + pip install pytest-split + pip install -r requirements.txt + pip install -r dev_requirements.txt + mamba install -c astra-toolbox astra-toolbox + mamba install -c conda-forge pyyaml + pip install --upgrade --force-reinstall scipy>=1.6.0 # Temporary fix for GLIBCXX_3.4.30 not found in conda forge version + pip install bm4d>=4.0.0 + pip install "ray[tune]>=2.0.0" + pip install hyperopt + # Install package to be tested + - name: Install package to be tested + run: pip install -e . + # Run unit tests + - name: Run main unit tests + run: pytest -x --cov --splits 5 --group ${{ matrix.group }} + # Upload coverage data + - name: Upload coverage + uses: actions/upload-artifact@v2 + with: + name: coverage${{ matrix.group }} + path: .coverage + # Run doc tests + - name: Run doc tests + if: matrix.group == 1 + run: | + pytest --ignore-glob="*test_*.py" --doctest-modules scico + +coverage: + needs: test + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: Set up Python 3.9 + uses: actions/setup-python@v2 + with: + python-version: 3.9 + - name: Install deps + run: | + python -m pip install --upgrade pip + pip install coverage + - name: Download all artifacts + # Downloads coverage1, coverage2, etc. + uses: actions/download-artifact@v2 + - name: Run coverage + run: | + coverage combine coverage*/.coverage* + coverage report + coverage xml + - uses: codecov/codecov-action@v2 + with: + env_vars: OS,PYTHON + fail_ci_if_error: false + files: coverage.xml + flags: unittests + name: codecov-umbrella + verbose: true From 3a49c434a682f40ed57aa183bd4a70d54189cc69 Mon Sep 17 00:00:00 2001 From: Brendt Wohlberg Date: Fri, 7 Apr 2023 18:48:35 -0600 Subject: [PATCH 03/21] Remove old pytest action --- .github/workflows/pytest.yml | 106 ----------------------------------- 1 file changed, 106 deletions(-) delete mode 100644 .github/workflows/pytest.yml diff --git a/.github/workflows/pytest.yml b/.github/workflows/pytest.yml deleted file mode 100644 index 06a00fa42..000000000 --- a/.github/workflows/pytest.yml +++ /dev/null @@ -1,106 +0,0 @@ -# Install scico requirements and run pytest - -name: unit tests - -# Control when the workflow will run -on: - # Trigger the workflow on push or pull request events but only for the main branch - push: - branches: [ main ] - pull_request: - branches: [ main ] - - # Allow this workflow to be run manually from the Actions tab - workflow_dispatch: - -jobs: - build: - strategy: - fail-fast: false - matrix: - include: - - os: ubuntu-latest - label: linux-64 - prefix: /usr/share/miniconda3/envs/test-env - - os: macos-latest - label: osx-64 - prefix: /Users/runner/miniconda3/envs/test-env - name: ${{ matrix.label }} - runs-on: ${{ matrix.os }} - defaults: - run: - shell: bash -l {0} - # Steps represent a sequence of tasks that will be executed as part of the job - steps: - # Check-out the repository under $GITHUB_WORKSPACE - - uses: actions/checkout@v2 - with: - submodules: recursive - # Set up conda/mamba environment - - name: Set up mambaforge - uses: conda-incubator/setup-miniconda@v2 - with: - miniforge-variant: Mambaforge - miniforge-version: latest - activate-environment: test-env - use-mamba: true - python-version: 3.9 - # Configure conda environment cache - - name: Set up conda environment cache - uses: actions/cache@v2 - with: - path: ${{ env.CONDA }}/envs - key: conda-${{ runner.os }}-${{ runner.arch }}-${{ hashFiles('requirements.txt') }}-${{ hashFiles('dev_requirements.txt') }}-${{ env.CACHE_NUMBER }} - env: - CACHE_NUMBER: 0 # Increase this value to force cache reset - id: cache - # Display environment details - - name: Display environment details - run: | - conda info - printenv | sort - # Install required system package - - name: Install required system package - if: matrix.os == 'ubuntu-latest' - run: sudo apt-get install -y libopenblas-dev - # Install dependencies in conda environment - - name: Install dependencies - if: steps.cache.outputs.cache-hit != 'true' - run: | - mamba install -c conda-forge pytest pytest-cov - python -m pip install --upgrade pip - pip install -r requirements.txt - pip install -r dev_requirements.txt - mamba install -c astra-toolbox astra-toolbox - mamba install -c conda-forge pyyaml - pip install --upgrade --force-reinstall scipy>=1.6.0 # Temporary fix for GLIBCXX_3.4.30 not found in conda forge version - pip install bm4d>=4.0.0 - pip install "ray[tune]>=2.0.0" - pip install hyperopt - # Install package to be tested - - name: Install package to be tested - run: pip install -e . - # Run unit tests - - name: Run main unit tests with coverage report - if: matrix.os == 'ubuntu-latest' - run: | - pytest -x --cov=scico --cov-report=xml - - name: Run main unit tests - if: matrix.os != 'ubuntu-latest' - run: | - pytest -x - # Run doc tests - - name: Run doc tests - run: | - pytest --ignore-glob="*test_*.py" --doctest-modules scico - # Upload coverage to codecov - - name: Upload coverage to codecov - if: matrix.os == 'ubuntu-latest' - uses: codecov/codecov-action@v2 - with: - env_vars: OS,PYTHON - fail_ci_if_error: false - files: coverage.xml - flags: unittests - name: codecov-umbrella - verbose: true From b377f3f8bdd2baa52d0774cdd7763ab332fea7ce Mon Sep 17 00:00:00 2001 From: Brendt Wohlberg Date: Fri, 7 Apr 2023 18:59:03 -0600 Subject: [PATCH 04/21] Add test durations file for pytest-split --- .test_durations | 3225 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 3225 insertions(+) create mode 100644 .test_durations diff --git a/.test_durations b/.test_durations new file mode 100644 index 000000000..5c67fffd1 --- /dev/null +++ b/.test_durations @@ -0,0 +1,3225 @@ +{ + "docs/source/include/blockarray.rst::blockarray.rst": 0.33786633500130847, + "docs/source/include/operator.rst::operator.rst": 0.07259666407480836, + "docs/source/notes.rst::notes.rst": 0.013984797056764364, + "docs/source/style.rst::style.rst": 0.001737270038574934, + "scico/test/flax/test_apply.py::test_apply_fn": 1.7188864190247841, + "scico/test/flax/test_apply.py::test_eval[ConvBNNet]": 0.8231822839588858, + "scico/test/flax/test_apply.py::test_eval[DnCNNNet]": 1.8997506049345247, + "scico/test/flax/test_apply.py::test_eval[ResNet]": 1.0295347669743933, + "scico/test/flax/test_apply.py::test_eval[UNet]": 5.751175366982352, + "scico/test/flax/test_apply.py::test_except_only_apply": 0.0006397429970093071, + "scico/test/flax/test_checkpoints.py::test_checkpoint": 0.0003516639117151499, + "scico/test/flax/test_clu.py::test_count_parameters": 0.0389369810000062, + "scico/test/flax/test_clu.py::test_count_parameters_empty": 0.0006282520480453968, + "scico/test/flax/test_clu.py::test_get_parameter_overview": 0.2505825650296174, + "scico/test/flax/test_clu.py::test_get_parameter_overview_empty": 0.0006974769639782608, + "scico/test/flax/test_clu.py::test_printing_bool": 0.0005957399262115359, + "scico/test/flax/test_examples_flax.py::test_blur_data_generation": 7.270825839950703, + "scico/test/flax/test_examples_flax.py::test_blur_data_generation_jax": 0.0720009949291125, + "scico/test/flax/test_examples_flax.py::test_build_image_dataset[False]": 0.1859506060136482, + "scico/test/flax/test_examples_flax.py::test_build_image_dataset[True]": 0.05577997298678383, + "scico/test/flax/test_examples_flax.py::test_cache_path": 0.0007769590010866523, + "scico/test/flax/test_examples_flax.py::test_center_crop[128]": 0.15189308300614357, + "scico/test/flax/test_examples_flax.py::test_center_crop[output_size1]": 0.004974153882358223, + "scico/test/flax/test_examples_flax.py::test_center_crop[output_size2]": 0.023292541969567537, + "scico/test/flax/test_examples_flax.py::test_ct_data_generation": 2.6753960320493206, + "scico/test/flax/test_examples_flax.py::test_ct_data_generation_jax": 0.11881005403120071, + "scico/test/flax/test_examples_flax.py::test_default_cache_path": 0.0005064900033175945, + "scico/test/flax/test_examples_flax.py::test_distdatagen": 0.18238763202680275, + "scico/test/flax/test_examples_flax.py::test_distdatagen_exception": 0.0007993309409357607, + "scico/test/flax/test_examples_flax.py::test_distdatagen_flag": 0.016702394059393555, + "scico/test/flax/test_examples_flax.py::test_flip": 0.058658112946432084, + "scico/test/flax/test_examples_flax.py::test_foam2_gen": 7.1155214789905585, + "scico/test/flax/test_examples_flax.py::test_foam_gen": 5.538035072968341, + "scico/test/flax/test_examples_flax.py::test_padded_circular_convolve": 0.4674576750257984, + "scico/test/flax/test_examples_flax.py::test_positional_crop[128]": 0.21750514704035595, + "scico/test/flax/test_examples_flax.py::test_positional_crop[output_size1]": 0.007569306064397097, + "scico/test/flax/test_examples_flax.py::test_positional_crop[output_size2]": 0.007207144051790237, + "scico/test/flax/test_examples_flax.py::test_preprocess_images[4-False-64]": 0.01818407094106078, + "scico/test/flax/test_examples_flax.py::test_preprocess_images[4-False-output_size1]": 0.01894074905430898, + "scico/test/flax/test_examples_flax.py::test_preprocess_images[4-True-64]": 0.017957168980501592, + "scico/test/flax/test_examples_flax.py::test_preprocess_images[4-True-output_size1]": 0.01900640595704317, + "scico/test/flax/test_examples_flax.py::test_preprocess_images[None-False-64]": 0.2218427979387343, + "scico/test/flax/test_examples_flax.py::test_preprocess_images[None-False-output_size1]": 0.0302787059918046, + "scico/test/flax/test_examples_flax.py::test_preprocess_images[None-True-64]": 0.10178661998361349, + "scico/test/flax/test_examples_flax.py::test_preprocess_images[None-True-output_size1]": 0.0354957320378162, + "scico/test/flax/test_examples_flax.py::test_preprocess_images_multi_flag": 0.013456538028549403, + "scico/test/flax/test_examples_flax.py::test_random_noise1[False]": 0.09538459603209049, + "scico/test/flax/test_examples_flax.py::test_random_noise1[True]": 0.013670848042238504, + "scico/test/flax/test_examples_flax.py::test_random_noise2[shape0]": 0.003929010999854654, + "scico/test/flax/test_examples_flax.py::test_random_noise2[shape1]": 0.16511932900175452, + "scico/test/flax/test_examples_flax.py::test_random_noise2[shape2]": 0.17842650006059557, + "scico/test/flax/test_examples_flax.py::test_rotation90": 0.29799968795850873, + "scico/test/flax/test_examples_flax.py::test_runtime_error": 0.0006316820508800447, + "scico/test/flax/test_examples_flax.py::test_runtime_error_array": 0.0005243009654805064, + "scico/test/flax/test_examples_flax.py::test_runtime_error_scalar": 0.0006695819902233779, + "scico/test/flax/test_flax.py::TestSet::test_convblock_args": 0.0004964930703863502, + "scico/test/flax/test_flax.py::TestSet::test_convblock_call": 0.24651166604598984, + "scico/test/flax/test_flax.py::TestSet::test_convblock_default": 0.0005041969125159085, + "scico/test/flax/test_flax.py::TestSet::test_convmnblock_default": 0.0005583520396612585, + "scico/test/flax/test_flax.py::TestSet::test_convnblock_args": 0.0005549360066652298, + "scico/test/flax/test_flax.py::TestSet::test_convnblock_default": 0.0005921839619986713, + "scico/test/flax/test_flax.py::TestSet::test_convnpblock_args": 0.0006061270250938833, + "scico/test/flax/test_flax.py::TestSet::test_convnublock_args": 0.0005169870564714074, + "scico/test/flax/test_flax.py::TestSet::test_resnet_default": 0.5814807260758244, + "scico/test/flax/test_flax.py::TestSet::test_unet_default": 1.3311546730692498, + "scico/test/flax/test_flax.py::TestSet::test_upscale": 0.11753026698715985, + "scico/test/flax/test_flax.py::test_DnCNN_call": 0.2202621179749258, + "scico/test/flax/test_flax.py::test_DnCNN_test": 0.10989455599337816, + "scico/test/flax/test_flax.py::test_DnCNN_train": 0.14921621594112366, + "scico/test/flax/test_flax.py::test_FlaxMap_3D_call": 0.1968211240018718, + "scico/test/flax/test_flax.py::test_FlaxMap_batch_call": 0.4283532290137373, + "scico/test/flax/test_flax.py::test_FlaxMap_blockarray_exception": 0.12290184298763052, + "scico/test/flax/test_flax.py::test_FlaxMap_call": 0.1164119410677813, + "scico/test/flax/test_flax.py::test_variable_load[17H]": 2.550061676010955, + "scico/test/flax/test_flax.py::test_variable_load[17L]": 2.5621543030138128, + "scico/test/flax/test_flax.py::test_variable_load[17M]": 2.5517321689985693, + "scico/test/flax/test_flax.py::test_variable_load[6H]": 0.7759093090426177, + "scico/test/flax/test_flax.py::test_variable_load[6L]": 0.9215884400182404, + "scico/test/flax/test_flax.py::test_variable_load[6M]": 0.7609393190359697, + "scico/test/flax/test_flax.py::test_variable_load_mismatch": 0.04877775098429993, + "scico/test/flax/test_flax.py::test_variable_save": 0.853082129964605, + "scico/test/flax/test_inv.py::TestCT::test_modlct_default": 0.8579488350078464, + "scico/test/flax/test_inv.py::TestCT::test_odpct_default": 1.0620697030099109, + "scico/test/flax/test_inv.py::TestCT::test_train_modl": 3.9662586209597066, + "scico/test/flax/test_inv.py::TestCT::test_train_odpct": 1.5238871769979596, + "scico/test/flax/test_inv.py::TestSet::test_odpdcnv_default": 1.130247749038972, + "scico/test/flax/test_inv.py::TestSet::test_odpdcnv_padded": 1.479419634968508, + "scico/test/flax/test_inv.py::TestSet::test_odpdn_default": 0.24543425696901977, + "scico/test/flax/test_spectral.py::test_conv[kernel_size0]": 0.44910236803116277, + "scico/test/flax/test_spectral.py::test_conv[kernel_size1]": 0.3756774729117751, + "scico/test/flax/test_spectral.py::test_conv_layer[kernel_size0]": 0.019514484971296042, + "scico/test/flax/test_spectral.py::test_conv_layer[kernel_size1]": 0.03691416198853403, + "scico/test/flax/test_spectral.py::test_l2_normalize": 0.10751941805938259, + "scico/test/flax/test_spectral.py::test_spectral_norm[input_shape0]": 0.30312837596284226, + "scico/test/flax/test_spectral.py::test_spectral_norm[input_shape1]": 0.11581311607733369, + "scico/test/flax/test_spectral.py::test_spectral_norm_conv[kernel_shape0]": 0.9740091119892895, + "scico/test/flax/test_spectral.py::test_spectral_norm_conv[kernel_shape1]": 0.748900720034726, + "scico/test/flax/test_spectral.py::test_train_spectral_norm": 4.405987851903774, + "scico/test/flax/test_steps.py::test_basic_eval_step": 0.6363707790733315, + "scico/test/flax/test_steps.py::test_basic_train_step": 1.331030447036028, + "scico/test/flax/test_steps.py::test_post_train_step": 1.2232089760364033, + "scico/test/flax/test_train_aux.py::test_argument_struct": 0.0007716831169091165, + "scico/test/flax/test_train_aux.py::test_cnst_learning_rate": 0.0005602320306934416, + "scico/test/flax/test_train_aux.py::test_complete_stats_obj": 0.0010669369366951287, + "scico/test/flax/test_train_aux.py::test_compute_metrics": 0.35896263405447826, + "scico/test/flax/test_train_aux.py::test_cos_learning_rate": 0.10683021502336487, + "scico/test/flax/test_train_aux.py::test_create_basic_train_state": 0.027168327127583325, + "scico/test/flax/test_train_aux.py::test_create_basic_train_state_default": 0.34824503801064566, + "scico/test/flax/test_train_aux.py::test_data_iterator[16]": 0.002744967059697956, + "scico/test/flax/test_train_aux.py::test_data_iterator[4]": 0.03096541197737679, + "scico/test/flax/test_train_aux.py::test_data_iterator[8]": 0.016928885015659034, + "scico/test/flax/test_train_aux.py::test_dstest[16]": 0.0922913930262439, + "scico/test/flax/test_train_aux.py::test_dstest[32]": 0.13152127206558362, + "scico/test/flax/test_train_aux.py::test_dstest[8]": 0.11119958094786853, + "scico/test/flax/test_train_aux.py::test_dstrain[16]": 0.21439685492077842, + "scico/test/flax/test_train_aux.py::test_dstrain[24]": 0.24151983601041138, + "scico/test/flax/test_train_aux.py::test_dstrain[8]": 0.36835763696581125, + "scico/test/flax/test_train_aux.py::test_except_incomplete_stats_obj": 0.0009862050064839423, + "scico/test/flax/test_train_aux.py::test_exp_learning_rate": 0.013578220969066024, + "scico/test/flax/test_train_aux.py::test_mse_loss": 0.06511154398322105, + "scico/test/flax/test_train_aux.py::test_patch_incomplete_stats_obj": 0.0010770679800771177, + "scico/test/flax/test_train_aux.py::test_prepare_data": 0.017271455959416926, + "scico/test/flax/test_train_aux.py::test_sgd_no_momentum_train_state": 0.021279882988892496, + "scico/test/flax/test_train_aux.py::test_sgd_train_state": 0.023251735023222864, + "scico/test/flax/test_train_aux.py::test_train_initialize_function": 0.3628028910025023, + "scico/test/flax/test_trainer.py::test_class_train_default_init": 0.3664904759498313, + "scico/test/flax/test_trainer.py::test_class_train_default_noseed": 0.40750230103731155, + "scico/test/flax/test_trainer.py::test_class_train_external_init[False]": 0.029737067001406103, + "scico/test/flax/test_trainer.py::test_class_train_external_init[True]": 0.030733344960026443, + "scico/test/flax/test_trainer.py::test_class_train_nolog": 0.36705862602684647, + "scico/test/flax/test_trainer.py::test_class_train_required_steps": 0.3690670530195348, + "scico/test/flax/test_trainer.py::test_class_train_return_state": 2.1770760360523127, + "scico/test/flax/test_trainer.py::test_class_train_set_functions": 0.3557461390737444, + "scico/test/flax/test_trainer.py::test_class_train_set_iterators": 0.3872656379826367, + "scico/test/flax/test_trainer.py::test_class_train_set_parallel[False]": 0.3504089229973033, + "scico/test/flax/test_trainer.py::test_class_train_set_parallel[True]": 0.3502154659363441, + "scico/test/flax/test_trainer.py::test_class_train_set_reporting": 0.37181116198189557, + "scico/test/flax/test_trainer.py::test_class_train_set_steps": 0.3755331639549695, + "scico/test/flax/test_trainer.py::test_class_train_train_loop[ConvBNNet]": 1.8283332029823214, + "scico/test/flax/test_trainer.py::test_class_train_train_loop[DnCNNNet]": 2.4405952600645833, + "scico/test/flax/test_trainer.py::test_class_train_train_loop[ResNet]": 1.8284419010742567, + "scico/test/flax/test_trainer.py::test_class_train_train_loop[UNet]": 9.87717563402839, + "scico/test/flax/test_trainer.py::test_class_train_train_post_loop": 1.7792194730136544, + "scico/test/flax/test_trainer.py::test_class_train_update_metrics": 2.342272498062812, + "scico/test/flax/test_trainer.py::test_class_train_update_metrics_nolog": 1.9077490189229138, + "scico/test/flax/test_trainer.py::test_except_class_train_batch_size": 0.0019352950039319694, + "scico/test/flax/test_trainer.py::test_optimizers[ADAMW]": 1.7518907120102085, + "scico/test/flax/test_trainer.py::test_optimizers[ADAM]": 1.7503728209994733, + "scico/test/flax/test_trainer.py::test_optimizers[SGD]": 1.6859719579224475, + "scico/test/flax/test_trainer.py::test_optimizers_exception": 0.33741868095239624, + "scico/test/flax/test_trainer.py::test_sync_batch_stats": 0.6306725540198386, + "scico/test/flax/test_traversal.py::TestModelParamTraversal::test_only_works_on_model_params": 0.001499654958024621, + "scico/test/flax/test_traversal.py::TestModelParamTraversal::test_param_selection": 0.0007922079530544579, + "scico/test/flax/test_traversal.py::test_construct_traversal[bias]": 0.02161026105750352, + "scico/test/flax/test_traversal.py::test_construct_traversal[kernel]": 0.03784701105905697, + "scico/test/flax/test_traversal.py::test_construct_traversal[scale]": 0.02136213699122891, + "scico/test/functional/test_core.py::TestBlockArrayEval::test_eval[complex128-HuberNorm]": 0.024703982984647155, + "scico/test/functional/test_core.py::TestBlockArrayEval::test_eval[complex128-L0Norm]": 0.027171800029464066, + "scico/test/functional/test_core.py::TestBlockArrayEval::test_eval[complex128-L1Norm]": 0.004989310982637107, + "scico/test/functional/test_core.py::TestBlockArrayEval::test_eval[complex128-L2BallIndicator]": 0.04021808604011312, + "scico/test/functional/test_core.py::TestBlockArrayEval::test_eval[complex128-L2Norm]": 0.005372268962673843, + "scico/test/functional/test_core.py::TestBlockArrayEval::test_eval[complex128-NonNegativeIndicator]": 0.0035860579228028655, + "scico/test/functional/test_core.py::TestBlockArrayEval::test_eval[complex128-SquaredL2Norm]": 0.005597234994638711, + "scico/test/functional/test_core.py::TestBlockArrayEval::test_eval[complex128-ZeroFunctional]": 0.003954462008550763, + "scico/test/functional/test_core.py::TestBlockArrayEval::test_eval[complex64-HuberNorm]": 0.022520361992064863, + "scico/test/functional/test_core.py::TestBlockArrayEval::test_eval[complex64-L0Norm]": 0.02591512305662036, + "scico/test/functional/test_core.py::TestBlockArrayEval::test_eval[complex64-L1Norm]": 0.004909160023089498, + "scico/test/functional/test_core.py::TestBlockArrayEval::test_eval[complex64-L2BallIndicator]": 0.03488656395347789, + "scico/test/functional/test_core.py::TestBlockArrayEval::test_eval[complex64-L2Norm]": 0.0054067340097390115, + "scico/test/functional/test_core.py::TestBlockArrayEval::test_eval[complex64-NonNegativeIndicator]": 0.0035508210421539843, + "scico/test/functional/test_core.py::TestBlockArrayEval::test_eval[complex64-SquaredL2Norm]": 0.0053312929812818766, + "scico/test/functional/test_core.py::TestBlockArrayEval::test_eval[complex64-ZeroFunctional]": 0.0037828999920748174, + "scico/test/functional/test_core.py::TestBlockArrayEval::test_eval[float32-HuberNorm]": 0.1564193979720585, + "scico/test/functional/test_core.py::TestBlockArrayEval::test_eval[float32-L0Norm]": 0.025119934929534793, + "scico/test/functional/test_core.py::TestBlockArrayEval::test_eval[float32-L1Norm]": 0.004514151019975543, + "scico/test/functional/test_core.py::TestBlockArrayEval::test_eval[float32-L2BallIndicator]": 0.04787783097708598, + "scico/test/functional/test_core.py::TestBlockArrayEval::test_eval[float32-L2Norm]": 0.0048001830000430346, + "scico/test/functional/test_core.py::TestBlockArrayEval::test_eval[float32-NonNegativeIndicator]": 0.11775164009304717, + "scico/test/functional/test_core.py::TestBlockArrayEval::test_eval[float32-SquaredL2Norm]": 0.005612363980617374, + "scico/test/functional/test_core.py::TestBlockArrayEval::test_eval[float32-ZeroFunctional]": 0.00399939896306023, + "scico/test/functional/test_core.py::TestBlockArrayEval::test_eval[float64-HuberNorm]": 0.3998878450365737, + "scico/test/functional/test_core.py::TestBlockArrayEval::test_eval[float64-L0Norm]": 0.02695505297742784, + "scico/test/functional/test_core.py::TestBlockArrayEval::test_eval[float64-L1Norm]": 0.004660013015381992, + "scico/test/functional/test_core.py::TestBlockArrayEval::test_eval[float64-L2BallIndicator]": 0.05832531105261296, + "scico/test/functional/test_core.py::TestBlockArrayEval::test_eval[float64-L2Norm]": 0.005127196025568992, + "scico/test/functional/test_core.py::TestBlockArrayEval::test_eval[float64-NonNegativeIndicator]": 0.09392893500626087, + "scico/test/functional/test_core.py::TestBlockArrayEval::test_eval[float64-SquaredL2Norm]": 0.005524211039301008, + "scico/test/functional/test_core.py::TestBlockArrayEval::test_eval[float64-ZeroFunctional]": 0.004533933009952307, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-0.01-HuberNormNonSep]": 0.0037115959567017853, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-0.01-HuberNormSep]": 0.003814404015429318, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-0.01-L0Norm]": 0.05728557502152398, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-0.01-L1Norm]": 0.004232968029100448, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-0.01-L21Norm]": 0.004360902996268123, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-0.01-L2Norm]": 0.0038213629741221666, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-0.01-NuclearNorm]": 0.0039938309928402305, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-0.01-SquaredL2Norm]": 0.0036868610186502337, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-0.01-ZeroFunctional]": 0.0038213650113902986, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-0.1-HuberNormNonSep]": 0.004062829946633428, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-0.1-HuberNormSep]": 0.004051066003739834, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-0.1-L0Norm]": 0.00382405798882246, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-0.1-L1Norm]": 0.0040080740582197905, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-0.1-L21Norm]": 0.005084327072836459, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-0.1-L2Norm]": 0.003819151024799794, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-0.1-NuclearNorm]": 0.0035901590017601848, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-0.1-SquaredL2Norm]": 0.003851112036500126, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-0.1-ZeroFunctional]": 0.003779124061111361, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-1.0-HuberNormNonSep]": 0.0037335550296120346, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-1.0-HuberNormSep]": 0.0037058440502732992, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-1.0-L0Norm]": 0.003946172015275806, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-1.0-L1Norm]": 0.003683588991407305, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-1.0-L21Norm]": 0.004981460107956082, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-1.0-L2Norm]": 0.003768790978938341, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-1.0-NuclearNorm]": 0.004242445982526988, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-1.0-SquaredL2Norm]": 0.0037088170065544546, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-1.0-ZeroFunctional]": 0.0037993339356034994, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-10.0-HuberNormNonSep]": 0.003789086011238396, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-10.0-HuberNormSep]": 0.003454604942817241, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-10.0-L0Norm]": 0.0033843510318547487, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-10.0-L1Norm]": 0.0036020110710524023, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-10.0-L21Norm]": 0.004128680913709104, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-10.0-L2Norm]": 0.0038038999773561954, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-10.0-NuclearNorm]": 0.0034912280971184373, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-10.0-SquaredL2Norm]": 0.003879523021169007, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex128-10.0-ZeroFunctional]": 0.0032140109105966985, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-0.01-HuberNormNonSep]": 0.0038989639724604785, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-0.01-HuberNormSep]": 0.003652030020020902, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-0.01-L0Norm]": 0.05693728500045836, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-0.01-L1Norm]": 0.004358830919954926, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-0.01-L21Norm]": 0.004336767073255032, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-0.01-L2Norm]": 0.0038580410182476044, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-0.01-NuclearNorm]": 0.004194544977508485, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-0.01-SquaredL2Norm]": 0.0035985499853268266, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-0.01-ZeroFunctional]": 0.0035427039838396013, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-0.1-HuberNormNonSep]": 0.003862760029733181, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-0.1-HuberNormSep]": 0.0037517150049097836, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-0.1-L0Norm]": 0.003938999958336353, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-0.1-L1Norm]": 0.0038432099972851574, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-0.1-L21Norm]": 0.004129640990868211, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-0.1-L2Norm]": 0.003502845938783139, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-0.1-NuclearNorm]": 0.0040354650700464845, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-0.1-SquaredL2Norm]": 0.0037244679988361895, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-0.1-ZeroFunctional]": 0.0035109090385958552, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-1.0-HuberNormNonSep]": 0.003545146028045565, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-1.0-HuberNormSep]": 0.0035461621009744704, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-1.0-L0Norm]": 0.003911104053258896, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-1.0-L1Norm]": 0.003828291897661984, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-1.0-L21Norm]": 0.0044971639290452, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-1.0-L2Norm]": 0.00359416997525841, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-1.0-NuclearNorm]": 0.0036203079507686198, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-1.0-SquaredL2Norm]": 0.003343324933666736, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-1.0-ZeroFunctional]": 0.0032800689805299044, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-10.0-HuberNormNonSep]": 0.0029224399477243423, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-10.0-HuberNormSep]": 0.0028420440503396094, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-10.0-L0Norm]": 0.003331976942718029, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-10.0-L1Norm]": 0.0033668779651634395, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-10.0-L21Norm]": 0.0035068769939243793, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-10.0-L2Norm]": 0.0031813969835639, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-10.0-NuclearNorm]": 0.003244991006795317, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-10.0-SquaredL2Norm]": 0.00304740498540923, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[complex64-10.0-ZeroFunctional]": 0.002994752023369074, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-0.01-HuberNormNonSep]": 0.003884678997565061, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-0.01-HuberNormSep]": 0.003705598006490618, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-0.01-L0Norm]": 0.023463914054445922, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-0.01-L1Norm]": 0.00532354402821511, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-0.01-L21Norm]": 0.004799739923328161, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-0.01-L2Norm]": 0.003876692964695394, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-0.01-NuclearNorm]": 0.0039461200358346105, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-0.01-SquaredL2Norm]": 0.004095500975381583, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-0.01-ZeroFunctional]": 0.0036564929760061204, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-0.1-HuberNormNonSep]": 0.004143932077568024, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-0.1-HuberNormSep]": 0.004075823992025107, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-0.1-L0Norm]": 0.0037997390027157962, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-0.1-L1Norm]": 0.004497805028222501, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-0.1-L21Norm]": 0.00485400902107358, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-0.1-L2Norm]": 0.0039024209836497903, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-0.1-NuclearNorm]": 0.004492016043514013, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-0.1-SquaredL2Norm]": 0.004153876972850412, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-0.1-ZeroFunctional]": 0.003707225958351046, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-1.0-HuberNormNonSep]": 0.003933870990294963, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-1.0-HuberNormSep]": 0.004010486998595297, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-1.0-L0Norm]": 0.0035478119971230626, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-1.0-L1Norm]": 0.004704325983766466, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-1.0-L21Norm]": 0.005540611920878291, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-1.0-L2Norm]": 0.004576022969558835, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-1.0-NuclearNorm]": 0.0036175219574943185, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-1.0-SquaredL2Norm]": 0.003796517034061253, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-1.0-ZeroFunctional]": 0.0035708470386452973, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-10.0-HuberNormNonSep]": 0.0036028839531354606, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-10.0-HuberNormSep]": 0.003009343985468149, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-10.0-L0Norm]": 0.0034427070058882236, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-10.0-L1Norm]": 0.0035893090534955263, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-10.0-L21Norm]": 0.003617602924350649, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-10.0-L2Norm]": 0.0035015210742130876, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-10.0-NuclearNorm]": 0.0035808960092253983, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-10.0-SquaredL2Norm]": 0.003411168057937175, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float32-10.0-ZeroFunctional]": 0.002893122029490769, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-0.01-HuberNormNonSep]": 0.003606339916586876, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-0.01-HuberNormSep]": 0.0034500079927966, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-0.01-L0Norm]": 0.024214525008574128, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-0.01-L1Norm]": 0.004241939983330667, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-0.01-L21Norm]": 0.004236993030644953, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-0.01-L2Norm]": 0.003557182033546269, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-0.01-NuclearNorm]": 0.0037468280061148107, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-0.01-SquaredL2Norm]": 0.003551752888597548, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-0.01-ZeroFunctional]": 0.003383939911145717, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-0.1-HuberNormNonSep]": 0.0034500209731049836, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-0.1-HuberNormSep]": 0.0035283199977129698, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-0.1-L0Norm]": 0.0034047780209220946, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-0.1-L1Norm]": 0.003540167002938688, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-0.1-L21Norm]": 0.004052927950397134, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-0.1-L2Norm]": 0.003616170084569603, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-0.1-NuclearNorm]": 0.0033989729126915336, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-0.1-SquaredL2Norm]": 0.003310950007289648, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-0.1-ZeroFunctional]": 0.0033264969824813306, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-1.0-HuberNormNonSep]": 0.0034474420244805515, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-1.0-HuberNormSep]": 0.003487474052235484, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-1.0-L0Norm]": 0.00324570998782292, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-1.0-L1Norm]": 0.003367358003742993, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-1.0-L21Norm]": 0.0041447210242040455, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-1.0-L2Norm]": 0.0037572539877146482, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-1.0-NuclearNorm]": 0.0034973009023815393, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-1.0-SquaredL2Norm]": 0.0034628220018930733, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-1.0-ZeroFunctional]": 0.003151808923576027, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-10.0-HuberNormNonSep]": 0.0031880640308372676, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-10.0-HuberNormSep]": 0.003427112998906523, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-10.0-L0Norm]": 0.00304561504162848, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-10.0-L1Norm]": 0.0038646639441139996, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-10.0-L21Norm]": 0.003968984994571656, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-10.0-L2Norm]": 0.003463991975877434, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-10.0-NuclearNorm]": 0.002899987972341478, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-10.0-SquaredL2Norm]": 0.0032979859970510006, + "scico/test/functional/test_core.py::TestNormProx::test_conj_prox[float64-10.0-ZeroFunctional]": 0.003142061934340745, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-0.01-HuberNormNonSep]": 0.17798875394510105, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-0.01-HuberNormSep]": 0.16884426301112399, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-0.01-L0Norm]": 1.1074463280383497, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-0.01-L1Norm]": 0.19397699501132593, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-0.01-L21Norm]": 0.20140965800965205, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-0.01-L2Norm]": 0.18192596099106595, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-0.01-NuclearNorm]": 0.22761898208409548, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-0.01-SquaredL2Norm]": 0.17260237701702863, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-0.01-ZeroFunctional]": 0.13384882098762318, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-0.1-HuberNormNonSep]": 0.18597777601098642, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-0.1-HuberNormSep]": 0.15831126598641276, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-0.1-L0Norm]": 0.15075306093785912, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-0.1-L1Norm]": 0.14317667396971956, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-0.1-L21Norm]": 0.14912075299071148, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-0.1-L2Norm]": 0.15234803699422628, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-0.1-NuclearNorm]": 0.1614803049596958, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-0.1-SquaredL2Norm]": 0.1477693420019932, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-0.1-ZeroFunctional]": 0.13916719099506736, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-1.0-HuberNormNonSep]": 0.17975364602170885, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-1.0-HuberNormSep]": 0.16405739507172257, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-1.0-L0Norm]": 0.8719758229563013, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-1.0-L1Norm]": 0.15040353999938816, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-1.0-L21Norm]": 0.15710185503121465, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-1.0-L2Norm]": 0.15465562202734873, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-1.0-NuclearNorm]": 0.15967780898790807, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-1.0-SquaredL2Norm]": 0.1419292910140939, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-1.0-ZeroFunctional]": 0.13763978792121634, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-10.0-HuberNormNonSep]": 0.17326397896977141, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-10.0-HuberNormSep]": 0.151776218903251, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-10.0-L0Norm]": 0.8679978139698505, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-10.0-L1Norm]": 0.1519264200469479, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-10.0-L21Norm]": 0.1488999780267477, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-10.0-L2Norm]": 0.16153832204872742, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-10.0-NuclearNorm]": 0.16015541303204373, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-10.0-SquaredL2Norm]": 0.14417474396759644, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex128-10.0-ZeroFunctional]": 0.13928985799429938, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-0.01-HuberNormNonSep]": 0.16427901794668287, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-0.01-HuberNormSep]": 0.15014536201488227, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-0.01-L0Norm]": 0.5899919439689256, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-0.01-L1Norm]": 0.18381281202891842, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-0.01-L21Norm]": 0.19275447097606957, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-0.01-L2Norm]": 0.1770567069761455, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-0.01-NuclearNorm]": 0.2132192689459771, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-0.01-SquaredL2Norm]": 0.14840726897818968, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-0.01-ZeroFunctional]": 0.14813992398558185, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-0.1-HuberNormNonSep]": 0.1508193319896236, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-0.1-HuberNormSep]": 0.13766008097445592, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-0.1-L0Norm]": 0.15494958794442937, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-0.1-L1Norm]": 0.12111665797419846, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-0.1-L21Norm]": 0.1376911629922688, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-0.1-L2Norm]": 0.12786094000330195, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-0.1-NuclearNorm]": 0.13349295704392716, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-0.1-SquaredL2Norm]": 0.11785903293639421, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-0.1-ZeroFunctional]": 0.13935491908341646, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-1.0-HuberNormNonSep]": 0.14667953900061548, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-1.0-HuberNormSep]": 0.12133046600501984, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-1.0-L0Norm]": 0.16795101400930434, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-1.0-L1Norm]": 0.10600902291480452, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-1.0-L21Norm]": 0.11698666401207447, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-1.0-L2Norm]": 0.11632928799372166, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-1.0-NuclearNorm]": 0.12461763498140499, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-1.0-SquaredL2Norm]": 0.10890701494645327, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-1.0-ZeroFunctional]": 0.1394421790027991, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-10.0-HuberNormNonSep]": 0.13319709105417132, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-10.0-HuberNormSep]": 0.11530285602202639, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-10.0-L0Norm]": 0.168069023930002, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-10.0-L1Norm]": 0.15994105901336297, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-10.0-L21Norm]": 0.16365765494992957, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-10.0-L2Norm]": 0.15819954796461388, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-10.0-NuclearNorm]": 0.1681424550479278, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-10.0-SquaredL2Norm]": 0.10207018500659615, + "scico/test/functional/test_core.py::TestNormProx::test_prox[complex64-10.0-ZeroFunctional]": 0.14402488997438923, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-0.01-HuberNormNonSep]": 0.13398194999899715, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-0.01-HuberNormSep]": 0.18372804502723739, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-0.01-L0Norm]": 0.4113820130005479, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-0.01-L1Norm]": 0.19024297496071085, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-0.01-L21Norm]": 0.30938746698666364, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-0.01-L2Norm]": 0.16481495695188642, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-0.01-NuclearNorm]": 0.19199975399533287, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-0.01-SquaredL2Norm]": 0.10257723700487986, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-0.01-ZeroFunctional]": 0.09003642096649855, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-0.1-HuberNormNonSep]": 0.11568112700479105, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-0.1-HuberNormSep]": 0.09544004302006215, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-0.1-L0Norm]": 0.11100447701755911, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-0.1-L1Norm]": 0.07954697200329974, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-0.1-L21Norm]": 0.08633946592453867, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-0.1-L2Norm]": 0.09726672997931018, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-0.1-NuclearNorm]": 0.09059107396751642, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-0.1-SquaredL2Norm]": 0.08604431297862902, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-0.1-ZeroFunctional]": 0.09215703496010974, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-1.0-HuberNormNonSep]": 0.10938183398684487, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-1.0-HuberNormSep]": 0.08737706410465762, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-1.0-L0Norm]": 0.1110866490053013, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-1.0-L1Norm]": 0.07872023404343054, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-1.0-L21Norm]": 0.08433943195268512, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-1.0-L2Norm]": 0.08232743397820741, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-1.0-NuclearNorm]": 0.09049898706143722, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-1.0-SquaredL2Norm]": 0.07376217201817781, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-1.0-ZeroFunctional]": 0.09598771895980462, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-10.0-HuberNormNonSep]": 0.10385331802535802, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-10.0-HuberNormSep]": 0.0894267670228146, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-10.0-L0Norm]": 0.11721285502426326, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-10.0-L1Norm]": 0.09549426101148129, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-10.0-L21Norm]": 0.10683876002440229, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-10.0-L2Norm]": 0.10434627503855154, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-10.0-NuclearNorm]": 0.10520596295828, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-10.0-SquaredL2Norm]": 0.07379165705060586, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float32-10.0-ZeroFunctional]": 0.09232232201611623, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-0.01-HuberNormNonSep]": 0.1277272540028207, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-0.01-HuberNormSep]": 0.18858508398989215, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-0.01-L0Norm]": 0.5999618630157784, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-0.01-L1Norm]": 0.18869803403504193, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-0.01-L21Norm]": 0.29317131702555344, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-0.01-L2Norm]": 0.16651243204250932, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-0.01-NuclearNorm]": 0.19405877107055858, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-0.01-SquaredL2Norm]": 0.11788572196383029, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-0.01-ZeroFunctional]": 0.09903643204597756, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-0.1-HuberNormNonSep]": 0.1256192540167831, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-0.1-HuberNormSep]": 0.10527691204333678, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-0.1-L0Norm]": 0.11060618096962571, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-0.1-L1Norm]": 0.09553671407047659, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-0.1-L21Norm]": 0.10294375894591212, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-0.1-L2Norm]": 0.10243853396968916, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-0.1-NuclearNorm]": 0.10325306496815756, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-0.1-SquaredL2Norm]": 0.09813384508015588, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-0.1-ZeroFunctional]": 0.10075569996843114, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-1.0-HuberNormNonSep]": 0.12708310200832784, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-1.0-HuberNormSep]": 0.10430079099023715, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-1.0-L0Norm]": 0.5111459919717163, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-1.0-L1Norm]": 0.10620087903225794, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-1.0-L21Norm]": 0.10518693696940318, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-1.0-L2Norm]": 0.09647647995734587, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-1.0-NuclearNorm]": 0.10593171702930704, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-1.0-SquaredL2Norm]": 0.09445035603130236, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-1.0-ZeroFunctional]": 0.09939666400896385, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-10.0-HuberNormNonSep]": 0.12002767698140815, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-10.0-HuberNormSep]": 0.09925777197349817, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-10.0-L0Norm]": 0.5071461169864051, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-10.0-L1Norm]": 0.10022184101399034, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-10.0-L21Norm]": 0.09722821699688211, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-10.0-L2Norm]": 0.09739823400741443, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-10.0-NuclearNorm]": 0.10055788705358282, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-10.0-SquaredL2Norm]": 0.08917172200744972, + "scico/test/functional/test_core.py::TestNormProx::test_prox[float64-10.0-ZeroFunctional]": 0.09790434897877276, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex128-0.01-HuberNormNonSep]": 0.005199445004109293, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex128-0.01-HuberNormSep]": 0.05450549500528723, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex128-0.01-L0Norm]": 0.05981031100964174, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex128-0.01-L1Norm]": 0.23603961302433163, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex128-0.01-L2Norm]": 0.11523987702094018, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex128-0.01-SquaredL2Norm]": 0.06298675405560061, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex128-0.01-ZeroFunctional]": 0.005362104042433202, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex128-0.1-HuberNormNonSep]": 0.005001942976377904, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex128-0.1-HuberNormSep]": 0.00520395499188453, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex128-0.1-L0Norm]": 0.004296248022001237, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex128-0.1-L1Norm]": 0.004729989974293858, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex128-0.1-L2Norm]": 0.0057149899657815695, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex128-0.1-SquaredL2Norm]": 0.004410209017805755, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex128-0.1-ZeroFunctional]": 0.004464103025384247, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex128-1.0-HuberNormNonSep]": 0.004786924982909113, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex128-1.0-HuberNormSep]": 0.004314188030548394, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex128-1.0-L0Norm]": 0.0046022640890441835, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex128-1.0-L1Norm]": 0.004676976066548377, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex128-1.0-L2Norm]": 0.005161006993148476, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex128-1.0-SquaredL2Norm]": 0.004345182969700545, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex128-1.0-ZeroFunctional]": 0.0042836430366151035, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex128-10.0-HuberNormNonSep]": 0.005656059016473591, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex128-10.0-HuberNormSep]": 0.004583636997267604, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex128-10.0-L0Norm]": 0.004982594924513251, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex128-10.0-L1Norm]": 0.004708731023129076, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex128-10.0-L2Norm]": 0.004968060937244445, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex128-10.0-SquaredL2Norm]": 0.0044809700339101255, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex128-10.0-ZeroFunctional]": 0.004059601982589811, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex64-0.01-HuberNormNonSep]": 0.0053437669412232935, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex64-0.01-HuberNormSep]": 0.050479800906032324, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex64-0.01-L0Norm]": 0.06041823804844171, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex64-0.01-L1Norm]": 0.23186376091325656, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex64-0.01-L2Norm]": 0.12042545393342152, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex64-0.01-SquaredL2Norm]": 0.06477418588474393, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex64-0.01-ZeroFunctional]": 0.004849111021030694, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex64-0.1-HuberNormNonSep]": 0.005319547955878079, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex64-0.1-HuberNormSep]": 0.004983630962669849, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex64-0.1-L0Norm]": 0.004960836959071457, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex64-0.1-L1Norm]": 0.005131659039761871, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex64-0.1-L2Norm]": 0.005337959039025009, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex64-0.1-SquaredL2Norm]": 0.004534346051514149, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex64-0.1-ZeroFunctional]": 0.005088919948320836, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex64-1.0-HuberNormNonSep]": 0.004888887982815504, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex64-1.0-HuberNormSep]": 0.004360666964203119, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex64-1.0-L0Norm]": 0.004499757022131234, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex64-1.0-L1Norm]": 0.005485052999574691, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex64-1.0-L2Norm]": 0.005425270006526262, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex64-1.0-SquaredL2Norm]": 0.004830912977922708, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex64-1.0-ZeroFunctional]": 0.0041318280273117125, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex64-10.0-HuberNormNonSep]": 0.0051341470098122954, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex64-10.0-HuberNormSep]": 0.004749460960738361, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex64-10.0-L0Norm]": 0.004254653875250369, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex64-10.0-L1Norm]": 0.004764984885696322, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex64-10.0-L2Norm]": 0.005614663939923048, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex64-10.0-SquaredL2Norm]": 0.004248037992510945, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[complex64-10.0-ZeroFunctional]": 0.004532235965598375, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float32-0.01-HuberNormNonSep]": 0.0052776330267079175, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float32-0.01-HuberNormSep]": 0.1764533540699631, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float32-0.01-L0Norm]": 0.0845982400351204, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float32-0.01-L1Norm]": 0.2472766719874926, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float32-0.01-L2Norm]": 0.11147166899172589, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float32-0.01-SquaredL2Norm]": 0.04977720801252872, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float32-0.01-ZeroFunctional]": 0.00571218499680981, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float32-0.1-HuberNormNonSep]": 0.005607824015896767, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float32-0.1-HuberNormSep]": 0.0046818500268273056, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float32-0.1-L0Norm]": 0.004613497061654925, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float32-0.1-L1Norm]": 0.005430156015790999, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float32-0.1-L2Norm]": 0.006305731076281518, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float32-0.1-SquaredL2Norm]": 0.004749765037558973, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float32-0.1-ZeroFunctional]": 0.00473412498831749, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float32-1.0-HuberNormNonSep]": 0.005426648946013302, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float32-1.0-HuberNormSep]": 0.004561254987493157, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float32-1.0-L0Norm]": 0.004349750990513712, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float32-1.0-L1Norm]": 0.004838504013605416, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float32-1.0-L2Norm]": 0.005126598000060767, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float32-1.0-SquaredL2Norm]": 0.005734042031690478, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float32-1.0-ZeroFunctional]": 0.004180312971584499, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float32-10.0-HuberNormNonSep]": 0.004808652040082961, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float32-10.0-HuberNormSep]": 0.004306997987441719, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float32-10.0-L0Norm]": 0.004067978006787598, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float32-10.0-L1Norm]": 0.004728377040009946, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float32-10.0-L2Norm]": 0.004935037984978408, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float32-10.0-SquaredL2Norm]": 0.004261304042302072, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float32-10.0-ZeroFunctional]": 0.003967675904277712, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float64-0.01-HuberNormNonSep]": 0.005094944965094328, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float64-0.01-HuberNormSep]": 0.14464101096382365, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float64-0.01-L0Norm]": 0.06274264102103189, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float64-0.01-L1Norm]": 0.23876902897609398, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float64-0.01-L2Norm]": 0.10999870003433898, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float64-0.01-SquaredL2Norm]": 0.04841071198461577, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float64-0.01-ZeroFunctional]": 0.0046904649352654815, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float64-0.1-HuberNormNonSep]": 0.00483119796263054, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float64-0.1-HuberNormSep]": 0.004647306981496513, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float64-0.1-L0Norm]": 0.00442147406283766, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float64-0.1-L1Norm]": 0.004589416028466076, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float64-0.1-L2Norm]": 0.004930221009999514, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float64-0.1-SquaredL2Norm]": 0.00434645899804309, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float64-0.1-ZeroFunctional]": 0.004260282032191753, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float64-1.0-HuberNormNonSep]": 0.005238096055109054, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float64-1.0-HuberNormSep]": 0.005319995922036469, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float64-1.0-L0Norm]": 0.0042190030217170715, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float64-1.0-L1Norm]": 0.0049547579837962985, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float64-1.0-L2Norm]": 0.005172673030756414, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float64-1.0-SquaredL2Norm]": 0.00418897601775825, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float64-1.0-ZeroFunctional]": 0.0045848729787394404, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float64-10.0-HuberNormNonSep]": 0.004854972998145968, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float64-10.0-HuberNormSep]": 0.004228237958159298, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float64-10.0-L0Norm]": 0.00410291098523885, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float64-10.0-L1Norm]": 0.004708012973424047, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float64-10.0-L2Norm]": 0.004949012014549226, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float64-10.0-SquaredL2Norm]": 0.0042686311062425375, + "scico/test/functional/test_core.py::TestNormProx::test_prox_blockarray[float64-10.0-ZeroFunctional]": 0.00394715293077752, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[complex128-HuberNormNonSep]": 0.1878977440064773, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[complex128-HuberNormSep]": 0.16973987099481747, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[complex128-L0Norm]": 1.188909962947946, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[complex128-L1Norm]": 0.14731175295310095, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[complex128-L21Norm]": 0.2319680560613051, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[complex128-L2Norm]": 0.23078910302137956, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[complex128-NuclearNorm]": 0.25108236994128674, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[complex128-SquaredL2Norm]": 0.14285828702850267, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[complex128-ZeroFunctional]": 0.13951174594694749, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[complex64-HuberNormNonSep]": 0.2037746169953607, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[complex64-HuberNormSep]": 0.17883026803610846, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[complex64-L0Norm]": 0.34861694800201803, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[complex64-L1Norm]": 0.15538546803873032, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[complex64-L21Norm]": 0.2055066489847377, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[complex64-L2Norm]": 0.1859375670319423, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[complex64-NuclearNorm]": 0.2574613720062189, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[complex64-SquaredL2Norm]": 0.15696444496279582, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[complex64-ZeroFunctional]": 0.13501486700261012, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[float32-HuberNormNonSep]": 0.12417630007257685, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[float32-HuberNormSep]": 0.13707700103987008, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[float32-L0Norm]": 0.21745120210107416, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[float32-L1Norm]": 0.09788869193289429, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[float32-L21Norm]": 0.28501154598779976, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[float32-L2Norm]": 0.13475089095300063, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[float32-NuclearNorm]": 0.24067469302099198, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[float32-SquaredL2Norm]": 0.0961676980368793, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[float32-ZeroFunctional]": 0.0936400830396451, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[float64-HuberNormNonSep]": 0.11964898102451116, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[float64-HuberNormSep]": 0.13967853697249666, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[float64-L0Norm]": 0.7042864109389484, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[float64-L1Norm]": 0.10468037199461833, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[float64-L21Norm]": 0.29794599598972127, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[float64-L2Norm]": 0.13579044298967347, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[float64-NuclearNorm]": 0.23351768910652027, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[float64-SquaredL2Norm]": 0.09590757795376703, + "scico/test/functional/test_core.py::TestNormProx::test_prox_zeros[float64-ZeroFunctional]": 0.09168420202331617, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[complex128-HuberNormNonSep]": 0.0031321930000558496, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[complex128-HuberNormSep]": 0.002992813941091299, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[complex128-L0Norm]": 0.002601118991151452, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[complex128-L1Norm]": 0.0026559220859780908, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[complex128-L21Norm]": 0.0030737880151718855, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[complex128-L2Norm]": 0.0030547960777767003, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[complex128-NuclearNorm]": 0.0026819840422831476, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[complex128-SquaredL2Norm]": 0.0026986940065398812, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[complex128-ZeroFunctional]": 0.002606338995974511, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[complex64-HuberNormNonSep]": 0.0026064820121973753, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[complex64-HuberNormSep]": 0.0028934211004525423, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[complex64-L0Norm]": 0.002639501995872706, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[complex64-L1Norm]": 0.0026558690005913377, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[complex64-L21Norm]": 0.003026133985258639, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[complex64-L2Norm]": 0.002830431971233338, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[complex64-NuclearNorm]": 0.002896404010243714, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[complex64-SquaredL2Norm]": 0.0027521029696799815, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[complex64-ZeroFunctional]": 0.0027135469717904925, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[float32-HuberNormNonSep]": 0.002819810004439205, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[float32-HuberNormSep]": 0.0026597590185701847, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[float32-L0Norm]": 0.0028957679751329124, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[float32-L1Norm]": 0.002577936975285411, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[float32-L21Norm]": 0.0027527259080670774, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[float32-L2Norm]": 0.0025685069849714637, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[float32-NuclearNorm]": 0.002597654005512595, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[float32-SquaredL2Norm]": 0.0026047209976240993, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[float32-ZeroFunctional]": 0.0025772899971343577, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[float64-HuberNormNonSep]": 0.0028259739628992975, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[float64-HuberNormSep]": 0.0027200779877603054, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[float64-L0Norm]": 0.0026895530172623694, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[float64-L1Norm]": 0.0027499860152602196, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[float64-L21Norm]": 0.0029906388954259455, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[float64-L2Norm]": 0.0028817449929192662, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[float64-NuclearNorm]": 0.002573909005150199, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[float64-SquaredL2Norm]": 0.002564410970080644, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_attrs[float64-ZeroFunctional]": 0.0028790130163542926, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-0.01-HuberNormNonSep]": 0.04576332896249369, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-0.01-HuberNormSep]": 0.0049456009874120355, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-0.01-L0Norm]": 0.0037170890136621892, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-0.01-L1Norm]": 0.0037903429474681616, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-0.01-L21Norm]": 0.004449354950338602, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-0.01-L2Norm]": 0.003886555030476302, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-0.01-NuclearNorm]": 0.003910541068762541, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-0.01-SquaredL2Norm]": 0.00428486499004066, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-0.01-ZeroFunctional]": 0.003294351976364851, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-0.1-HuberNormNonSep]": 0.04334297793684527, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-0.1-HuberNormSep]": 0.004036091035231948, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-0.1-L0Norm]": 0.003841230005491525, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-0.1-L1Norm]": 0.0036130319931544363, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-0.1-L21Norm]": 0.004153854970354587, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-0.1-L2Norm]": 0.0035995899816043675, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-0.1-NuclearNorm]": 0.0039565470069646835, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-0.1-SquaredL2Norm]": 0.0039281079662032425, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-0.1-ZeroFunctional]": 0.003371035971213132, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-1.0-HuberNormNonSep]": 0.04491226695245132, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-1.0-HuberNormSep]": 0.0047032489674165845, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-1.0-L0Norm]": 0.0034406630438752472, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-1.0-L1Norm]": 0.003746849892195314, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-1.0-L21Norm]": 0.004031599033623934, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-1.0-L2Norm]": 0.003484891029074788, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-1.0-NuclearNorm]": 0.0038865130627527833, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-1.0-SquaredL2Norm]": 0.004086942004505545, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-1.0-ZeroFunctional]": 0.0032664720783941448, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-10.0-HuberNormNonSep]": 0.044409367023035884, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-10.0-HuberNormSep]": 0.004130910034291446, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-10.0-L0Norm]": 0.003500541963148862, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-10.0-L1Norm]": 0.003626717021688819, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-10.0-L21Norm]": 0.004006874980404973, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-10.0-L2Norm]": 0.0035969929886050522, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-10.0-NuclearNorm]": 0.004009609983768314, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-10.0-SquaredL2Norm]": 0.00395938305882737, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex128-10.0-ZeroFunctional]": 0.0034044109052047133, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-0.01-HuberNormNonSep]": 0.04585237498395145, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-0.01-HuberNormSep]": 0.004286084964405745, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-0.01-L0Norm]": 0.003449896990787238, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-0.01-L1Norm]": 0.003665880940388888, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-0.01-L21Norm]": 0.0042798169888556, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-0.01-L2Norm]": 0.0035194709780626, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-0.01-NuclearNorm]": 0.003945921082049608, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-0.01-SquaredL2Norm]": 0.00409309403039515, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-0.01-ZeroFunctional]": 0.003337285073939711, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-0.1-HuberNormNonSep]": 0.04406689398456365, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-0.1-HuberNormSep]": 0.004458345065359026, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-0.1-L0Norm]": 0.00365755392704159, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-0.1-L1Norm]": 0.003703491995111108, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-0.1-L21Norm]": 0.004106832027900964, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-0.1-L2Norm]": 0.003448042960371822, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-0.1-NuclearNorm]": 0.003995119943283498, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-0.1-SquaredL2Norm]": 0.003844482998829335, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-0.1-ZeroFunctional]": 0.003338684036862105, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-1.0-HuberNormNonSep]": 0.04461215197807178, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-1.0-HuberNormSep]": 0.0042670200346037745, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-1.0-L0Norm]": 0.003694478014949709, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-1.0-L1Norm]": 0.003691410005558282, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-1.0-L21Norm]": 0.004053021955769509, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-1.0-L2Norm]": 0.0036654340219683945, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-1.0-NuclearNorm]": 0.004218905989546329, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-1.0-SquaredL2Norm]": 0.004048229951877147, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-1.0-ZeroFunctional]": 0.0034201639937236905, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-10.0-HuberNormNonSep]": 0.044541852024849504, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-10.0-HuberNormSep]": 0.003953260078560561, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-10.0-L0Norm]": 0.0036697309697046876, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-10.0-L1Norm]": 0.0037592010339722037, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-10.0-L21Norm]": 0.00390956096816808, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-10.0-L2Norm]": 0.0034142560325562954, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-10.0-NuclearNorm]": 0.004203062038868666, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-10.0-SquaredL2Norm]": 0.003981141024269164, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[complex64-10.0-ZeroFunctional]": 0.0034859480801969767, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-0.01-HuberNormNonSep]": 0.04663301503751427, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-0.01-HuberNormSep]": 0.004046252055559307, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-0.01-L0Norm]": 0.016682818008121103, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-0.01-L1Norm]": 0.003942502022255212, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-0.01-L21Norm]": 0.0038961019017733634, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-0.01-L2Norm]": 0.003470606927294284, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-0.01-NuclearNorm]": 0.004098891047760844, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-0.01-SquaredL2Norm]": 0.004158373980317265, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-0.01-ZeroFunctional]": 0.0033410839387215674, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-0.1-HuberNormNonSep]": 0.043356280017178506, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-0.1-HuberNormSep]": 0.003979260043706745, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-0.1-L0Norm]": 0.0035042600356973708, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-0.1-L1Norm]": 0.0036630569375120103, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-0.1-L21Norm]": 0.004067688016220927, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-0.1-L2Norm]": 0.0034604970715008676, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-0.1-NuclearNorm]": 0.00380917196162045, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-0.1-SquaredL2Norm]": 0.004183971090242267, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-0.1-ZeroFunctional]": 0.0034701719996519387, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-1.0-HuberNormNonSep]": 0.044242915988434106, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-1.0-HuberNormSep]": 0.004397339012939483, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-1.0-L0Norm]": 0.0035232930094935, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-1.0-L1Norm]": 0.0036878500250168145, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-1.0-L21Norm]": 0.004086834960617125, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-1.0-L2Norm]": 0.0038968310109339654, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-1.0-NuclearNorm]": 0.0039250500267371535, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-1.0-SquaredL2Norm]": 0.0040122189675457776, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-1.0-ZeroFunctional]": 0.00324839394306764, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-10.0-HuberNormNonSep]": 0.04547858698060736, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-10.0-HuberNormSep]": 0.004056945035699755, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-10.0-L0Norm]": 0.005301842000335455, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-10.0-L1Norm]": 0.003944703959859908, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-10.0-L21Norm]": 0.00527035299455747, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-10.0-L2Norm]": 0.004144359962083399, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-10.0-NuclearNorm]": 0.003858672920614481, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-10.0-SquaredL2Norm]": 0.0042410080204717815, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float32-10.0-ZeroFunctional]": 0.003320154908578843, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-0.01-HuberNormNonSep]": 0.045469066011719406, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-0.01-HuberNormSep]": 0.004595257923938334, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-0.01-L0Norm]": 0.003642979951109737, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-0.01-L1Norm]": 0.0037862660246901214, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-0.01-L21Norm]": 0.004208922968246043, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-0.01-L2Norm]": 0.003907280042767525, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-0.01-NuclearNorm]": 0.003915868990588933, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-0.01-SquaredL2Norm]": 0.0040869530639611185, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-0.01-ZeroFunctional]": 0.0033278970513492823, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-0.1-HuberNormNonSep]": 0.04292933701071888, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-0.1-HuberNormSep]": 0.003908907994627953, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-0.1-L0Norm]": 0.003509667993057519, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-0.1-L1Norm]": 0.0038244040333665907, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-0.1-L21Norm]": 0.0038859329652041197, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-0.1-L2Norm]": 0.0036333499592728913, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-0.1-NuclearNorm]": 0.0038431750726886094, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-0.1-SquaredL2Norm]": 0.004232705046888441, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-0.1-ZeroFunctional]": 0.003325251047499478, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-1.0-HuberNormNonSep]": 0.04927115701138973, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-1.0-HuberNormSep]": 0.004355155979283154, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-1.0-L0Norm]": 0.0034594900207594037, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-1.0-L1Norm]": 0.003596460970584303, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-1.0-L21Norm]": 0.0053335370030254126, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-1.0-L2Norm]": 0.0035031510051339865, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-1.0-NuclearNorm]": 0.0038806350785307586, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-1.0-SquaredL2Norm]": 0.0038611580966971815, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-1.0-ZeroFunctional]": 0.0035599840339273214, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-10.0-HuberNormNonSep]": 0.044464163947850466, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-10.0-HuberNormSep]": 0.004031807009596378, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-10.0-L0Norm]": 0.0037266690633259714, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-10.0-L1Norm]": 0.0037390610086731613, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-10.0-L21Norm]": 0.003997781954240054, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-10.0-L2Norm]": 0.0036690059932880104, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-10.0-NuclearNorm]": 0.0041609340114519, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-10.0-SquaredL2Norm]": 0.003965644049458206, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_eval[float64-10.0-ZeroFunctional]": 0.0034393149544484913, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-0.01-HuberNormNonSep]": 0.003288307983893901, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-0.01-HuberNormSep]": 0.0033804140402935445, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-0.01-L0Norm]": 0.0033760740188881755, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-0.01-L1Norm]": 0.00350005499785766, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-0.01-L21Norm]": 0.004034388053696603, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-0.01-L2Norm]": 0.003622671007178724, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-0.01-NuclearNorm]": 0.0033789690351113677, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-0.01-SquaredL2Norm]": 0.00339049706235528, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-0.01-ZeroFunctional]": 0.0030123780015856028, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-0.1-HuberNormNonSep]": 0.003420066030230373, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-0.1-HuberNormSep]": 0.003552353009581566, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-0.1-L0Norm]": 0.0036174909910187125, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-0.1-L1Norm]": 0.003296144015621394, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-0.1-L21Norm]": 0.0038671729853376746, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-0.1-L2Norm]": 0.0031826809281483293, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-0.1-NuclearNorm]": 0.003572415967937559, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-0.1-SquaredL2Norm]": 0.003064483986236155, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-0.1-ZeroFunctional]": 0.00353357003768906, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-1.0-HuberNormNonSep]": 0.0037753070355392992, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-1.0-HuberNormSep]": 0.0034263469860889018, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-1.0-L0Norm]": 0.003464751993305981, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-1.0-L1Norm]": 0.0035104579874314368, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-1.0-L21Norm]": 0.004050935967825353, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-1.0-L2Norm]": 0.0035483300453051925, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-1.0-NuclearNorm]": 0.003884667996317148, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-1.0-SquaredL2Norm]": 0.003859431075397879, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-1.0-ZeroFunctional]": 0.003407031064853072, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-10.0-HuberNormNonSep]": 0.003636091947555542, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-10.0-HuberNormSep]": 0.0037177838967181742, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-10.0-L0Norm]": 0.003335730987600982, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-10.0-L1Norm]": 0.0036651159171015024, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-10.0-L21Norm]": 0.003963442926760763, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-10.0-L2Norm]": 0.0035299439914524555, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-10.0-NuclearNorm]": 0.0034847300266847014, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-10.0-SquaredL2Norm]": 0.003395145002286881, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex128-10.0-ZeroFunctional]": 0.003327437036205083, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-0.01-HuberNormNonSep]": 0.003133200982119888, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-0.01-HuberNormSep]": 0.003390566969756037, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-0.01-L0Norm]": 0.004480405943468213, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-0.01-L1Norm]": 0.0037628550198860466, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-0.01-L21Norm]": 0.004033248987980187, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-0.01-L2Norm]": 0.0037086979718878865, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-0.01-NuclearNorm]": 0.0030656729941256344, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-0.01-SquaredL2Norm]": 0.0033722849329933524, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-0.01-ZeroFunctional]": 0.0038564630085602403, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-0.1-HuberNormNonSep]": 0.0033757089404389262, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-0.1-HuberNormSep]": 0.003139676002319902, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-0.1-L0Norm]": 0.0035098230582661927, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-0.1-L1Norm]": 0.0035246069892309606, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-0.1-L21Norm]": 0.003474730998277664, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-0.1-L2Norm]": 0.003282332036178559, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-0.1-NuclearNorm]": 0.0035575450165197253, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-0.1-SquaredL2Norm]": 0.0031485739746131003, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-0.1-ZeroFunctional]": 0.003235918004065752, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-1.0-HuberNormNonSep]": 0.003447414026595652, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-1.0-HuberNormSep]": 0.0030618029413744807, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-1.0-L0Norm]": 0.0030896440148353577, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-1.0-L1Norm]": 0.0030961239826865494, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-1.0-L21Norm]": 0.003946218988858163, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-1.0-L2Norm]": 0.003195739001967013, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-1.0-NuclearNorm]": 0.0034003800828941166, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-1.0-SquaredL2Norm]": 0.002867977018468082, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-1.0-ZeroFunctional]": 0.0032112880144268274, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-10.0-HuberNormNonSep]": 0.003594034060370177, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-10.0-HuberNormSep]": 0.0034892429248429835, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-10.0-L0Norm]": 0.002990279986988753, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-10.0-L1Norm]": 0.003613492997828871, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-10.0-L21Norm]": 0.0046845279866829515, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-10.0-L2Norm]": 0.0035732740070670843, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-10.0-NuclearNorm]": 0.004941826977301389, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-10.0-SquaredL2Norm]": 0.0031776399700902402, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[complex64-10.0-ZeroFunctional]": 0.0038004580419510603, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-0.01-HuberNormNonSep]": 0.0037457150174304843, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-0.01-HuberNormSep]": 0.003877031966112554, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-0.01-L0Norm]": 0.0035684709437191486, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-0.01-L1Norm]": 0.003968116012401879, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-0.01-L21Norm]": 0.004350776958744973, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-0.01-L2Norm]": 0.003921037074178457, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-0.01-NuclearNorm]": 0.0036909360205754638, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-0.01-SquaredL2Norm]": 0.003825768071692437, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-0.01-ZeroFunctional]": 0.003282270976342261, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-0.1-HuberNormNonSep]": 0.0035628689802251756, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-0.1-HuberNormSep]": 0.0036125510814599693, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-0.1-L0Norm]": 0.0035036730114370584, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-0.1-L1Norm]": 0.0034683499834500253, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-0.1-L21Norm]": 0.0044304910115897655, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-0.1-L2Norm]": 0.003817241929937154, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-0.1-NuclearNorm]": 0.003559490025509149, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-0.1-SquaredL2Norm]": 0.0033239800250157714, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-0.1-ZeroFunctional]": 0.003278241027146578, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-1.0-HuberNormNonSep]": 0.0036128119099885225, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-1.0-HuberNormSep]": 0.004099411948118359, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-1.0-L0Norm]": 0.0032992129563353956, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-1.0-L1Norm]": 0.0035045789554715157, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-1.0-L21Norm]": 0.003980709996540099, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-1.0-L2Norm]": 0.00340614200104028, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-1.0-NuclearNorm]": 0.0037022739415988326, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-1.0-SquaredL2Norm]": 0.003786009969189763, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-1.0-ZeroFunctional]": 0.003430103010032326, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-10.0-HuberNormNonSep]": 0.0031075910083018243, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-10.0-HuberNormSep]": 0.0031221250537782907, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-10.0-L0Norm]": 0.0041865219827741385, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-10.0-L1Norm]": 0.002945508051197976, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-10.0-L21Norm]": 0.004311343072913587, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-10.0-L2Norm]": 0.0035994999343529344, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-10.0-NuclearNorm]": 0.003041299991309643, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-10.0-SquaredL2Norm]": 0.002756661968305707, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float32-10.0-ZeroFunctional]": 0.0027934869867749512, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-0.01-HuberNormNonSep]": 0.003476434969343245, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-0.01-HuberNormSep]": 0.003618611895944923, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-0.01-L0Norm]": 0.0036169590312056243, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-0.01-L1Norm]": 0.0064220959902741015, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-0.01-L21Norm]": 0.004345713008660823, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-0.01-L2Norm]": 0.0039641400799155235, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-0.01-NuclearNorm]": 0.0035627540200948715, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-0.01-SquaredL2Norm]": 0.005726155068259686, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-0.01-ZeroFunctional]": 0.003459134022705257, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-0.1-HuberNormNonSep]": 0.0038654310046695173, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-0.1-HuberNormSep]": 0.003652371058706194, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-0.1-L0Norm]": 0.003669183002784848, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-0.1-L1Norm]": 0.004426328057888895, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-0.1-L21Norm]": 0.004148360108956695, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-0.1-L2Norm]": 0.0064535929705016315, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-0.1-NuclearNorm]": 0.003578563977498561, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-0.1-SquaredL2Norm]": 0.006040161999408156, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-0.1-ZeroFunctional]": 0.0034126839600503445, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-1.0-HuberNormNonSep]": 0.003692523983772844, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-1.0-HuberNormSep]": 0.0033547740313224494, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-1.0-L0Norm]": 0.0035724269691854715, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-1.0-L1Norm]": 0.0037620789953507483, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-1.0-L21Norm]": 0.0040756239905022085, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-1.0-L2Norm]": 0.0038963209954090416, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-1.0-NuclearNorm]": 0.0035117490333504975, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-1.0-SquaredL2Norm]": 0.00337103201309219, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-1.0-ZeroFunctional]": 0.0033323969691991806, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-10.0-HuberNormNonSep]": 0.0035111430333927274, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-10.0-HuberNormSep]": 0.003586578939575702, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-10.0-L0Norm]": 0.003330618026666343, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-10.0-L1Norm]": 0.003327125043142587, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-10.0-L21Norm]": 0.004086871980689466, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-10.0-L2Norm]": 0.003566566971130669, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-10.0-NuclearNorm]": 0.003506082051899284, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-10.0-SquaredL2Norm]": 0.0034168270649388433, + "scico/test/functional/test_core.py::TestNormProx::test_scaled_prox[float64-10.0-ZeroFunctional]": 0.003218109020963311, + "scico/test/functional/test_core.py::TestProj::test_prox[complex128-L2BallIndicator]": 0.173476570926141, + "scico/test/functional/test_core.py::TestProj::test_prox[complex128-NonNegativeIndicator]": 0.02360112901078537, + "scico/test/functional/test_core.py::TestProj::test_prox[float64-L2BallIndicator]": 0.13709538301918656, + "scico/test/functional/test_core.py::TestProj::test_prox[float64-NonNegativeIndicator]": 0.20818313997006044, + "scico/test/functional/test_core.py::TestProj::test_prox_scale_invariance[complex128-L2BallIndicator]": 0.0028932290733791888, + "scico/test/functional/test_core.py::TestProj::test_prox_scale_invariance[complex128-NonNegativeIndicator]": 0.00282276701182127, + "scico/test/functional/test_core.py::TestProj::test_prox_scale_invariance[float64-L2BallIndicator]": 0.002840320987161249, + "scico/test/functional/test_core.py::TestProj::test_prox_scale_invariance[float64-NonNegativeIndicator]": 0.0031367390183731914, + "scico/test/functional/test_core.py::TestProj::test_setdistance[complex128-0.01-L2BallIndicator-SetDistance]": 0.1790058080223389, + "scico/test/functional/test_core.py::TestProj::test_setdistance[complex128-0.01-L2BallIndicator-SquaredSetDistance]": 0.17953767406288534, + "scico/test/functional/test_core.py::TestProj::test_setdistance[complex128-0.01-NonNegativeIndicator-SetDistance]": 0.003015788970515132, + "scico/test/functional/test_core.py::TestProj::test_setdistance[complex128-0.01-NonNegativeIndicator-SquaredSetDistance]": 0.0026268079527653754, + "scico/test/functional/test_core.py::TestProj::test_setdistance[complex128-0.1-L2BallIndicator-SetDistance]": 0.1788201199960895, + "scico/test/functional/test_core.py::TestProj::test_setdistance[complex128-0.1-L2BallIndicator-SquaredSetDistance]": 0.17853189201559871, + "scico/test/functional/test_core.py::TestProj::test_setdistance[complex128-0.1-NonNegativeIndicator-SetDistance]": 0.002949329966213554, + "scico/test/functional/test_core.py::TestProj::test_setdistance[complex128-0.1-NonNegativeIndicator-SquaredSetDistance]": 0.002783001051284373, + "scico/test/functional/test_core.py::TestProj::test_setdistance[complex128-1.0-L2BallIndicator-SetDistance]": 0.17921030201250687, + "scico/test/functional/test_core.py::TestProj::test_setdistance[complex128-1.0-L2BallIndicator-SquaredSetDistance]": 0.1805673079797998, + "scico/test/functional/test_core.py::TestProj::test_setdistance[complex128-1.0-NonNegativeIndicator-SetDistance]": 0.002836669038515538, + "scico/test/functional/test_core.py::TestProj::test_setdistance[complex128-1.0-NonNegativeIndicator-SquaredSetDistance]": 0.002699740929529071, + "scico/test/functional/test_core.py::TestProj::test_setdistance[complex128-10.0-L2BallIndicator-SetDistance]": 0.18934918701415882, + "scico/test/functional/test_core.py::TestProj::test_setdistance[complex128-10.0-L2BallIndicator-SquaredSetDistance]": 0.18607420905027539, + "scico/test/functional/test_core.py::TestProj::test_setdistance[complex128-10.0-NonNegativeIndicator-SetDistance]": 0.00278967700432986, + "scico/test/functional/test_core.py::TestProj::test_setdistance[complex128-10.0-NonNegativeIndicator-SquaredSetDistance]": 0.002599865954834968, + "scico/test/functional/test_core.py::TestProj::test_setdistance[float64-0.01-L2BallIndicator-SetDistance]": 0.11926221800968051, + "scico/test/functional/test_core.py::TestProj::test_setdistance[float64-0.01-L2BallIndicator-SquaredSetDistance]": 0.12138989102095366, + "scico/test/functional/test_core.py::TestProj::test_setdistance[float64-0.01-NonNegativeIndicator-SetDistance]": 0.14233005995629355, + "scico/test/functional/test_core.py::TestProj::test_setdistance[float64-0.01-NonNegativeIndicator-SquaredSetDistance]": 0.11596781201660633, + "scico/test/functional/test_core.py::TestProj::test_setdistance[float64-0.1-L2BallIndicator-SetDistance]": 0.11496983398683369, + "scico/test/functional/test_core.py::TestProj::test_setdistance[float64-0.1-L2BallIndicator-SquaredSetDistance]": 0.11542157601797953, + "scico/test/functional/test_core.py::TestProj::test_setdistance[float64-0.1-NonNegativeIndicator-SetDistance]": 0.11036610102746636, + "scico/test/functional/test_core.py::TestProj::test_setdistance[float64-0.1-NonNegativeIndicator-SquaredSetDistance]": 0.11136418097885326, + "scico/test/functional/test_core.py::TestProj::test_setdistance[float64-1.0-L2BallIndicator-SetDistance]": 0.11857679398963228, + "scico/test/functional/test_core.py::TestProj::test_setdistance[float64-1.0-L2BallIndicator-SquaredSetDistance]": 0.11236070701852441, + "scico/test/functional/test_core.py::TestProj::test_setdistance[float64-1.0-NonNegativeIndicator-SetDistance]": 0.09857894096057862, + "scico/test/functional/test_core.py::TestProj::test_setdistance[float64-1.0-NonNegativeIndicator-SquaredSetDistance]": 0.10772289597662166, + "scico/test/functional/test_core.py::TestProj::test_setdistance[float64-10.0-L2BallIndicator-SetDistance]": 0.12018571200314909, + "scico/test/functional/test_core.py::TestProj::test_setdistance[float64-10.0-L2BallIndicator-SquaredSetDistance]": 0.11904906504787505, + "scico/test/functional/test_core.py::TestProj::test_setdistance[float64-10.0-NonNegativeIndicator-SetDistance]": 0.11907841998618096, + "scico/test/functional/test_core.py::TestProj::test_setdistance[float64-10.0-NonNegativeIndicator-SquaredSetDistance]": 0.11274250503629446, + "scico/test/functional/test_core.py::test_separable_eval[complex128]": 0.5447523999027908, + "scico/test/functional/test_core.py::test_separable_eval[complex64]": 0.27192326000658795, + "scico/test/functional/test_core.py::test_separable_eval[float32]": 0.21993080503307283, + "scico/test/functional/test_core.py::test_separable_eval[float64]": 0.34401649492792785, + "scico/test/functional/test_core.py::test_separable_grad[complex128]": 0.15181831893278286, + "scico/test/functional/test_core.py::test_separable_grad[complex64]": 0.1373074009316042, + "scico/test/functional/test_core.py::test_separable_grad[float32]": 0.2529822419746779, + "scico/test/functional/test_core.py::test_separable_grad[float64]": 0.2593346140347421, + "scico/test/functional/test_core.py::test_separable_prox[complex128]": 0.08454260398866609, + "scico/test/functional/test_core.py::test_separable_prox[complex64]": 0.09114277397748083, + "scico/test/functional/test_core.py::test_separable_prox[float32]": 0.06380381307099015, + "scico/test/functional/test_core.py::test_separable_prox[float64]": 0.07970615709200501, + "scico/test/functional/test_denoiser_func.py::TestBM3D::test_gry": 0.8364224060205743, + "scico/test/functional/test_denoiser_func.py::TestBM3D::test_rgb": 2.3437711019068956, + "scico/test/functional/test_denoiser_func.py::TestBM4D::test": 4.370222578058019, + "scico/test/functional/test_denoiser_func.py::TestBlindDnCNN::test_mltchn": 0.2174358390038833, + "scico/test/functional/test_denoiser_func.py::TestBlindDnCNN::test_sngchn": 0.18955975398421288, + "scico/test/functional/test_denoiser_func.py::TestNonBlindDnCNN::test_mltchn": 0.21598589391214773, + "scico/test/functional/test_denoiser_func.py::TestNonBlindDnCNN::test_sngchn": 0.1809874470345676, + "scico/test/functional/test_loss.py::TestAbsLoss::test_properties[loss_tuple0]": 0.058508071990218014, + "scico/test/functional/test_loss.py::TestAbsLoss::test_properties[loss_tuple1]": 0.01229651301400736, + "scico/test/functional/test_loss.py::TestAbsLoss::test_prox[loss_tuple0]": 1.2442021449678577, + "scico/test/functional/test_loss.py::TestAbsLoss::test_prox[loss_tuple1]": 1.3469472459401004, + "scico/test/functional/test_loss.py::TestLoss::test_generic_exception": 0.005853236012626439, + "scico/test/functional/test_loss.py::TestLoss::test_generic_squared_l2": 0.24870325397932902, + "scico/test/functional/test_loss.py::TestLoss::test_poisson": 0.04984364699339494, + "scico/test/functional/test_loss.py::TestLoss::test_squared_l2": 0.23226376011734828, + "scico/test/functional/test_loss.py::TestLoss::test_weighted_squared_l2": 0.16091267293086275, + "scico/test/functional/test_loss.py::test_cubic_root": 1.046760441036895, + "scico/test/functional/test_misc.py::TestCheckAttrs::test_has_eval[BM3D]": 0.0006863370072096586, + "scico/test/functional/test_misc.py::TestCheckAttrs::test_has_eval[BM4D]": 0.0009689520229585469, + "scico/test/functional/test_misc.py::TestCheckAttrs::test_has_eval[DnCNN]": 0.0006150449626147747, + "scico/test/functional/test_misc.py::TestCheckAttrs::test_has_eval[HuberNorm]": 0.0006274289917200804, + "scico/test/functional/test_misc.py::TestCheckAttrs::test_has_eval[L0Norm]": 0.0006243280367925763, + "scico/test/functional/test_misc.py::TestCheckAttrs::test_has_eval[L1Norm]": 0.0006193590234033763, + "scico/test/functional/test_misc.py::TestCheckAttrs::test_has_eval[L21Norm]": 0.000593923032283783, + "scico/test/functional/test_misc.py::TestCheckAttrs::test_has_eval[L2BallIndicator]": 0.0006264999392442405, + "scico/test/functional/test_misc.py::TestCheckAttrs::test_has_eval[L2Norm]": 0.000649905065074563, + "scico/test/functional/test_misc.py::TestCheckAttrs::test_has_eval[NonNegativeIndicator]": 0.0005474200006574392, + "scico/test/functional/test_misc.py::TestCheckAttrs::test_has_eval[NuclearNorm]": 0.0006518599693663418, + "scico/test/functional/test_misc.py::TestCheckAttrs::test_has_eval[SetDistance]": 0.000774392974562943, + "scico/test/functional/test_misc.py::TestCheckAttrs::test_has_eval[SquaredL2Norm]": 0.000637125049252063, + "scico/test/functional/test_misc.py::TestCheckAttrs::test_has_eval[SquaredSetDistance]": 0.0006795119843445718, + "scico/test/functional/test_misc.py::TestCheckAttrs::test_has_eval[ZeroFunctional]": 0.0007400220492854714, + "scico/test/functional/test_misc.py::TestCheckAttrs::test_has_prox[BM3D]": 0.0005601170705631375, + "scico/test/functional/test_misc.py::TestCheckAttrs::test_has_prox[BM4D]": 0.0005911110201850533, + "scico/test/functional/test_misc.py::TestCheckAttrs::test_has_prox[DnCNN]": 0.0005985330208204687, + "scico/test/functional/test_misc.py::TestCheckAttrs::test_has_prox[HuberNorm]": 0.000618613965343684, + "scico/test/functional/test_misc.py::TestCheckAttrs::test_has_prox[L0Norm]": 0.0006122640334069729, + "scico/test/functional/test_misc.py::TestCheckAttrs::test_has_prox[L1Norm]": 0.0006319079548120499, + "scico/test/functional/test_misc.py::TestCheckAttrs::test_has_prox[L21Norm]": 0.0005890059983357787, + "scico/test/functional/test_misc.py::TestCheckAttrs::test_has_prox[L2BallIndicator]": 0.0006144188810139894, + "scico/test/functional/test_misc.py::TestCheckAttrs::test_has_prox[L2Norm]": 0.0006237819325178862, + "scico/test/functional/test_misc.py::TestCheckAttrs::test_has_prox[NonNegativeIndicator]": 0.0006112929549999535, + "scico/test/functional/test_misc.py::TestCheckAttrs::test_has_prox[NuclearNorm]": 0.0007311350200325251, + "scico/test/functional/test_misc.py::TestCheckAttrs::test_has_prox[SetDistance]": 0.0005892410408705473, + "scico/test/functional/test_misc.py::TestCheckAttrs::test_has_prox[SquaredL2Norm]": 0.0006278380169533193, + "scico/test/functional/test_misc.py::TestCheckAttrs::test_has_prox[SquaredSetDistance]": 0.0006020599976181984, + "scico/test/functional/test_misc.py::TestCheckAttrs::test_has_prox[ZeroFunctional]": 0.0006286759744398296, + "scico/test/functional/test_misc.py::test_functional_sum": 0.03924484795425087, + "scico/test/functional/test_misc.py::test_l21norm[0]": 0.2761928129475564, + "scico/test/functional/test_misc.py::test_l21norm[1]": 0.2562751970253885, + "scico/test/functional/test_misc.py::test_l21norm[axis2]": 0.18604698695708066, + "scico/test/functional/test_misc.py::test_scalar_pmap": 0.022971113037783653, + "scico/test/functional/test_misc.py::test_scalar_vmap": 0.0027807439328171313, + "scico/test/functional/test_separable.py::test_separable_eval[complex128]": 0.00399086601100862, + "scico/test/functional/test_separable.py::test_separable_eval[complex64]": 0.00405191705795005, + "scico/test/functional/test_separable.py::test_separable_eval[float32]": 0.004392820002976805, + "scico/test/functional/test_separable.py::test_separable_eval[float64]": 0.004095616051927209, + "scico/test/functional/test_separable.py::test_separable_grad[complex128]": 0.02555350202601403, + "scico/test/functional/test_separable.py::test_separable_grad[complex64]": 0.02636082301614806, + "scico/test/functional/test_separable.py::test_separable_grad[float32]": 0.02647034003166482, + "scico/test/functional/test_separable.py::test_separable_grad[float64]": 0.02666783594759181, + "scico/test/functional/test_separable.py::test_separable_prox[complex128]": 0.005220677005127072, + "scico/test/functional/test_separable.py::test_separable_prox[complex64]": 0.005246960965450853, + "scico/test/functional/test_separable.py::test_separable_prox[float32]": 0.005106324970256537, + "scico/test/functional/test_separable.py::test_separable_prox[float64]": 0.005039878946263343, + "scico/test/linop/test_abel.py::test_ATA[128-128]": 0.14691696094814688, + "scico/test/linop/test_abel.py::test_ATA[4-5]": 0.16860978509066626, + "scico/test/linop/test_abel.py::test_adjoint[128-128]": 0.16880373802268878, + "scico/test/linop/test_abel.py::test_adjoint[4-5]": 0.2923912050318904, + "scico/test/linop/test_abel.py::test_adjoint_grad[128-128]": 0.35537167597794905, + "scico/test/linop/test_abel.py::test_adjoint_grad[4-5]": 0.39507101190974936, + "scico/test/linop/test_abel.py::test_grad[128-128]": 0.37533874390646815, + "scico/test/linop/test_abel.py::test_grad[4-5]": 0.37697228201432154, + "scico/test/linop/test_abel.py::test_inverse[128-128]": 0.37706098408671096, + "scico/test/linop/test_abel.py::test_inverse[4-5]": 0.3662709879572503, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_add_sub[axes_shape_spec0-False]": 0.01383126201108098, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_add_sub[axes_shape_spec0-True]": 0.05189683201024309, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_add_sub[axes_shape_spec1-False]": 0.013731548038776964, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_add_sub[axes_shape_spec1-True]": 0.05493132403353229, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_add_sub[axes_shape_spec2-False]": 0.01462461199844256, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_add_sub[axes_shape_spec2-True]": 0.05623772996477783, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_add_sub[axes_shape_spec3-False]": 0.013603550964035094, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_add_sub[axes_shape_spec3-True]": 0.024574936949647963, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_add_sub[axes_shape_spec4-False]": 0.014029636047780514, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_add_sub[axes_shape_spec4-True]": 0.055325891997199506, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_add_sub[axes_shape_spec5-False]": 0.013481241068802774, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_add_sub[axes_shape_spec5-True]": 0.022094870975706726, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_adjoint[axes_shape_spec0-complex64-False]": 0.007514578057453036, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_adjoint[axes_shape_spec0-complex64-True]": 0.09287106292322278, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_adjoint[axes_shape_spec0-float32-False]": 0.03989052097313106, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_adjoint[axes_shape_spec0-float32-True]": 0.08794790203683078, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_adjoint[axes_shape_spec1-complex64-False]": 0.007077934977132827, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_adjoint[axes_shape_spec1-complex64-True]": 0.10986070201033726, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_adjoint[axes_shape_spec1-float32-False]": 0.044543835043441504, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_adjoint[axes_shape_spec1-float32-True]": 0.10082427703309804, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_adjoint[axes_shape_spec2-complex64-False]": 0.007427877048030496, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_adjoint[axes_shape_spec2-complex64-True]": 0.11330440198071301, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_adjoint[axes_shape_spec2-float32-False]": 0.05709932197351009, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_adjoint[axes_shape_spec2-float32-True]": 0.11230086296563968, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_adjoint[axes_shape_spec3-complex64-False]": 0.007365818019025028, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_adjoint[axes_shape_spec3-complex64-True]": 0.11649286799365655, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_adjoint[axes_shape_spec3-float32-False]": 0.048874700034502894, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_adjoint[axes_shape_spec3-float32-True]": 0.11269495898159221, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_adjoint[axes_shape_spec4-complex64-False]": 0.007247255998663604, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_adjoint[axes_shape_spec4-complex64-True]": 0.0816017430042848, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_adjoint[axes_shape_spec4-float32-False]": 0.026520081039052457, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_adjoint[axes_shape_spec4-float32-True]": 0.08056720613967627, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_adjoint[axes_shape_spec5-complex64-False]": 0.007329559011850506, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_adjoint[axes_shape_spec5-complex64-True]": 0.07114965503569692, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_adjoint[axes_shape_spec5-float32-False]": 0.008398827048949897, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_adjoint[axes_shape_spec5-float32-True]": 0.07397139398381114, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_center[1]": 0.3957883100374602, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_center[center1]": 0.07257820095401257, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_center[center2]": 0.13058260607067496, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_eval[axes_shape_spec0-complex64-False]": 0.007735925959423184, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_eval[axes_shape_spec0-complex64-True]": 0.38747427600901574, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_eval[axes_shape_spec0-float32-False]": 0.007387863006442785, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_eval[axes_shape_spec0-float32-True]": 0.3081939878757112, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_eval[axes_shape_spec1-complex64-False]": 0.008367138972971588, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_eval[axes_shape_spec1-complex64-True]": 0.40616726293228567, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_eval[axes_shape_spec1-float32-False]": 0.007829584996215999, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_eval[axes_shape_spec1-float32-True]": 0.329215049976483, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_eval[axes_shape_spec2-complex64-False]": 0.008672655967529863, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_eval[axes_shape_spec2-complex64-True]": 0.6373673920170404, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_eval[axes_shape_spec2-float32-False]": 0.00872553896624595, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_eval[axes_shape_spec2-float32-True]": 0.456789716030471, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_eval[axes_shape_spec3-complex64-False]": 0.020870493026450276, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_eval[axes_shape_spec3-complex64-True]": 0.35946393496124074, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_eval[axes_shape_spec3-float32-False]": 0.00843922805506736, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_eval[axes_shape_spec3-float32-True]": 0.3286993659567088, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_eval[axes_shape_spec4-complex64-False]": 0.008020995010156184, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_eval[axes_shape_spec4-complex64-True]": 0.32862574997125193, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_eval[axes_shape_spec4-float32-False]": 0.007850933005101979, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_eval[axes_shape_spec4-float32-True]": 0.24390574893914163, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_eval[axes_shape_spec5-complex64-False]": 0.007943454023916274, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_eval[axes_shape_spec5-complex64-True]": 0.052103194990195334, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_eval[axes_shape_spec5-float32-False]": 0.007786149042658508, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_eval[axes_shape_spec5-float32-True]": 0.07671769801527262, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[False-False-complex64-axes_shape_spec0]": 0.009916676965076476, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[False-False-complex64-axes_shape_spec1]": 0.010369802010245621, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[False-False-complex64-axes_shape_spec2]": 0.011103214928880334, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[False-False-complex64-axes_shape_spec3]": 0.010833408043254167, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[False-False-complex64-axes_shape_spec4]": 0.010457361990120262, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[False-False-complex64-axes_shape_spec5]": 0.010845662909559906, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[False-False-float32-axes_shape_spec0]": 0.010242944990750402, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[False-False-float32-axes_shape_spec1]": 0.011453895014710724, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[False-False-float32-axes_shape_spec2]": 0.012092733930330724, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[False-False-float32-axes_shape_spec3]": 0.011666465026792139, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[False-False-float32-axes_shape_spec4]": 0.010713757015764713, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[False-False-float32-axes_shape_spec5]": 0.010729449044447392, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[False-True-complex64-axes_shape_spec0]": 0.03658089099917561, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[False-True-complex64-axes_shape_spec1]": 0.03802499093580991, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[False-True-complex64-axes_shape_spec2]": 0.03877851698780432, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[False-True-complex64-axes_shape_spec3]": 0.03985715302405879, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[False-True-complex64-axes_shape_spec4]": 0.03884561505401507, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[False-True-complex64-axes_shape_spec5]": 0.03904795408016071, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[False-True-float32-axes_shape_spec0]": 0.04214514000341296, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[False-True-float32-axes_shape_spec1]": 0.0431240780162625, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[False-True-float32-axes_shape_spec2]": 0.04930344392778352, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[False-True-float32-axes_shape_spec3]": 0.04694676899816841, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[False-True-float32-axes_shape_spec4]": 0.04614627204136923, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[False-True-float32-axes_shape_spec5]": 0.050488929031416774, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[True-False-complex64-axes_shape_spec0]": 0.038099542958661914, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[True-False-complex64-axes_shape_spec1]": 0.03832432703347877, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[True-False-complex64-axes_shape_spec2]": 0.039362260955385864, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[True-False-complex64-axes_shape_spec3]": 0.04023551195859909, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[True-False-complex64-axes_shape_spec4]": 0.040426711027976125, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[True-False-complex64-axes_shape_spec5]": 0.03997776098549366, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[True-False-float32-axes_shape_spec0]": 0.04355256009148434, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[True-False-float32-axes_shape_spec1]": 0.04653088399209082, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[True-False-float32-axes_shape_spec2]": 0.04896184802055359, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[True-False-float32-axes_shape_spec3]": 0.048059476946946234, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[True-False-float32-axes_shape_spec4]": 0.04762955295154825, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[True-False-float32-axes_shape_spec5]": 0.05295814696000889, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[True-True-complex64-axes_shape_spec0]": 0.09073687595082447, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[True-True-complex64-axes_shape_spec1]": 0.08431907003978267, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[True-True-complex64-axes_shape_spec2]": 0.08839100698241964, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[True-True-complex64-axes_shape_spec3]": 0.10167553200153634, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[True-True-complex64-axes_shape_spec4]": 0.06871670798864216, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[True-True-complex64-axes_shape_spec5]": 0.06601683900225908, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[True-True-float32-axes_shape_spec0]": 0.12551000394159928, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[True-True-float32-axes_shape_spec1]": 0.1683969339937903, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[True-True-float32-axes_shape_spec2]": 0.18914935301290825, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[True-True-float32-axes_shape_spec3]": 0.13327616406604648, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[True-True-float32-axes_shape_spec4]": 0.08110305096488446, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator[True-True-float32-axes_shape_spec5]": 0.08444154605967924, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_from_operator_block_array": 0.043156409985385835, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_matches_convolve[False-complex64]": 0.009915533941239119, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_matches_convolve[False-float32]": 0.010473779984749854, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_matches_convolve[True-complex64]": 0.31861502898391336, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_matches_convolve[True-float32]": 0.6115591220441274, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_left[mul-axes_shape_spec0-False]": 0.00938275590306148, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_left[mul-axes_shape_spec0-True]": 0.030943938007112592, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_left[mul-axes_shape_spec1-False]": 0.008526111021637917, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_left[mul-axes_shape_spec1-True]": 0.046113170974422246, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_left[mul-axes_shape_spec2-False]": 0.008535778964869678, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_left[mul-axes_shape_spec2-True]": 0.047303021943662316, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_left[mul-axes_shape_spec3-False]": 0.008196758048143238, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_left[mul-axes_shape_spec3-True]": 0.012537577946204692, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_left[mul-axes_shape_spec4-False]": 0.008370023046154529, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_left[mul-axes_shape_spec4-True]": 0.05308323190547526, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_left[mul-axes_shape_spec5-False]": 0.00828721298603341, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_left[mul-axes_shape_spec5-True]": 0.012382257031276822, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_left[truediv-axes_shape_spec0-False]": 0.0078596769599244, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_left[truediv-axes_shape_spec0-True]": 0.03520367399323732, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_left[truediv-axes_shape_spec1-False]": 0.007947081991005689, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_left[truediv-axes_shape_spec1-True]": 0.053698192932642996, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_left[truediv-axes_shape_spec2-False]": 0.008610389952082187, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_left[truediv-axes_shape_spec2-True]": 0.053756668989080936, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_left[truediv-axes_shape_spec3-False]": 0.008173767011612654, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_left[truediv-axes_shape_spec3-True]": 0.012237500050105155, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_left[truediv-axes_shape_spec4-False]": 0.008679268939886242, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_left[truediv-axes_shape_spec4-True]": 0.05432865093462169, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_left[truediv-axes_shape_spec5-False]": 0.008645780035294592, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_left[truediv-axes_shape_spec5-True]": 0.012585873948410153, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_right[mul-axes_shape_spec0-False]": 0.009020129044074565, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_right[mul-axes_shape_spec0-True]": 0.030295974051114172, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_right[mul-axes_shape_spec1-False]": 0.008739151991903782, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_right[mul-axes_shape_spec1-True]": 0.02963573404122144, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_right[mul-axes_shape_spec2-False]": 0.008916754042729735, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_right[mul-axes_shape_spec2-True]": 0.031103324959985912, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_right[mul-axes_shape_spec3-False]": 0.00850664294557646, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_right[mul-axes_shape_spec3-True]": 0.015481463051401079, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_right[mul-axes_shape_spec4-False]": 0.008118292025756091, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_right[mul-axes_shape_spec4-True]": 0.028612537018489093, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_right[mul-axes_shape_spec5-False]": 0.00914490595459938, + "scico/test/linop/test_circconv.py::TestCircularConvolve::test_scalar_right[mul-axes_shape_spec5-True]": 0.012626214942429215, + "scico/test/linop/test_conversions.py::testCircularConvolve_from_FiniteDifference[False-False-complex64-shape_axes0]": 0.4974247339996509, + "scico/test/linop/test_conversions.py::testCircularConvolve_from_FiniteDifference[False-False-complex64-shape_axes1]": 0.988430093973875, + "scico/test/linop/test_conversions.py::testCircularConvolve_from_FiniteDifference[False-False-float32-shape_axes0]": 0.5122498330310918, + "scico/test/linop/test_conversions.py::testCircularConvolve_from_FiniteDifference[False-False-float32-shape_axes1]": 0.7894576590042561, + "scico/test/linop/test_conversions.py::testCircularConvolve_from_FiniteDifference[False-True-complex64-shape_axes0]": 0.1398676380631514, + "scico/test/linop/test_conversions.py::testCircularConvolve_from_FiniteDifference[False-True-complex64-shape_axes1]": 0.20397970406338573, + "scico/test/linop/test_conversions.py::testCircularConvolve_from_FiniteDifference[False-True-float32-shape_axes0]": 0.136155377025716, + "scico/test/linop/test_conversions.py::testCircularConvolve_from_FiniteDifference[False-True-float32-shape_axes1]": 0.19055036903591827, + "scico/test/linop/test_conversions.py::testCircularConvolve_from_FiniteDifference[True-False-complex64-shape_axes0]": 0.0871100629447028, + "scico/test/linop/test_conversions.py::testCircularConvolve_from_FiniteDifference[True-False-complex64-shape_axes1]": 0.09772680106107146, + "scico/test/linop/test_conversions.py::testCircularConvolve_from_FiniteDifference[True-False-float32-shape_axes0]": 0.10448986594565213, + "scico/test/linop/test_conversions.py::testCircularConvolve_from_FiniteDifference[True-False-float32-shape_axes1]": 0.12583643203834072, + "scico/test/linop/test_conversions.py::testCircularConvolve_from_FiniteDifference[True-True-complex64-shape_axes0]": 0.2074589260155335, + "scico/test/linop/test_conversions.py::testCircularConvolve_from_FiniteDifference[True-True-complex64-shape_axes1]": 0.2713403319939971, + "scico/test/linop/test_conversions.py::testCircularConvolve_from_FiniteDifference[True-True-float32-shape_axes0]": 0.2004479250172153, + "scico/test/linop/test_conversions.py::testCircularConvolve_from_FiniteDifference[True-True-float32-shape_axes1]": 0.25839147600345314, + "scico/test/linop/test_convolve.py::TestConvolve::test_adjoint[False-full-input_shape0-complex64]": 0.4377491179620847, + "scico/test/linop/test_convolve.py::TestConvolve::test_adjoint[False-full-input_shape0-float32]": 0.2746003789943643, + "scico/test/linop/test_convolve.py::TestConvolve::test_adjoint[False-full-input_shape1-complex64]": 0.4905146500095725, + "scico/test/linop/test_convolve.py::TestConvolve::test_adjoint[False-full-input_shape1-float32]": 0.28156782092992216, + "scico/test/linop/test_convolve.py::TestConvolve::test_adjoint[False-same-input_shape0-complex64]": 0.09512213798006997, + "scico/test/linop/test_convolve.py::TestConvolve::test_adjoint[False-same-input_shape0-float32]": 0.0736970619764179, + "scico/test/linop/test_convolve.py::TestConvolve::test_adjoint[False-same-input_shape1-complex64]": 0.10248205595416948, + "scico/test/linop/test_convolve.py::TestConvolve::test_adjoint[False-same-input_shape1-float32]": 0.08085303800180554, + "scico/test/linop/test_convolve.py::TestConvolve::test_adjoint[False-valid-input_shape0-complex64]": 0.3511388160404749, + "scico/test/linop/test_convolve.py::TestConvolve::test_adjoint[False-valid-input_shape0-float32]": 0.19495411502430215, + "scico/test/linop/test_convolve.py::TestConvolve::test_adjoint[False-valid-input_shape1-complex64]": 0.40167996496893466, + "scico/test/linop/test_convolve.py::TestConvolve::test_adjoint[False-valid-input_shape1-float32]": 0.23576741496799514, + "scico/test/linop/test_convolve.py::TestConvolve::test_adjoint[True-full-input_shape0-complex64]": 0.08877128199674189, + "scico/test/linop/test_convolve.py::TestConvolve::test_adjoint[True-full-input_shape0-float32]": 0.052576127054635435, + "scico/test/linop/test_convolve.py::TestConvolve::test_adjoint[True-full-input_shape1-complex64]": 0.09778871503658593, + "scico/test/linop/test_convolve.py::TestConvolve::test_adjoint[True-full-input_shape1-float32]": 0.057924679946154356, + "scico/test/linop/test_convolve.py::TestConvolve::test_adjoint[True-same-input_shape0-complex64]": 0.0851862650597468, + "scico/test/linop/test_convolve.py::TestConvolve::test_adjoint[True-same-input_shape0-float32]": 0.052336018008645624, + "scico/test/linop/test_convolve.py::TestConvolve::test_adjoint[True-same-input_shape1-complex64]": 0.0983896020334214, + "scico/test/linop/test_convolve.py::TestConvolve::test_adjoint[True-same-input_shape1-float32]": 0.058449269039556384, + "scico/test/linop/test_convolve.py::TestConvolve::test_adjoint[True-valid-input_shape0-complex64]": 0.0886483010253869, + "scico/test/linop/test_convolve.py::TestConvolve::test_adjoint[True-valid-input_shape0-float32]": 0.05553762003546581, + "scico/test/linop/test_convolve.py::TestConvolve::test_adjoint[True-valid-input_shape1-complex64]": 0.09874464198946953, + "scico/test/linop/test_convolve.py::TestConvolve::test_adjoint[True-valid-input_shape1-float32]": 0.05998817307408899, + "scico/test/linop/test_convolve.py::TestConvolve::test_eval[False-full-input_shape0-complex64]": 0.34442253498127684, + "scico/test/linop/test_convolve.py::TestConvolve::test_eval[False-full-input_shape0-float32]": 0.15921106695896015, + "scico/test/linop/test_convolve.py::TestConvolve::test_eval[False-full-input_shape1-complex64]": 0.32864885893650353, + "scico/test/linop/test_convolve.py::TestConvolve::test_eval[False-full-input_shape1-float32]": 0.19820859702304006, + "scico/test/linop/test_convolve.py::TestConvolve::test_eval[False-same-input_shape0-complex64]": 0.05872907699085772, + "scico/test/linop/test_convolve.py::TestConvolve::test_eval[False-same-input_shape0-float32]": 0.03899251890834421, + "scico/test/linop/test_convolve.py::TestConvolve::test_eval[False-same-input_shape1-complex64]": 0.07857140194391832, + "scico/test/linop/test_convolve.py::TestConvolve::test_eval[False-same-input_shape1-float32]": 0.0541797429905273, + "scico/test/linop/test_convolve.py::TestConvolve::test_eval[False-valid-input_shape0-complex64]": 0.0576200449722819, + "scico/test/linop/test_convolve.py::TestConvolve::test_eval[False-valid-input_shape0-float32]": 0.036510412057396024, + "scico/test/linop/test_convolve.py::TestConvolve::test_eval[False-valid-input_shape1-complex64]": 0.07756235398119316, + "scico/test/linop/test_convolve.py::TestConvolve::test_eval[False-valid-input_shape1-float32]": 0.05401097098365426, + "scico/test/linop/test_convolve.py::TestConvolve::test_eval[True-full-input_shape0-complex64]": 0.06956984795397148, + "scico/test/linop/test_convolve.py::TestConvolve::test_eval[True-full-input_shape0-float32]": 0.034985620994120836, + "scico/test/linop/test_convolve.py::TestConvolve::test_eval[True-full-input_shape1-complex64]": 0.07876236399170011, + "scico/test/linop/test_convolve.py::TestConvolve::test_eval[True-full-input_shape1-float32]": 0.036169193976093084, + "scico/test/linop/test_convolve.py::TestConvolve::test_eval[True-same-input_shape0-complex64]": 0.04788743902463466, + "scico/test/linop/test_convolve.py::TestConvolve::test_eval[True-same-input_shape0-float32]": 0.03488911100430414, + "scico/test/linop/test_convolve.py::TestConvolve::test_eval[True-same-input_shape1-complex64]": 0.052059325971640646, + "scico/test/linop/test_convolve.py::TestConvolve::test_eval[True-same-input_shape1-float32]": 0.03728292294545099, + "scico/test/linop/test_convolve.py::TestConvolve::test_eval[True-valid-input_shape0-complex64]": 0.05183543293969706, + "scico/test/linop/test_convolve.py::TestConvolve::test_eval[True-valid-input_shape0-float32]": 0.033467854955233634, + "scico/test/linop/test_convolve.py::TestConvolve::test_eval[True-valid-input_shape1-complex64]": 0.05624479899415746, + "scico/test/linop/test_convolve.py::TestConvolve::test_eval[True-valid-input_shape1-float32]": 0.03678693901747465, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_adjoint[False-full-input_shape0-complex64]": 0.01474420801969245, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_adjoint[False-full-input_shape0-float32]": 0.016150905983522534, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_adjoint[False-full-input_shape1-complex64]": 0.016409891075454652, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_adjoint[False-full-input_shape1-float32]": 0.01654420100385323, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_adjoint[False-same-input_shape0-complex64]": 0.11330850300146267, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_adjoint[False-same-input_shape0-float32]": 0.08988058206159621, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_adjoint[False-same-input_shape1-complex64]": 0.09821328893303871, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_adjoint[False-same-input_shape1-float32]": 0.08017008489696309, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_adjoint[False-valid-input_shape0-complex64]": 0.0131586390780285, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_adjoint[False-valid-input_shape0-float32]": 0.014539198018610477, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_adjoint[False-valid-input_shape1-complex64]": 0.016188999987207353, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_adjoint[False-valid-input_shape1-float32]": 0.015168943966273218, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_adjoint[True-full-input_shape0-complex64]": 0.09010938595747575, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_adjoint[True-full-input_shape0-float32]": 0.05141354096122086, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_adjoint[True-full-input_shape1-complex64]": 0.09811021102359518, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_adjoint[True-full-input_shape1-float32]": 0.05896679195575416, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_adjoint[True-same-input_shape0-complex64]": 0.09154513897374272, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_adjoint[True-same-input_shape0-float32]": 0.050469045992940664, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_adjoint[True-same-input_shape1-complex64]": 0.10340448498027399, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_adjoint[True-same-input_shape1-float32]": 0.3061026220093481, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_adjoint[True-valid-input_shape0-complex64]": 0.08651602501049638, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_adjoint[True-valid-input_shape0-float32]": 0.05247504502767697, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_adjoint[True-valid-input_shape1-complex64]": 0.09813531005056575, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_adjoint[True-valid-input_shape1-float32]": 0.05803112295689061, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_eval[False-full-input_shape0-complex64]": 0.009272382070776075, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_eval[False-full-input_shape0-float32]": 0.00950305099831894, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_eval[False-full-input_shape1-complex64]": 0.009969381964765489, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_eval[False-full-input_shape1-float32]": 0.009425373980775476, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_eval[False-same-input_shape0-complex64]": 0.056442566972691566, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_eval[False-same-input_shape0-float32]": 0.008943502965848893, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_eval[False-same-input_shape1-complex64]": 0.06047955999383703, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_eval[False-same-input_shape1-float32]": 0.040498604997992516, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_eval[False-valid-input_shape0-complex64]": 0.009340537013486028, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_eval[False-valid-input_shape0-float32]": 0.009509694995358586, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_eval[False-valid-input_shape1-complex64]": 0.009050252032466233, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_eval[False-valid-input_shape1-float32]": 0.008986694971099496, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_eval[True-full-input_shape0-complex64]": 0.050928280048538, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_eval[True-full-input_shape0-float32]": 0.03335987898753956, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_eval[True-full-input_shape1-complex64]": 0.05371849099174142, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_eval[True-full-input_shape1-float32]": 0.04133500705938786, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_eval[True-same-input_shape0-complex64]": 0.04719488089904189, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_eval[True-same-input_shape0-float32]": 0.03346495295409113, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_eval[True-same-input_shape1-complex64]": 0.051949109009001404, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_eval[True-same-input_shape1-float32]": 0.03648956905817613, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_eval[True-valid-input_shape0-complex64]": 0.048210879031103104, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_eval[True-valid-input_shape0-float32]": 0.03443484695162624, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_eval[True-valid-input_shape1-complex64]": 0.05465276096947491, + "scico/test/linop/test_convolve.py::TestConvolveByX::test_eval[True-valid-input_shape1-float32]": 0.037492819072213024, + "scico/test/linop/test_convolve.py::test_add_sub_different_mode[add]": 0.05866281199268997, + "scico/test/linop/test_convolve.py::test_add_sub_different_mode[sub]": 0.03205147897824645, + "scico/test/linop/test_convolve.py::test_add_sum_conv[add]": 0.07233843510039151, + "scico/test/linop/test_convolve.py::test_add_sum_conv[sub]": 0.07896694296505302, + "scico/test/linop/test_convolve.py::test_add_sum_generic_linop[add]": 0.04536050301976502, + "scico/test/linop/test_convolve.py::test_add_sum_generic_linop[sub]": 0.04599149705609307, + "scico/test/linop/test_convolve.py::test_cbx_scalar_left[mul]": 0.0814871999900788, + "scico/test/linop/test_convolve.py::test_cbx_scalar_left[truediv]": 0.08026054198853672, + "scico/test/linop/test_convolve.py::test_cbx_scalar_right[mul]": 0.08031966298585758, + "scico/test/linop/test_convolve.py::test_cbx_scalar_right[truediv]": 0.025831209030002356, + "scico/test/linop/test_convolve.py::test_convolve_add_sub[add]": 0.11534374504117295, + "scico/test/linop/test_convolve.py::test_convolve_add_sub[sub]": 0.10331769101321697, + "scico/test/linop/test_convolve.py::test_dimension_mismatch": 0.024545795982703567, + "scico/test/linop/test_convolve.py::test_invalid_mode": 0.02551663405029103, + "scico/test/linop/test_convolve.py::test_mul_div_generic_linop[mul]": 0.02856607298599556, + "scico/test/linop/test_convolve.py::test_mul_div_generic_linop[truediv]": 0.025075580982957035, + "scico/test/linop/test_convolve.py::test_ndarray_h": 0.06954741000663489, + "scico/test/linop/test_convolve.py::test_ndarray_x": 0.008276870008558035, + "scico/test/linop/test_convolve.py::test_scalar_left[mul]": 0.3797315809642896, + "scico/test/linop/test_convolve.py::test_scalar_left[truediv]": 0.09120811801403761, + "scico/test/linop/test_convolve.py::test_scalar_right[mul]": 0.09086294210283086, + "scico/test/linop/test_convolve.py::test_scalar_right[truediv]": 0.02567012800136581, + "scico/test/linop/test_dft.py::TestDFT::test_axes_check": 0.0017531290068291128, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-None-axes_and_shape0-input_shape0]": 0.05845348397269845, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-None-axes_and_shape0-input_shape1]": 0.4040581400622614, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-None-axes_and_shape0-input_shape2]": 0.4030246750335209, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-None-axes_and_shape1-input_shape0]": 0.0021018790430389345, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-None-axes_and_shape1-input_shape1]": 0.12160560203483328, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-None-axes_and_shape1-input_shape2]": 0.12105197599157691, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-None-axes_and_shape2-input_shape0]": 0.0021278600324876606, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-None-axes_and_shape2-input_shape1]": 0.5148680259590037, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-None-axes_and_shape2-input_shape2]": 0.5380437829880975, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-None-axes_and_shape3-input_shape0]": 0.003664362011477351, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-None-axes_and_shape3-input_shape1]": 0.003290084016043693, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-None-axes_and_shape3-input_shape2]": 0.11583350400906056, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-None-axes_and_shape4-input_shape0]": 0.002113778959028423, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-None-axes_and_shape4-input_shape1]": 0.0019812730024568737, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-None-axes_and_shape4-input_shape2]": 0.5266273269662634, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-None-axes_and_shape5-input_shape0]": 0.0022145300754345953, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-None-axes_and_shape5-input_shape1]": 0.4994700771057978, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-None-axes_and_shape5-input_shape2]": 0.49413502804236487, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-backward-axes_and_shape0-input_shape0]": 0.054068638070020825, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-backward-axes_and_shape0-input_shape1]": 0.054878492024727166, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-backward-axes_and_shape0-input_shape2]": 0.057296894025057554, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-backward-axes_and_shape1-input_shape0]": 0.0020563130383379757, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-backward-axes_and_shape1-input_shape1]": 0.057417457981500775, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-backward-axes_and_shape1-input_shape2]": 0.05971473199315369, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-backward-axes_and_shape2-input_shape0]": 0.0019961189245805144, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-backward-axes_and_shape2-input_shape1]": 0.06324714003130794, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-backward-axes_and_shape2-input_shape2]": 0.06618438102304935, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-backward-axes_and_shape3-input_shape0]": 0.00196959002641961, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-backward-axes_and_shape3-input_shape1]": 0.0019285010639578104, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-backward-axes_and_shape3-input_shape2]": 0.059022073983214796, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-backward-axes_and_shape4-input_shape0]": 0.0020791380666196346, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-backward-axes_and_shape4-input_shape1]": 0.002051174989901483, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-backward-axes_and_shape4-input_shape2]": 0.06572359899291769, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-backward-axes_and_shape5-input_shape0]": 0.002314288984052837, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-backward-axes_and_shape5-input_shape1]": 0.06690959195839241, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-backward-axes_and_shape5-input_shape2]": 0.06701810093363747, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-forward-axes_and_shape0-input_shape0]": 0.009786155016627163, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-forward-axes_and_shape0-input_shape1]": 0.009518457984086126, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-forward-axes_and_shape0-input_shape2]": 0.009627680003177375, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-forward-axes_and_shape1-input_shape0]": 0.002135851013008505, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-forward-axes_and_shape1-input_shape1]": 0.0157861519837752, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-forward-axes_and_shape1-input_shape2]": 0.011635268980171531, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-forward-axes_and_shape2-input_shape0]": 0.002450879954267293, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-forward-axes_and_shape2-input_shape1]": 0.01508451602421701, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-forward-axes_and_shape2-input_shape2]": 0.023549701960291713, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-forward-axes_and_shape3-input_shape0]": 0.0021590989781543612, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-forward-axes_and_shape3-input_shape1]": 0.0018869880004785955, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-forward-axes_and_shape3-input_shape2]": 0.011641526012681425, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-forward-axes_and_shape4-input_shape0]": 0.002060247992631048, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-forward-axes_and_shape4-input_shape1]": 0.0019167080172337592, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-forward-axes_and_shape4-input_shape2]": 0.016549994004890323, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-forward-axes_and_shape5-input_shape0]": 0.002119618991855532, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-forward-axes_and_shape5-input_shape1]": 0.018527497013565153, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-forward-axes_and_shape5-input_shape2]": 0.017754201078787446, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-ortho-axes_and_shape0-input_shape0]": 0.07201951305614784, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-ortho-axes_and_shape0-input_shape1]": 0.060171100951265544, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-ortho-axes_and_shape0-input_shape2]": 0.0622282630065456, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-ortho-axes_and_shape1-input_shape0]": 0.0020967080490663648, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-ortho-axes_and_shape1-input_shape1]": 0.0456995980348438, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-ortho-axes_and_shape1-input_shape2]": 0.04710141499526799, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-ortho-axes_and_shape2-input_shape0]": 0.0021596060250885785, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-ortho-axes_and_shape2-input_shape1]": 0.05504743097117171, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-ortho-axes_and_shape2-input_shape2]": 0.05459802504628897, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-ortho-axes_and_shape3-input_shape0]": 0.002241792972199619, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-ortho-axes_and_shape3-input_shape1]": 0.00217415695078671, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-ortho-axes_and_shape3-input_shape2]": 0.049471463018562645, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-ortho-axes_and_shape4-input_shape0]": 0.0021215419401414692, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-ortho-axes_and_shape4-input_shape1]": 0.002036044024862349, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-ortho-axes_and_shape4-input_shape2]": 0.05606253392761573, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-ortho-axes_and_shape5-input_shape0]": 0.0019949940033257008, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-ortho-axes_and_shape5-input_shape1]": 0.05693573196185753, + "scico/test/linop/test_dft.py::TestDFT::test_dft[False-ortho-axes_and_shape5-input_shape2]": 0.05987794406246394, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-None-axes_and_shape0-input_shape0]": 0.053601320018060505, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-None-axes_and_shape0-input_shape1]": 0.05264113296288997, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-None-axes_and_shape0-input_shape2]": 0.05306308000581339, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-None-axes_and_shape1-input_shape0]": 0.0019988209824077785, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-None-axes_and_shape1-input_shape1]": 0.06815894303144887, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-None-axes_and_shape1-input_shape2]": 0.06812199205160141, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-None-axes_and_shape2-input_shape0]": 0.002039740968029946, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-None-axes_and_shape2-input_shape1]": 0.09136127005331218, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-None-axes_and_shape2-input_shape2]": 0.10513904702384025, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-None-axes_and_shape3-input_shape0]": 0.0020179259590804577, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-None-axes_and_shape3-input_shape1]": 0.00194452702999115, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-None-axes_and_shape3-input_shape2]": 0.06562966998899356, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-None-axes_and_shape4-input_shape0]": 0.002030256961006671, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-None-axes_and_shape4-input_shape1]": 0.002324450935702771, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-None-axes_and_shape4-input_shape2]": 0.09653372206958011, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-None-axes_and_shape5-input_shape0]": 0.0023867330164648592, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-None-axes_and_shape5-input_shape1]": 0.08555893501034006, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-None-axes_and_shape5-input_shape2]": 0.09066800505388528, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-backward-axes_and_shape0-input_shape0]": 0.06246205506613478, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-backward-axes_and_shape0-input_shape1]": 0.06025001499801874, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-backward-axes_and_shape0-input_shape2]": 0.06337560497922823, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-backward-axes_and_shape1-input_shape0]": 0.0022430720273405313, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-backward-axes_and_shape1-input_shape1]": 0.0808245389489457, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-backward-axes_and_shape1-input_shape2]": 0.0746991639607586, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-backward-axes_and_shape2-input_shape0]": 0.002371774986386299, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-backward-axes_and_shape2-input_shape1]": 0.093941195984371, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-backward-axes_and_shape2-input_shape2]": 0.10768391902092844, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-backward-axes_and_shape3-input_shape0]": 0.002007673028856516, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-backward-axes_and_shape3-input_shape1]": 0.0019120689248666167, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-backward-axes_and_shape3-input_shape2]": 0.07101617997977883, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-backward-axes_and_shape4-input_shape0]": 0.002358062076382339, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-backward-axes_and_shape4-input_shape1]": 0.0020628299098461866, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-backward-axes_and_shape4-input_shape2]": 0.10296455898787826, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-backward-axes_and_shape5-input_shape0]": 0.002096684940624982, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-backward-axes_and_shape5-input_shape1]": 0.10355162899941206, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-backward-axes_and_shape5-input_shape2]": 0.10844295797869563, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-forward-axes_and_shape0-input_shape0]": 0.061662605963647366, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-forward-axes_and_shape0-input_shape1]": 0.06268713198369369, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-forward-axes_and_shape0-input_shape2]": 0.06485278793843463, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-forward-axes_and_shape1-input_shape0]": 0.0020384980016388, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-forward-axes_and_shape1-input_shape1]": 0.07293389504775405, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-forward-axes_and_shape1-input_shape2]": 0.07472226693062112, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-forward-axes_and_shape2-input_shape0]": 0.002084330015350133, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-forward-axes_and_shape2-input_shape1]": 0.09949179698014632, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-forward-axes_and_shape2-input_shape2]": 0.1057910219533369, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-forward-axes_and_shape3-input_shape0]": 0.0019556860206648707, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-forward-axes_and_shape3-input_shape1]": 0.001963513030204922, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-forward-axes_and_shape3-input_shape2]": 0.07226656097918749, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-forward-axes_and_shape4-input_shape0]": 0.002043650019913912, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-forward-axes_and_shape4-input_shape1]": 0.001927525969222188, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-forward-axes_and_shape4-input_shape2]": 0.09953519102418795, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-forward-axes_and_shape5-input_shape0]": 0.0019781749579124153, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-forward-axes_and_shape5-input_shape1]": 0.09316961100557819, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-forward-axes_and_shape5-input_shape2]": 0.10046967602102086, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-ortho-axes_and_shape0-input_shape0]": 0.06246824096888304, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-ortho-axes_and_shape0-input_shape1]": 0.06245293392566964, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-ortho-axes_and_shape0-input_shape2]": 0.06652416696306318, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-ortho-axes_and_shape1-input_shape0]": 0.002581720007583499, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-ortho-axes_and_shape1-input_shape1]": 0.0776304469909519, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-ortho-axes_and_shape1-input_shape2]": 0.07822746399324387, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-ortho-axes_and_shape2-input_shape0]": 0.0023259639856405556, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-ortho-axes_and_shape2-input_shape1]": 0.09839736198773608, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-ortho-axes_and_shape2-input_shape2]": 0.11188983602914959, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-ortho-axes_and_shape3-input_shape0]": 0.001990202988963574, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-ortho-axes_and_shape3-input_shape1]": 0.0019479090115055442, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-ortho-axes_and_shape3-input_shape2]": 0.07239651400595903, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-ortho-axes_and_shape4-input_shape0]": 0.0026871339650824666, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-ortho-axes_and_shape4-input_shape1]": 0.0022767550544813275, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-ortho-axes_and_shape4-input_shape2]": 0.11441823199857026, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-ortho-axes_and_shape5-input_shape0]": 0.0021874780068174005, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-ortho-axes_and_shape5-input_shape1]": 0.0961104819434695, + "scico/test/linop/test_dft.py::TestDFT::test_dft[True-ortho-axes_and_shape5-input_shape2]": 0.099940184969455, + "scico/test/linop/test_diff.py::test_adjoint[False-0-input_shape0-complex64]": 0.3963257969589904, + "scico/test/linop/test_diff.py::test_adjoint[False-0-input_shape0-float32]": 0.24058587895706296, + "scico/test/linop/test_diff.py::test_adjoint[False-0-input_shape1-complex64]": 0.42287063697585836, + "scico/test/linop/test_diff.py::test_adjoint[False-0-input_shape1-float32]": 0.26524720090674236, + "scico/test/linop/test_diff.py::test_adjoint[False-1-input_shape0-complex64]": 0.0007819859893061221, + "scico/test/linop/test_diff.py::test_adjoint[False-1-input_shape0-float32]": 0.0009504600311629474, + "scico/test/linop/test_diff.py::test_adjoint[False-1-input_shape1-complex64]": 0.4023407530039549, + "scico/test/linop/test_diff.py::test_adjoint[False-1-input_shape1-float32]": 0.27463295101188123, + "scico/test/linop/test_diff.py::test_adjoint[False-None-input_shape0-complex64]": 0.005282250000163913, + "scico/test/linop/test_diff.py::test_adjoint[False-None-input_shape0-float32]": 0.004755231027957052, + "scico/test/linop/test_diff.py::test_adjoint[False-None-input_shape1-complex64]": 0.5314743439666927, + "scico/test/linop/test_diff.py::test_adjoint[False-None-input_shape1-float32]": 0.2759680559975095, + "scico/test/linop/test_diff.py::test_adjoint[False-axes2-input_shape0-complex64]": 0.005543685983866453, + "scico/test/linop/test_diff.py::test_adjoint[False-axes2-input_shape0-float32]": 0.005365252960473299, + "scico/test/linop/test_diff.py::test_adjoint[False-axes2-input_shape1-complex64]": 0.005121528985910118, + "scico/test/linop/test_diff.py::test_adjoint[False-axes2-input_shape1-float32]": 0.004633878008462489, + "scico/test/linop/test_diff.py::test_adjoint[False-axes3-input_shape0-complex64]": 0.0007520709768868983, + "scico/test/linop/test_diff.py::test_adjoint[False-axes3-input_shape0-float32]": 0.0007667579920962453, + "scico/test/linop/test_diff.py::test_adjoint[False-axes3-input_shape1-complex64]": 0.005261302983853966, + "scico/test/linop/test_diff.py::test_adjoint[False-axes3-input_shape1-float32]": 0.005587182939052582, + "scico/test/linop/test_diff.py::test_adjoint[True-0-input_shape0-complex64]": 0.06350339198252186, + "scico/test/linop/test_diff.py::test_adjoint[True-0-input_shape0-float32]": 0.057991889014374465, + "scico/test/linop/test_diff.py::test_adjoint[True-0-input_shape1-complex64]": 0.06892626296030357, + "scico/test/linop/test_diff.py::test_adjoint[True-0-input_shape1-float32]": 0.05851058795815334, + "scico/test/linop/test_diff.py::test_adjoint[True-1-input_shape0-complex64]": 0.0007567149004898965, + "scico/test/linop/test_diff.py::test_adjoint[True-1-input_shape0-float32]": 0.0008206709753721952, + "scico/test/linop/test_diff.py::test_adjoint[True-1-input_shape1-complex64]": 0.07113385398406535, + "scico/test/linop/test_diff.py::test_adjoint[True-1-input_shape1-float32]": 0.061360988940577954, + "scico/test/linop/test_diff.py::test_adjoint[True-None-input_shape0-complex64]": 0.06177020800532773, + "scico/test/linop/test_diff.py::test_adjoint[True-None-input_shape0-float32]": 0.056793571973685175, + "scico/test/linop/test_diff.py::test_adjoint[True-None-input_shape1-complex64]": 0.0969363859621808, + "scico/test/linop/test_diff.py::test_adjoint[True-None-input_shape1-float32]": 0.08272460801526904, + "scico/test/linop/test_diff.py::test_adjoint[True-axes2-input_shape0-complex64]": 0.0638165699201636, + "scico/test/linop/test_diff.py::test_adjoint[True-axes2-input_shape0-float32]": 0.057379721954930574, + "scico/test/linop/test_diff.py::test_adjoint[True-axes2-input_shape1-complex64]": 0.07606163003947586, + "scico/test/linop/test_diff.py::test_adjoint[True-axes2-input_shape1-float32]": 0.05945379799231887, + "scico/test/linop/test_diff.py::test_adjoint[True-axes3-input_shape0-complex64]": 0.0007519279606640339, + "scico/test/linop/test_diff.py::test_adjoint[True-axes3-input_shape0-float32]": 0.0008191699744202197, + "scico/test/linop/test_diff.py::test_adjoint[True-axes3-input_shape1-complex64]": 0.07011736196000129, + "scico/test/linop/test_diff.py::test_adjoint[True-axes3-input_shape1-float32]": 0.06106001796433702, + "scico/test/linop/test_diff.py::test_eval": 0.17584026599070057, + "scico/test/linop/test_diff.py::test_eval_append": 0.12591191293904558, + "scico/test/linop/test_diff.py::test_eval_circular[False-complex64-shape_axes0]": 0.1132332079578191, + "scico/test/linop/test_diff.py::test_eval_circular[False-complex64-shape_axes1]": 0.07014337001601234, + "scico/test/linop/test_diff.py::test_eval_circular[False-complex64-shape_axes2]": 0.18468562595080584, + "scico/test/linop/test_diff.py::test_eval_circular[False-complex64-shape_axes3]": 0.09389323298819363, + "scico/test/linop/test_diff.py::test_eval_circular[False-float32-shape_axes0]": 0.07981369597837329, + "scico/test/linop/test_diff.py::test_eval_circular[False-float32-shape_axes1]": 0.07099248300073668, + "scico/test/linop/test_diff.py::test_eval_circular[False-float32-shape_axes2]": 0.17039129498880357, + "scico/test/linop/test_diff.py::test_eval_circular[False-float32-shape_axes3]": 0.09207009297097102, + "scico/test/linop/test_diff.py::test_eval_circular[True-complex64-shape_axes0]": 0.12023332598619163, + "scico/test/linop/test_diff.py::test_eval_circular[True-complex64-shape_axes1]": 0.06281410402152687, + "scico/test/linop/test_diff.py::test_eval_circular[True-complex64-shape_axes2]": 0.15994384698569775, + "scico/test/linop/test_diff.py::test_eval_circular[True-complex64-shape_axes3]": 0.08894683106336743, + "scico/test/linop/test_diff.py::test_eval_circular[True-float32-shape_axes0]": 0.11102307104738429, + "scico/test/linop/test_diff.py::test_eval_circular[True-float32-shape_axes1]": 0.05645530595211312, + "scico/test/linop/test_diff.py::test_eval_circular[True-float32-shape_axes2]": 0.15104821498971432, + "scico/test/linop/test_diff.py::test_eval_circular[True-float32-shape_axes3]": 0.08900587499374524, + "scico/test/linop/test_diff.py::test_eval_prepend": 0.15101753501221538, + "scico/test/linop/test_diff.py::test_except": 0.0006752060144208372, + "scico/test/linop/test_func.py::test_crop": 0.34182739595416933, + "scico/test/linop/test_func.py::test_crop_pad_adjoint[1]": 0.4834386379807256, + "scico/test/linop/test_func.py::test_crop_pad_adjoint[pad1]": 0.3329380720388144, + "scico/test/linop/test_func.py::test_crop_pad_adjoint[pad2]": 0.33677125204121694, + "scico/test/linop/test_func.py::test_crop_pad_adjoint[pad3]": 0.3344188259798102, + "scico/test/linop/test_func.py::test_pad": 0.21857521205674857, + "scico/test/linop/test_func.py::test_reshape": 0.04122609703335911, + "scico/test/linop/test_func.py::test_slice_adj[complex64-idx0]": 0.613334612979088, + "scico/test/linop/test_func.py::test_slice_adj[complex64-idx1]": 0.3367272560717538, + "scico/test/linop/test_func.py::test_slice_adj[complex64-idx2]": 0.33198734000325203, + "scico/test/linop/test_func.py::test_slice_adj[complex64-idx3]": 0.3491405309760012, + "scico/test/linop/test_func.py::test_slice_adj[complex64-idx4]": 0.3454023880767636, + "scico/test/linop/test_func.py::test_slice_adj[complex64-idx5]": 0.3455989639624022, + "scico/test/linop/test_func.py::test_slice_adj[float32-idx0]": 0.34652101999381557, + "scico/test/linop/test_func.py::test_slice_adj[float32-idx1]": 0.20790312899043784, + "scico/test/linop/test_func.py::test_slice_adj[float32-idx2]": 0.1968932609888725, + "scico/test/linop/test_func.py::test_slice_adj[float32-idx3]": 0.20826342300279066, + "scico/test/linop/test_func.py::test_slice_adj[float32-idx4]": 0.2142394240363501, + "scico/test/linop/test_func.py::test_slice_adj[float32-idx5]": 0.2074589289841242, + "scico/test/linop/test_func.py::test_slice_blockarray[1]": 0.019252709054853767, + "scico/test/linop/test_func.py::test_slice_blockarray[idx1]": 0.003472070035059005, + "scico/test/linop/test_func.py::test_slice_blockarray[idx2]": 0.0033053879742510617, + "scico/test/linop/test_func.py::test_slice_eval[complex64-idx0]": 0.0719164740294218, + "scico/test/linop/test_func.py::test_slice_eval[complex64-idx1]": 0.03875808703014627, + "scico/test/linop/test_func.py::test_slice_eval[complex64-idx2]": 0.0402538949274458, + "scico/test/linop/test_func.py::test_slice_eval[complex64-idx3]": 0.043363118020351976, + "scico/test/linop/test_func.py::test_slice_eval[complex64-idx4]": 0.04262209800072014, + "scico/test/linop/test_func.py::test_slice_eval[complex64-idx5]": 0.04422024200903252, + "scico/test/linop/test_func.py::test_slice_eval[float32-idx0]": 0.050562806020025164, + "scico/test/linop/test_func.py::test_slice_eval[float32-idx1]": 0.03869827196467668, + "scico/test/linop/test_func.py::test_slice_eval[float32-idx2]": 0.04073011700529605, + "scico/test/linop/test_func.py::test_slice_eval[float32-idx3]": 0.04254761396441609, + "scico/test/linop/test_func.py::test_slice_eval[float32-idx4]": 0.04082559701055288, + "scico/test/linop/test_func.py::test_slice_eval[float32-idx5]": 0.044603749993257225, + "scico/test/linop/test_func.py::test_transpose": 0.17758071195567027, + "scico/test/linop/test_linop.py::TestDiagonal::test_adjoint[input_shape0-complex64]": 0.03871878999052569, + "scico/test/linop/test_linop.py::TestDiagonal::test_adjoint[input_shape0-float32]": 0.037734668992925435, + "scico/test/linop/test_linop.py::TestDiagonal::test_adjoint[input_shape1-complex64]": 0.0872410989832133, + "scico/test/linop/test_linop.py::TestDiagonal::test_adjoint[input_shape1-float32]": 0.051551226002629846, + "scico/test/linop/test_linop.py::TestDiagonal::test_adjoint[input_shape2-complex64]": 0.1518557000090368, + "scico/test/linop/test_linop.py::TestDiagonal::test_adjoint[input_shape2-float32]": 0.0817772779846564, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape20-input_shape10-complex64-add]": 0.004108489025384188, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape20-input_shape10-complex64-sub]": 0.0037990499986335635, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape20-input_shape10-float32-add]": 0.004115267074666917, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape20-input_shape10-float32-sub]": 0.003715469967573881, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape20-input_shape11-complex64-add]": 0.0036710629356093705, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape20-input_shape11-complex64-sub]": 0.003860077995341271, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape20-input_shape11-float32-add]": 0.0034299090038985014, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape20-input_shape11-float32-sub]": 0.003362119954545051, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape20-input_shape12-complex64-add]": 0.004957909986842424, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape20-input_shape12-complex64-sub]": 0.004773519933223724, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape20-input_shape12-float32-add]": 0.004575051018036902, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape20-input_shape12-float32-sub]": 0.0045104819582775235, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape21-input_shape10-complex64-add]": 0.003387036034837365, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape21-input_shape10-complex64-sub]": 0.0032176680397242308, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape21-input_shape10-float32-add]": 0.003413964994251728, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape21-input_shape10-float32-sub]": 0.003701296984218061, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape21-input_shape11-complex64-add]": 0.021496799949090928, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape21-input_shape11-complex64-sub]": 0.02046896005049348, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape21-input_shape11-float32-add]": 0.021141487057320774, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape21-input_shape11-float32-sub]": 0.02191404899349436, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape21-input_shape12-complex64-add]": 0.004439587064553052, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape21-input_shape12-complex64-sub]": 0.004386317043099552, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape21-input_shape12-float32-add]": 0.0061366330482997, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape21-input_shape12-float32-sub]": 0.004439629090484232, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape22-input_shape10-complex64-add]": 0.004327856004238129, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape22-input_shape10-complex64-sub]": 0.004207244026474655, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape22-input_shape10-float32-add]": 0.0041695660329423845, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape22-input_shape10-float32-sub]": 0.0045028310269117355, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape22-input_shape11-complex64-add]": 0.003987660980783403, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape22-input_shape11-complex64-sub]": 0.004037877020891756, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape22-input_shape11-float32-add]": 0.004215587046928704, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape22-input_shape11-float32-sub]": 0.004011287004686892, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape22-input_shape12-complex64-add]": 0.03899386303965002, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape22-input_shape12-complex64-sub]": 0.025045839021913707, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape22-input_shape12-float32-add]": 0.024649651953950524, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op[input_shape22-input_shape12-float32-sub]": 0.025354656972922385, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op_mismatch[add]": 0.003048058017157018, + "scico/test/linop/test_linop.py::TestDiagonal::test_binary_op_mismatch[sub]": 0.0027493960224092007, + "scico/test/linop/test_linop.py::TestDiagonal::test_eval[input_shape0-complex64]": 0.020577866933308542, + "scico/test/linop/test_linop.py::TestDiagonal::test_eval[input_shape0-float32]": 0.01850039407145232, + "scico/test/linop/test_linop.py::TestDiagonal::test_eval[input_shape1-complex64]": 0.2409527429845184, + "scico/test/linop/test_linop.py::TestDiagonal::test_eval[input_shape1-float32]": 0.12911900196922943, + "scico/test/linop/test_linop.py::TestDiagonal::test_eval[input_shape2-complex64]": 0.27799950796179473, + "scico/test/linop/test_linop.py::TestDiagonal::test_eval[input_shape2-float32]": 0.18547046597814187, + "scico/test/linop/test_linop.py::TestDiagonal::test_eval_broadcasting[complex64]": 0.7981740510440432, + "scico/test/linop/test_linop.py::TestDiagonal::test_eval_broadcasting[float32]": 0.34347646893002093, + "scico/test/linop/test_linop.py::TestDiagonal::test_scalar_left[mul]": 0.0038486200501210988, + "scico/test/linop/test_linop.py::TestDiagonal::test_scalar_left[truediv]": 0.0035810110275633633, + "scico/test/linop/test_linop.py::TestDiagonal::test_scalar_right[mul]": 0.01880509004695341, + "scico/test/linop/test_linop.py::TestDiagonal::test_scalar_right[truediv]": 0.0022032950073480606, + "scico/test/linop/test_linop.py::test_adj_composition[complex128]": 0.002595981990452856, + "scico/test/linop/test_linop.py::test_adj_composition[complex64]": 0.002525437099393457, + "scico/test/linop/test_linop.py::test_adj_composition[float32]": 0.0021826739539392292, + "scico/test/linop/test_linop.py::test_adj_composition[float64]": 0.0021626619854941964, + "scico/test/linop/test_linop.py::test_adj_lazy": 0.004657721030525863, + "scico/test/linop/test_linop.py::test_adjoint_matmul[complex128]": 0.0006908780196681619, + "scico/test/linop/test_linop.py::test_adjoint_matmul[complex64]": 0.0005371219594962895, + "scico/test/linop/test_linop.py::test_adjoint_matmul[float32]": 0.0005685029900632799, + "scico/test/linop/test_linop.py::test_adjoint_matmul[float64]": 0.0005821309750899673, + "scico/test/linop/test_linop.py::test_adjoint_matvec[complex128]": 0.003541445010341704, + "scico/test/linop/test_linop.py::test_adjoint_matvec[complex64]": 0.0034612170420587063, + "scico/test/linop/test_linop.py::test_adjoint_matvec[float32]": 0.0029250700026750565, + "scico/test/linop/test_linop.py::test_adjoint_matvec[float64]": 0.0028903030324727297, + "scico/test/linop/test_linop.py::test_binary_op[complex128-add]": 1.3890465790755115, + "scico/test/linop/test_linop.py::test_binary_op[complex128-sub]": 0.03455208602827042, + "scico/test/linop/test_linop.py::test_binary_op[complex64-add]": 0.9815480799879879, + "scico/test/linop/test_linop.py::test_binary_op[complex64-sub]": 0.03385574999265373, + "scico/test/linop/test_linop.py::test_binary_op[float32-add]": 0.4583819799008779, + "scico/test/linop/test_linop.py::test_binary_op[float32-sub]": 0.030705241078976542, + "scico/test/linop/test_linop.py::test_binary_op[float64-add]": 0.6030180850066245, + "scico/test/linop/test_linop.py::test_binary_op[float64-sub]": 0.03277277492452413, + "scico/test/linop/test_linop.py::test_conj_matvec[complex128]": 0.0008123129955492914, + "scico/test/linop/test_linop.py::test_conj_matvec[complex64]": 0.0007865919615142047, + "scico/test/linop/test_linop.py::test_conj_matvec[float32]": 0.0012545109493657947, + "scico/test/linop/test_linop.py::test_conj_matvec[float64]": 0.0011603629682213068, + "scico/test/linop/test_linop.py::test_conj_transpose_matmul[complex128]": 0.0017731890548020601, + "scico/test/linop/test_linop.py::test_conj_transpose_matmul[complex64]": 0.0016715310048311949, + "scico/test/linop/test_linop.py::test_conj_transpose_matmul[float32]": 0.0016871800180524588, + "scico/test/linop/test_linop.py::test_conj_transpose_matmul[float64]": 0.0017113850335590541, + "scico/test/linop/test_linop.py::test_gram[complex128]": 0.021463215060066432, + "scico/test/linop/test_linop.py::test_gram[complex64]": 0.01948700292268768, + "scico/test/linop/test_linop.py::test_gram[float32]": 0.003375391010195017, + "scico/test/linop/test_linop.py::test_gram[float64]": 0.004397299024276435, + "scico/test/linop/test_linop.py::test_hermitian[complex128]": 0.0024539470323361456, + "scico/test/linop/test_linop.py::test_hermitian[complex64]": 0.0020861789816990495, + "scico/test/linop/test_linop.py::test_hermitian[float32]": 0.0017231510137207806, + "scico/test/linop/test_linop.py::test_hermitian[float64]": 0.0016069950070232153, + "scico/test/linop/test_linop.py::test_invalid_add_sub_array[complex128-add]": 0.000717496033757925, + "scico/test/linop/test_linop.py::test_invalid_add_sub_array[complex128-sub]": 0.0006597599713131785, + "scico/test/linop/test_linop.py::test_invalid_add_sub_array[complex64-add]": 0.0007191159529611468, + "scico/test/linop/test_linop.py::test_invalid_add_sub_array[complex64-sub]": 0.0006054080440662801, + "scico/test/linop/test_linop.py::test_invalid_add_sub_array[float32-add]": 0.0007916570175439119, + "scico/test/linop/test_linop.py::test_invalid_add_sub_array[float32-sub]": 0.0008243400370702147, + "scico/test/linop/test_linop.py::test_invalid_add_sub_array[float64-add]": 0.0006665120017714798, + "scico/test/linop/test_linop.py::test_invalid_add_sub_array[float64-sub]": 0.0005970730562694371, + "scico/test/linop/test_linop.py::test_invalid_add_sub_scalar[complex128-add]": 0.0006001799483783543, + "scico/test/linop/test_linop.py::test_invalid_add_sub_scalar[complex128-sub]": 0.0006511500105261803, + "scico/test/linop/test_linop.py::test_invalid_add_sub_scalar[complex64-add]": 0.0005929930484853685, + "scico/test/linop/test_linop.py::test_invalid_add_sub_scalar[complex64-sub]": 0.000595786958001554, + "scico/test/linop/test_linop.py::test_invalid_add_sub_scalar[float32-add]": 0.0006775680230930448, + "scico/test/linop/test_linop.py::test_invalid_add_sub_scalar[float32-sub]": 0.000691335997544229, + "scico/test/linop/test_linop.py::test_invalid_add_sub_scalar[float64-add]": 0.0005926430458202958, + "scico/test/linop/test_linop.py::test_invalid_add_sub_scalar[float64-sub]": 0.0005640520248562098, + "scico/test/linop/test_linop.py::test_jit_adj_lazy": 0.02631888899486512, + "scico/test/linop/test_linop.py::test_matmul_left[complex128]": 0.031222284946125, + "scico/test/linop/test_linop.py::test_matmul_left[complex64]": 0.03122792497742921, + "scico/test/linop/test_linop.py::test_matmul_left[float32]": 0.031682432105299085, + "scico/test/linop/test_linop.py::test_matmul_left[float64]": 0.01399686699733138, + "scico/test/linop/test_linop.py::test_matmul_right[complex128]": 0.03164638899033889, + "scico/test/linop/test_linop.py::test_matmul_right[complex64]": 0.03030108701204881, + "scico/test/linop/test_linop.py::test_matmul_right[float32]": 0.034925533982459456, + "scico/test/linop/test_linop.py::test_matmul_right[float64]": 0.035620786948129535, + "scico/test/linop/test_linop.py::test_matvec_call[complex128]": 0.000847474904730916, + "scico/test/linop/test_linop.py::test_matvec_call[complex64]": 0.0009281209786422551, + "scico/test/linop/test_linop.py::test_matvec_call[float32]": 0.000817556050606072, + "scico/test/linop/test_linop.py::test_matvec_call[float64]": 0.0007765920599922538, + "scico/test/linop/test_linop.py::test_matvec_left[complex128]": 0.0010190500179305673, + "scico/test/linop/test_linop.py::test_matvec_left[complex64]": 0.000879321014508605, + "scico/test/linop/test_linop.py::test_matvec_left[float32]": 0.0008922349661588669, + "scico/test/linop/test_linop.py::test_matvec_left[float64]": 0.000826489005703479, + "scico/test/linop/test_linop.py::test_matvec_right[complex128]": 0.000788338016718626, + "scico/test/linop/test_linop.py::test_matvec_right[complex64]": 0.0007505750400014222, + "scico/test/linop/test_linop.py::test_matvec_right[float32]": 0.0008515599765814841, + "scico/test/linop/test_linop.py::test_matvec_right[float64]": 0.0008078800165094435, + "scico/test/linop/test_linop.py::test_negation[complex128]": 0.03533404995687306, + "scico/test/linop/test_linop.py::test_negation[complex64]": 0.0347535329638049, + "scico/test/linop/test_linop.py::test_negation[float32]": 0.017422116012312472, + "scico/test/linop/test_linop.py::test_negation[float64]": 0.016918340988922864, + "scico/test/linop/test_linop.py::test_scalar_left[complex128-mul]": 0.15722483303397894, + "scico/test/linop/test_linop.py::test_scalar_left[complex128-truediv]": 0.06867315794806927, + "scico/test/linop/test_linop.py::test_scalar_left[complex64-mul]": 0.12072022294159979, + "scico/test/linop/test_linop.py::test_scalar_left[complex64-truediv]": 0.06857028196100146, + "scico/test/linop/test_linop.py::test_scalar_left[float32-mul]": 0.06888310995418578, + "scico/test/linop/test_linop.py::test_scalar_left[float32-truediv]": 0.0499295350164175, + "scico/test/linop/test_linop.py::test_scalar_left[float64-mul]": 0.08465804508887231, + "scico/test/linop/test_linop.py::test_scalar_left[float64-truediv]": 0.047586511936970055, + "scico/test/linop/test_linop.py::test_scalar_right[complex128-mul]": 0.0187427950440906, + "scico/test/linop/test_linop.py::test_scalar_right[complex128-truediv]": 0.0007062650402076542, + "scico/test/linop/test_linop.py::test_scalar_right[complex64-mul]": 0.01912972901482135, + "scico/test/linop/test_linop.py::test_scalar_right[complex64-truediv]": 0.000872668984811753, + "scico/test/linop/test_linop.py::test_scalar_right[float32-mul]": 0.017785588977858424, + "scico/test/linop/test_linop.py::test_scalar_right[float32-truediv]": 0.0008308109827339649, + "scico/test/linop/test_linop.py::test_scalar_right[float64-mul]": 0.017382414953317493, + "scico/test/linop/test_linop.py::test_scalar_right[float64-truediv]": 0.0007356230053119361, + "scico/test/linop/test_linop.py::test_shape[complex128]": 0.0006502500036731362, + "scico/test/linop/test_linop.py::test_shape[complex64]": 0.0006093099946156144, + "scico/test/linop/test_linop.py::test_shape[float32]": 0.0006560420151799917, + "scico/test/linop/test_linop.py::test_shape[float64]": 0.0005788590060546994, + "scico/test/linop/test_linop.py::test_transpose_matmul[complex128]": 0.0016770500224083662, + "scico/test/linop/test_linop.py::test_transpose_matmul[complex64]": 0.0016033649444580078, + "scico/test/linop/test_linop.py::test_transpose_matmul[float32]": 0.0017307829693891108, + "scico/test/linop/test_linop.py::test_transpose_matmul[float64]": 0.0012616020976565778, + "scico/test/linop/test_linop.py::test_transpose_matvec[complex128]": 0.002387746993917972, + "scico/test/linop/test_linop.py::test_transpose_matvec[complex64]": 0.0022909249528311193, + "scico/test/linop/test_linop.py::test_transpose_matvec[float32]": 0.0020061529939994216, + "scico/test/linop/test_linop.py::test_transpose_matvec[float64]": 0.0019031220581382513, + "scico/test/linop/test_linop_util.py::test_jacobian[False-complex64]": 0.007684305019211024, + "scico/test/linop/test_linop_util.py::test_jacobian[False-float32]": 0.008112796989735216, + "scico/test/linop/test_linop_util.py::test_jacobian[True-complex64]": 0.007614881964400411, + "scico/test/linop/test_linop_util.py::test_jacobian[True-float32]": 0.009103560994844884, + "scico/test/linop/test_linop_util.py::test_operator_norm": 0.67470048496034, + "scico/test/linop/test_linop_util.py::test_power_iteration[complex64]": 0.277097839047201, + "scico/test/linop/test_linop_util.py::test_power_iteration[float32]": 0.20812557108001783, + "scico/test/linop/test_linop_util.py::test_valid_adjoint": 0.1777464600163512, + "scico/test/linop/test_matrix.py::TestMatrix::test_add_sub[add]": 0.16105331399012357, + "scico/test/linop/test_matrix.py::TestMatrix::test_add_sub[sub]": 0.020456388941965997, + "scico/test/linop/test_matrix.py::TestMatrix::test_adjoint[matrix_shape0-complex64-0]": 0.03779883106471971, + "scico/test/linop/test_matrix.py::TestMatrix::test_adjoint[matrix_shape0-complex64-2]": 0.0048493200447410345, + "scico/test/linop/test_matrix.py::TestMatrix::test_adjoint[matrix_shape0-float32-0]": 0.02091441600350663, + "scico/test/linop/test_matrix.py::TestMatrix::test_adjoint[matrix_shape0-float32-2]": 0.004911733907647431, + "scico/test/linop/test_matrix.py::TestMatrix::test_adjoint[matrix_shape1-complex64-0]": 0.004406362015288323, + "scico/test/linop/test_matrix.py::TestMatrix::test_adjoint[matrix_shape1-complex64-2]": 0.017333886993583292, + "scico/test/linop/test_matrix.py::TestMatrix::test_adjoint[matrix_shape1-float32-0]": 0.004724382015410811, + "scico/test/linop/test_matrix.py::TestMatrix::test_adjoint[matrix_shape1-float32-2]": 0.022925007971934974, + "scico/test/linop/test_matrix.py::TestMatrix::test_adjoint_method[matrix_shape0-complex64-0]": 0.004447659070137888, + "scico/test/linop/test_matrix.py::TestMatrix::test_adjoint_method[matrix_shape0-complex64-2]": 0.004789413942489773, + "scico/test/linop/test_matrix.py::TestMatrix::test_adjoint_method[matrix_shape0-float32-0]": 0.005124098970554769, + "scico/test/linop/test_matrix.py::TestMatrix::test_adjoint_method[matrix_shape0-float32-2]": 0.004685493011493236, + "scico/test/linop/test_matrix.py::TestMatrix::test_adjoint_method[matrix_shape1-complex64-0]": 0.004536987980827689, + "scico/test/linop/test_matrix.py::TestMatrix::test_adjoint_method[matrix_shape1-complex64-2]": 0.004203721997328103, + "scico/test/linop/test_matrix.py::TestMatrix::test_adjoint_method[matrix_shape1-float32-0]": 0.004801253031473607, + "scico/test/linop/test_matrix.py::TestMatrix::test_adjoint_method[matrix_shape1-float32-2]": 0.004664545995183289, + "scico/test/linop/test_matrix.py::TestMatrix::test_elementwise_array_left[add]": 0.003955858002882451, + "scico/test/linop/test_matrix.py::TestMatrix::test_elementwise_array_left[mul]": 0.0037415739498101175, + "scico/test/linop/test_matrix.py::TestMatrix::test_elementwise_array_left[sub]": 0.003712400037329644, + "scico/test/linop/test_matrix.py::TestMatrix::test_elementwise_array_left[truediv]": 0.004023661022074521, + "scico/test/linop/test_matrix.py::TestMatrix::test_elementwise_array_right[add]": 0.003913775028195232, + "scico/test/linop/test_matrix.py::TestMatrix::test_elementwise_array_right[mul]": 0.006691763992421329, + "scico/test/linop/test_matrix.py::TestMatrix::test_elementwise_array_right[sub]": 0.004135791037697345, + "scico/test/linop/test_matrix.py::TestMatrix::test_elementwise_array_right[truediv]": 0.005418627057224512, + "scico/test/linop/test_matrix.py::TestMatrix::test_elementwise_array_shape_mismatch[add]": 0.003277230018284172, + "scico/test/linop/test_matrix.py::TestMatrix::test_elementwise_array_shape_mismatch[mul]": 0.003168442053720355, + "scico/test/linop/test_matrix.py::TestMatrix::test_elementwise_array_shape_mismatch[sub]": 0.003562200057785958, + "scico/test/linop/test_matrix.py::TestMatrix::test_elementwise_array_shape_mismatch[truediv]": 0.00327949202619493, + "scico/test/linop/test_matrix.py::TestMatrix::test_elementwise_linop[add]": 0.0038550180033780634, + "scico/test/linop/test_matrix.py::TestMatrix::test_elementwise_linop[sub]": 0.003971086989622563, + "scico/test/linop/test_matrix.py::TestMatrix::test_elementwise_linop_invalid[mul]": 0.00374548597028479, + "scico/test/linop/test_matrix.py::TestMatrix::test_elementwise_linop_invalid[truediv]": 0.0031212710309773684, + "scico/test/linop/test_matrix.py::TestMatrix::test_elementwise_linop_mismatch[add]": 0.003061812953092158, + "scico/test/linop/test_matrix.py::TestMatrix::test_elementwise_linop_mismatch[sub]": 0.00366462703095749, + "scico/test/linop/test_matrix.py::TestMatrix::test_elementwise_matop_shape_mismatch[add]": 0.003322542004752904, + "scico/test/linop/test_matrix.py::TestMatrix::test_elementwise_matop_shape_mismatch[mul]": 0.0034181250375695527, + "scico/test/linop/test_matrix.py::TestMatrix::test_elementwise_matop_shape_mismatch[sub]": 0.0034689499880187213, + "scico/test/linop/test_matrix.py::TestMatrix::test_elementwise_matop_shape_mismatch[truediv]": 0.0034719339455477893, + "scico/test/linop/test_matrix.py::TestMatrix::test_elementwise_matops[add]": 0.0042861009715124965, + "scico/test/linop/test_matrix.py::TestMatrix::test_elementwise_matops[mul]": 0.020931305014528334, + "scico/test/linop/test_matrix.py::TestMatrix::test_elementwise_matops[sub]": 0.003993654914665967, + "scico/test/linop/test_matrix.py::TestMatrix::test_elementwise_matops[truediv]": 0.026130412006750703, + "scico/test/linop/test_matrix.py::TestMatrix::test_eval[matrix_shape0-complex64-0]": 0.026973605039529502, + "scico/test/linop/test_matrix.py::TestMatrix::test_eval[matrix_shape0-complex64-2]": 0.05344634799985215, + "scico/test/linop/test_matrix.py::TestMatrix::test_eval[matrix_shape0-float32-0]": 0.03285423095803708, + "scico/test/linop/test_matrix.py::TestMatrix::test_eval[matrix_shape0-float32-2]": 0.07372424402274191, + "scico/test/linop/test_matrix.py::TestMatrix::test_eval[matrix_shape1-complex64-0]": 0.024884289945475757, + "scico/test/linop/test_matrix.py::TestMatrix::test_eval[matrix_shape1-complex64-2]": 0.037551120040006936, + "scico/test/linop/test_matrix.py::TestMatrix::test_eval[matrix_shape1-float32-0]": 0.024852995993569493, + "scico/test/linop/test_matrix.py::TestMatrix::test_eval[matrix_shape1-float32-2]": 0.04122995998477563, + "scico/test/linop/test_matrix.py::TestMatrix::test_gram_method[matrix_shape0-complex64-0]": 0.01696719997562468, + "scico/test/linop/test_matrix.py::TestMatrix::test_gram_method[matrix_shape0-complex64-2]": 0.0037851609522476792, + "scico/test/linop/test_matrix.py::TestMatrix::test_gram_method[matrix_shape0-float32-0]": 0.0038712029345333576, + "scico/test/linop/test_matrix.py::TestMatrix::test_gram_method[matrix_shape0-float32-2]": 0.0035991239710710943, + "scico/test/linop/test_matrix.py::TestMatrix::test_gram_method[matrix_shape1-complex64-0]": 0.02146795397857204, + "scico/test/linop/test_matrix.py::TestMatrix::test_gram_method[matrix_shape1-complex64-2]": 0.022266521002165973, + "scico/test/linop/test_matrix.py::TestMatrix::test_gram_method[matrix_shape1-float32-0]": 0.022328493010718375, + "scico/test/linop/test_matrix.py::TestMatrix::test_gram_method[matrix_shape1-float32-2]": 0.019129040010739118, + "scico/test/linop/test_matrix.py::TestMatrix::test_gram_op[matrix_shape0-complex64-0]": 0.006728858046699315, + "scico/test/linop/test_matrix.py::TestMatrix::test_gram_op[matrix_shape0-complex64-2]": 0.00493490498047322, + "scico/test/linop/test_matrix.py::TestMatrix::test_gram_op[matrix_shape0-float32-0]": 0.006270111014600843, + "scico/test/linop/test_matrix.py::TestMatrix::test_gram_op[matrix_shape0-float32-2]": 0.0070872349897399545, + "scico/test/linop/test_matrix.py::TestMatrix::test_gram_op[matrix_shape1-complex64-0]": 0.00433881301432848, + "scico/test/linop/test_matrix.py::TestMatrix::test_gram_op[matrix_shape1-complex64-2]": 0.0041780719184316695, + "scico/test/linop/test_matrix.py::TestMatrix::test_gram_op[matrix_shape1-float32-0]": 0.004665720975026488, + "scico/test/linop/test_matrix.py::TestMatrix::test_gram_op[matrix_shape1-float32-2]": 0.005320402036886662, + "scico/test/linop/test_matrix.py::TestMatrix::test_hermetian_method[matrix_shape0-complex64-0]": 0.004689593042712659, + "scico/test/linop/test_matrix.py::TestMatrix::test_hermetian_method[matrix_shape0-complex64-2]": 0.004981421981938183, + "scico/test/linop/test_matrix.py::TestMatrix::test_hermetian_method[matrix_shape0-float32-0]": 0.005027664941735566, + "scico/test/linop/test_matrix.py::TestMatrix::test_hermetian_method[matrix_shape0-float32-2]": 0.005416447937022895, + "scico/test/linop/test_matrix.py::TestMatrix::test_hermetian_method[matrix_shape1-complex64-0]": 0.005024996993597597, + "scico/test/linop/test_matrix.py::TestMatrix::test_hermetian_method[matrix_shape1-complex64-2]": 0.004673298972193152, + "scico/test/linop/test_matrix.py::TestMatrix::test_hermetian_method[matrix_shape1-float32-0]": 0.005329136969521642, + "scico/test/linop/test_matrix.py::TestMatrix::test_hermetian_method[matrix_shape1-float32-2]": 0.0047959149815142155, + "scico/test/linop/test_matrix.py::TestMatrix::test_init_devicearray": 0.0240485779941082, + "scico/test/linop/test_matrix.py::TestMatrix::test_init_wrong_dims[matrix_shape0]": 0.0021366411237977445, + "scico/test/linop/test_matrix.py::TestMatrix::test_init_wrong_dims[matrix_shape1]": 0.0018823799910023808, + "scico/test/linop/test_matrix.py::TestMatrix::test_matmul": 0.14059323398396373, + "scico/test/linop/test_matrix.py::TestMatrix::test_matmul_cols": 0.050026854092720896, + "scico/test/linop/test_matrix.py::TestMatrix::test_matmul_identity": 0.003364289936143905, + "scico/test/linop/test_matrix.py::TestMatrix::test_matmul_linop": 0.004803511023055762, + "scico/test/linop/test_matrix.py::TestMatrix::test_matmul_linop_shape_mismatch": 0.13411733403336257, + "scico/test/linop/test_matrix.py::TestMatrix::test_norm[complex64-False-0-2]": 0.027940557978581637, + "scico/test/linop/test_matrix.py::TestMatrix::test_norm[complex64-False-0-fro]": 0.0029512300388887525, + "scico/test/linop/test_matrix.py::TestMatrix::test_norm[complex64-False-1-2]": 0.026679246977437288, + "scico/test/linop/test_matrix.py::TestMatrix::test_norm[complex64-False-1-fro]": 0.0029955969657748938, + "scico/test/linop/test_matrix.py::TestMatrix::test_norm[complex64-False-None-2]": 0.0324920600396581, + "scico/test/linop/test_matrix.py::TestMatrix::test_norm[complex64-False-None-fro]": 0.026644604979082942, + "scico/test/linop/test_matrix.py::TestMatrix::test_norm[complex64-True-0-2]": 0.030126838013529778, + "scico/test/linop/test_matrix.py::TestMatrix::test_norm[complex64-True-0-fro]": 0.003139539039693773, + "scico/test/linop/test_matrix.py::TestMatrix::test_norm[complex64-True-1-2]": 0.02709761302685365, + "scico/test/linop/test_matrix.py::TestMatrix::test_norm[complex64-True-1-fro]": 0.0029960929532535374, + "scico/test/linop/test_matrix.py::TestMatrix::test_norm[complex64-True-None-2]": 0.0333248499664478, + "scico/test/linop/test_matrix.py::TestMatrix::test_norm[complex64-True-None-fro]": 0.27689286204986274, + "scico/test/linop/test_matrix.py::TestMatrix::test_norm[float32-False-0-2]": 0.023934981029015034, + "scico/test/linop/test_matrix.py::TestMatrix::test_norm[float32-False-0-fro]": 0.0028962649521417916, + "scico/test/linop/test_matrix.py::TestMatrix::test_norm[float32-False-1-2]": 0.024911509011872113, + "scico/test/linop/test_matrix.py::TestMatrix::test_norm[float32-False-1-fro]": 0.003123451955616474, + "scico/test/linop/test_matrix.py::TestMatrix::test_norm[float32-False-None-2]": 0.03179344901582226, + "scico/test/linop/test_matrix.py::TestMatrix::test_norm[float32-False-None-fro]": 0.02538023400120437, + "scico/test/linop/test_matrix.py::TestMatrix::test_norm[float32-True-0-2]": 0.024815339944325387, + "scico/test/linop/test_matrix.py::TestMatrix::test_norm[float32-True-0-fro]": 0.0029650460346601903, + "scico/test/linop/test_matrix.py::TestMatrix::test_norm[float32-True-1-2]": 0.02400904701789841, + "scico/test/linop/test_matrix.py::TestMatrix::test_norm[float32-True-1-fro]": 0.003260744968429208, + "scico/test/linop/test_matrix.py::TestMatrix::test_norm[float32-True-None-2]": 0.03297749301418662, + "scico/test/linop/test_matrix.py::TestMatrix::test_norm[float32-True-None-fro]": 0.024122262955643237, + "scico/test/linop/test_matrix.py::TestMatrix::test_scalar_left[add]": 0.034491446043830365, + "scico/test/linop/test_matrix.py::TestMatrix::test_scalar_left[mul]": 0.020014698966406286, + "scico/test/linop/test_matrix.py::TestMatrix::test_scalar_left[sub]": 0.03522032202454284, + "scico/test/linop/test_matrix.py::TestMatrix::test_scalar_left[truediv]": 0.02006933803204447, + "scico/test/linop/test_matrix.py::TestMatrix::test_scalar_right[add]": 0.0040024720365181565, + "scico/test/linop/test_matrix.py::TestMatrix::test_scalar_right[mul]": 0.0205954400007613, + "scico/test/linop/test_matrix.py::TestMatrix::test_scalar_right[sub]": 0.020062576979398727, + "scico/test/linop/test_matrix.py::TestMatrix::test_scalar_right[truediv]": 0.02034857397666201, + "scico/test/linop/test_matrix.py::TestMatrix::test_to_array": 0.0023675220436416566, + "scico/test/linop/test_optics.py::TestPropagator::test_3d_invalid[AngularSpectrumPropagator]": 0.0018477679695934057, + "scico/test/linop/test_optics.py::TestPropagator::test_3d_invalid[FraunhoferPropagator]": 0.0017242739559151232, + "scico/test/linop/test_optics.py::TestPropagator::test_3d_invalid[FresnelPropagator]": 0.001788900000974536, + "scico/test/linop/test_optics.py::TestPropagator::test_3d_invalid_radial": 0.0015912710223346949, + "scico/test/linop/test_optics.py::TestPropagator::test_AS_inverse[1]": 0.16526146500837058, + "scico/test/linop/test_optics.py::TestPropagator::test_AS_inverse[2]": 0.15567846701014787, + "scico/test/linop/test_optics.py::TestPropagator::test_prop_adjoint[AngularSpectrumPropagator-1]": 0.17179170594317839, + "scico/test/linop/test_optics.py::TestPropagator::test_prop_adjoint[AngularSpectrumPropagator-2]": 0.455241062969435, + "scico/test/linop/test_optics.py::TestPropagator::test_prop_adjoint[FraunhoferPropagator-1]": 0.2385108660091646, + "scico/test/linop/test_optics.py::TestPropagator::test_prop_adjoint[FraunhoferPropagator-2]": 0.29774647403974086, + "scico/test/linop/test_optics.py::TestPropagator::test_prop_adjoint[FresnelPropagator-1]": 0.09388414496788755, + "scico/test/linop/test_optics.py::TestPropagator::test_prop_adjoint[FresnelPropagator-2]": 0.114852917031385, + "scico/test/linop/test_optics.py::TestPropagator::test_shape_dx_mismatch[AngularSpectrumPropagator]": 0.0017209910438396037, + "scico/test/linop/test_optics.py::TestPropagator::test_shape_dx_mismatch[FraunhoferPropagator]": 0.0020444669644348323, + "scico/test/linop/test_optics.py::TestPropagator::test_shape_dx_mismatch[FresnelPropagator]": 0.0016896050074137747, + "scico/test/linop/test_optics.py::TestPropagator::test_shape_dx_mismatch_radial": 0.0016142289969138801, + "scico/test/linop/test_optics.py::test_asp_sampling[1]": 0.012150435009971261, + "scico/test/linop/test_optics.py::test_asp_sampling[2]": 0.024487961898557842, + "scico/test/linop/test_optics.py::test_fraunhofer_sampling[1]": 0.007022242934908718, + "scico/test/linop/test_optics.py::test_fraunhofer_sampling[2]": 0.009484128037001938, + "scico/test/linop/test_optics.py::test_fresnel_sampling[1]": 0.012523752986453474, + "scico/test/linop/test_optics.py::test_fresnel_sampling[2]": 0.01340152305783704, + "scico/test/linop/test_radon_astra.py::test_AAT_call[None]": 0.14067990699550137, + "scico/test/linop/test_radon_astra.py::test_AAT_call[testobj1]": 0.10433282499434426, + "scico/test/linop/test_radon_astra.py::test_AAT_matmul[None]": 0.10266893403604627, + "scico/test/linop/test_radon_astra.py::test_AAT_matmul[testobj1]": 0.1011360400589183, + "scico/test/linop/test_radon_astra.py::test_ATA_call[None]": 0.10363975702784956, + "scico/test/linop/test_radon_astra.py::test_ATA_call[testobj1]": 0.11211758700665087, + "scico/test/linop/test_radon_astra.py::test_ATA_matmul[None]": 0.10431636206340045, + "scico/test/linop/test_radon_astra.py::test_ATA_matmul[testobj1]": 0.10269450396299362, + "scico/test/linop/test_radon_astra.py::test_adjoint_grad[None]": 0.2992356110480614, + "scico/test/linop/test_radon_astra.py::test_adjoint_grad[testobj1]": 0.259470839984715, + "scico/test/linop/test_radon_astra.py::test_adjoint_random[None]": 0.2853041509515606, + "scico/test/linop/test_radon_astra.py::test_adjoint_random[testobj1]": 0.11049561196705326, + "scico/test/linop/test_radon_astra.py::test_adjoint_typical_input[None]": 0.16016439802479, + "scico/test/linop/test_radon_astra.py::test_adjoint_typical_input[testobj1]": 0.10432285396382213, + "scico/test/linop/test_radon_astra.py::test_grad[None]": 0.25683575100265443, + "scico/test/linop/test_radon_astra.py::test_grad[testobj1]": 0.1992204009438865, + "scico/test/linop/test_radon_svmbir.py::test_adjoint[fan-curved-False-0-False-32-33-50-51-125-1.2]": 0.04219921794719994, + "scico/test/linop/test_radon_svmbir.py::test_adjoint[fan-curved-False-0-True-32-33-50-51-125-1.2]": 0.04144899797393009, + "scico/test/linop/test_radon_svmbir.py::test_adjoint[fan-curved-False-3-False-32-33-50-51-125-1.2]": 0.04012199299177155, + "scico/test/linop/test_radon_svmbir.py::test_adjoint[fan-curved-False-3-True-32-33-50-51-125-1.2]": 0.040391004004050046, + "scico/test/linop/test_radon_svmbir.py::test_adjoint[fan-curved-True-0-False-32-33-50-51-125-1.2]": 0.04098499595420435, + "scico/test/linop/test_radon_svmbir.py::test_adjoint[fan-curved-True-0-True-32-33-50-51-125-1.2]": 0.04129985789768398, + "scico/test/linop/test_radon_svmbir.py::test_adjoint[fan-curved-True-3-False-32-33-50-51-125-1.2]": 0.039691009966190904, + "scico/test/linop/test_radon_svmbir.py::test_adjoint[fan-curved-True-3-True-32-33-50-51-125-1.2]": 0.04006547498283908, + "scico/test/linop/test_radon_svmbir.py::test_adjoint[fan-flat-False-0-False-32-33-50-51-125-1.2]": 0.04040547495242208, + "scico/test/linop/test_radon_svmbir.py::test_adjoint[fan-flat-False-0-True-32-33-50-51-125-1.2]": 0.04135026101721451, + "scico/test/linop/test_radon_svmbir.py::test_adjoint[fan-flat-False-3-False-32-33-50-51-125-1.2]": 0.04100300301797688, + "scico/test/linop/test_radon_svmbir.py::test_adjoint[fan-flat-False-3-True-32-33-50-51-125-1.2]": 0.04006631998345256, + "scico/test/linop/test_radon_svmbir.py::test_adjoint[fan-flat-True-0-False-32-33-50-51-125-1.2]": 0.039035888912621886, + "scico/test/linop/test_radon_svmbir.py::test_adjoint[fan-flat-True-0-True-32-33-50-51-125-1.2]": 0.039581851044204086, + "scico/test/linop/test_radon_svmbir.py::test_adjoint[fan-flat-True-3-False-32-33-50-51-125-1.2]": 0.04105260502547026, + "scico/test/linop/test_radon_svmbir.py::test_adjoint[fan-flat-True-3-True-32-33-50-51-125-1.2]": 0.039207471010740846, + "scico/test/linop/test_radon_svmbir.py::test_adjoint[parallel-False-0-False-32-33-50-51-125-1.2]": 0.0405614500050433, + "scico/test/linop/test_radon_svmbir.py::test_adjoint[parallel-False-0-True-32-33-50-51-125-1.2]": 0.041268107015639544, + "scico/test/linop/test_radon_svmbir.py::test_adjoint[parallel-False-3-False-32-33-50-51-125-1.2]": 0.04211511998437345, + "scico/test/linop/test_radon_svmbir.py::test_adjoint[parallel-False-3-True-32-33-50-51-125-1.2]": 0.04198663402348757, + "scico/test/linop/test_radon_svmbir.py::test_adjoint[parallel-True-0-False-32-33-50-51-125-1.2]": 0.28690899908542633, + "scico/test/linop/test_radon_svmbir.py::test_adjoint[parallel-True-0-True-32-33-50-51-125-1.2]": 0.3389759019482881, + "scico/test/linop/test_radon_svmbir.py::test_adjoint[parallel-True-3-False-32-33-50-51-125-1.2]": 0.041736304003279656, + "scico/test/linop/test_radon_svmbir.py::test_adjoint[parallel-True-3-True-32-33-50-51-125-1.2]": 0.039663540956098586, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-curved-False-False-0-transmission-False-4-5-7-8-16-1.2]": 0.02722367295064032, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-curved-False-False-0-transmission-True-4-5-7-8-16-1.2]": 0.02604599395999685, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-curved-False-False-0-unweighted-False-4-5-7-8-16-1.2]": 0.02717059600399807, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-curved-False-False-0-unweighted-True-4-5-7-8-16-1.2]": 0.02565262804273516, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-curved-False-False-0.1-transmission-False-4-5-7-8-16-1.2]": 0.027763435035012662, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-curved-False-False-0.1-transmission-True-4-5-7-8-16-1.2]": 0.02482860704185441, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-curved-False-False-0.1-unweighted-False-4-5-7-8-16-1.2]": 0.027710362046491355, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-curved-False-False-0.1-unweighted-True-4-5-7-8-16-1.2]": 0.026748451928142458, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-curved-False-True-0-transmission-False-4-5-7-8-16-1.2]": 0.026155987987294793, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-curved-False-True-0-transmission-True-4-5-7-8-16-1.2]": 0.025781966978684068, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-curved-False-True-0-unweighted-False-4-5-7-8-16-1.2]": 0.02521567593794316, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-curved-False-True-0-unweighted-True-4-5-7-8-16-1.2]": 0.024732011079322547, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-curved-False-True-0.1-transmission-False-4-5-7-8-16-1.2]": 0.025700937025249004, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-curved-False-True-0.1-transmission-True-4-5-7-8-16-1.2]": 0.026633417059201747, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-curved-False-True-0.1-unweighted-False-4-5-7-8-16-1.2]": 0.02559966704575345, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-curved-False-True-0.1-unweighted-True-4-5-7-8-16-1.2]": 0.025052036973647773, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-curved-True-False-0-transmission-False-4-5-7-8-16-1.2]": 0.024957135028671473, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-curved-True-False-0-transmission-True-4-5-7-8-16-1.2]": 0.025829040037933737, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-curved-True-False-0-unweighted-False-4-5-7-8-16-1.2]": 0.026536263001617044, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-curved-True-False-0-unweighted-True-4-5-7-8-16-1.2]": 0.025273070961702615, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-curved-True-False-0.1-transmission-False-4-5-7-8-16-1.2]": 0.025182826968375593, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-curved-True-False-0.1-transmission-True-4-5-7-8-16-1.2]": 0.025272589991800487, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-curved-True-False-0.1-unweighted-False-4-5-7-8-16-1.2]": 0.026412200997583568, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-curved-True-False-0.1-unweighted-True-4-5-7-8-16-1.2]": 0.02641817694529891, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-curved-True-True-0-transmission-False-4-5-7-8-16-1.2]": 0.02546495699789375, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-curved-True-True-0-transmission-True-4-5-7-8-16-1.2]": 0.028528221999295056, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-curved-True-True-0-unweighted-False-4-5-7-8-16-1.2]": 0.027168129046913236, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-curved-True-True-0-unweighted-True-4-5-7-8-16-1.2]": 0.0261260979459621, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-curved-True-True-0.1-transmission-False-4-5-7-8-16-1.2]": 0.02725335693685338, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-curved-True-True-0.1-transmission-True-4-5-7-8-16-1.2]": 0.026143245049752295, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-curved-True-True-0.1-unweighted-False-4-5-7-8-16-1.2]": 0.026905103004537523, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-curved-True-True-0.1-unweighted-True-4-5-7-8-16-1.2]": 0.026251528062857687, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-flat-False-False-0-transmission-False-4-5-7-8-16-1.2]": 0.028889699024148285, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-flat-False-False-0-transmission-True-4-5-7-8-16-1.2]": 0.026260372018441558, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-flat-False-False-0-unweighted-False-4-5-7-8-16-1.2]": 0.02705126703949645, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-flat-False-False-0-unweighted-True-4-5-7-8-16-1.2]": 0.026988079072907567, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-flat-False-False-0.1-transmission-False-4-5-7-8-16-1.2]": 0.06751907197758555, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-flat-False-False-0.1-transmission-True-4-5-7-8-16-1.2]": 0.02633484691614285, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-flat-False-False-0.1-unweighted-False-4-5-7-8-16-1.2]": 0.027449772984255105, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-flat-False-False-0.1-unweighted-True-4-5-7-8-16-1.2]": 0.02649753907462582, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-flat-False-True-0-transmission-False-4-5-7-8-16-1.2]": 0.024274268944282085, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-flat-False-True-0-transmission-True-4-5-7-8-16-1.2]": 0.02495098701911047, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-flat-False-True-0-unweighted-False-4-5-7-8-16-1.2]": 0.027919233951251954, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-flat-False-True-0-unweighted-True-4-5-7-8-16-1.2]": 0.02522873698035255, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-flat-False-True-0.1-transmission-False-4-5-7-8-16-1.2]": 0.025485624035354704, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-flat-False-True-0.1-transmission-True-4-5-7-8-16-1.2]": 0.024708429933525622, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-flat-False-True-0.1-unweighted-False-4-5-7-8-16-1.2]": 0.025480646057985723, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-flat-False-True-0.1-unweighted-True-4-5-7-8-16-1.2]": 0.024592585978098214, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-flat-True-False-0-transmission-False-4-5-7-8-16-1.2]": 0.025496067013591528, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-flat-True-False-0-transmission-True-4-5-7-8-16-1.2]": 0.025386177992913872, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-flat-True-False-0-unweighted-False-4-5-7-8-16-1.2]": 0.052991835051216185, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-flat-True-False-0-unweighted-True-4-5-7-8-16-1.2]": 0.02747022802941501, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-flat-True-False-0.1-transmission-False-4-5-7-8-16-1.2]": 0.025777131028007716, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-flat-True-False-0.1-transmission-True-4-5-7-8-16-1.2]": 0.02540622797096148, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-flat-True-False-0.1-unweighted-False-4-5-7-8-16-1.2]": 0.025433888018596917, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-flat-True-False-0.1-unweighted-True-4-5-7-8-16-1.2]": 0.024702870985493064, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-flat-True-True-0-transmission-False-4-5-7-8-16-1.2]": 0.027111993986181915, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-flat-True-True-0-transmission-True-4-5-7-8-16-1.2]": 0.025376800971571356, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-flat-True-True-0-unweighted-False-4-5-7-8-16-1.2]": 0.029150206013582647, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-flat-True-True-0-unweighted-True-4-5-7-8-16-1.2]": 0.02650574198924005, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-flat-True-True-0.1-transmission-False-4-5-7-8-16-1.2]": 0.026636649970896542, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-flat-True-True-0.1-transmission-True-4-5-7-8-16-1.2]": 0.024758180021308362, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-flat-True-True-0.1-unweighted-False-4-5-7-8-16-1.2]": 0.02684497198788449, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[fan-flat-True-True-0.1-unweighted-True-4-5-7-8-16-1.2]": 0.025687535933684558, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[parallel-False-False-0-transmission-False-4-5-7-8-16-1.2]": 0.02656669996213168, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[parallel-False-False-0-transmission-True-4-5-7-8-16-1.2]": 0.04801777994725853, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[parallel-False-False-0-unweighted-False-4-5-7-8-16-1.2]": 0.027455004979856312, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[parallel-False-False-0-unweighted-True-4-5-7-8-16-1.2]": 0.026368060032837093, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[parallel-False-False-0.1-transmission-False-4-5-7-8-16-1.2]": 0.028573554067406803, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[parallel-False-False-0.1-transmission-True-4-5-7-8-16-1.2]": 0.02705219096969813, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[parallel-False-False-0.1-unweighted-False-4-5-7-8-16-1.2]": 0.030083811085205525, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[parallel-False-False-0.1-unweighted-True-4-5-7-8-16-1.2]": 0.02771796000888571, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[parallel-False-True-0-transmission-False-4-5-7-8-16-1.2]": 0.026341122982557863, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[parallel-False-True-0-transmission-True-4-5-7-8-16-1.2]": 0.024332910077646375, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[parallel-False-True-0-unweighted-False-4-5-7-8-16-1.2]": 0.029619519948028028, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[parallel-False-True-0-unweighted-True-4-5-7-8-16-1.2]": 0.029832288972102106, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[parallel-False-True-0.1-transmission-False-4-5-7-8-16-1.2]": 0.02505229803500697, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[parallel-False-True-0.1-transmission-True-4-5-7-8-16-1.2]": 0.024109006044454873, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[parallel-False-True-0.1-unweighted-False-4-5-7-8-16-1.2]": 0.025314682046882808, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[parallel-False-True-0.1-unweighted-True-4-5-7-8-16-1.2]": 0.024124852032400668, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[parallel-True-False-0-transmission-False-4-5-7-8-16-1.2]": 0.024471557058859617, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[parallel-True-False-0-transmission-True-4-5-7-8-16-1.2]": 0.023897173057775944, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[parallel-True-False-0-unweighted-False-4-5-7-8-16-1.2]": 0.02621394902234897, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[parallel-True-False-0-unweighted-True-4-5-7-8-16-1.2]": 0.024586325918789953, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[parallel-True-False-0.1-transmission-False-4-5-7-8-16-1.2]": 0.02447716996539384, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[parallel-True-False-0.1-transmission-True-4-5-7-8-16-1.2]": 0.02412973396712914, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[parallel-True-False-0.1-unweighted-False-4-5-7-8-16-1.2]": 0.025048536015674472, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[parallel-True-False-0.1-unweighted-True-4-5-7-8-16-1.2]": 0.024199665989726782, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[parallel-True-True-0-transmission-False-4-5-7-8-16-1.2]": 0.02582510997308418, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[parallel-True-True-0-transmission-True-4-5-7-8-16-1.2]": 0.026226884918287396, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[parallel-True-True-0-unweighted-False-4-5-7-8-16-1.2]": 0.026732459955383092, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[parallel-True-True-0-unweighted-True-4-5-7-8-16-1.2]": 0.027027987991459668, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[parallel-True-True-0.1-transmission-False-4-5-7-8-16-1.2]": 0.027103476983029395, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[parallel-True-True-0.1-transmission-True-4-5-7-8-16-1.2]": 0.025842059054411948, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[parallel-True-True-0.1-unweighted-False-4-5-7-8-16-1.2]": 0.027359233994502574, + "scico/test/linop/test_radon_svmbir.py::test_approx_prox[parallel-True-True-0.1-unweighted-True-4-5-7-8-16-1.2]": 0.02437116502551362, + "scico/test/linop/test_radon_svmbir.py::test_grad[fan-curved-False-0-False-32-33-50-51-125-1.2]": 0.07781519601121545, + "scico/test/linop/test_radon_svmbir.py::test_grad[fan-curved-False-0-True-32-33-50-51-125-1.2]": 0.07395416393410414, + "scico/test/linop/test_radon_svmbir.py::test_grad[fan-curved-False-3-False-32-33-50-51-125-1.2]": 0.07571511407149956, + "scico/test/linop/test_radon_svmbir.py::test_grad[fan-curved-False-3-True-32-33-50-51-125-1.2]": 0.08055168500868604, + "scico/test/linop/test_radon_svmbir.py::test_grad[fan-curved-True-0-False-32-33-50-51-125-1.2]": 0.07347764598671347, + "scico/test/linop/test_radon_svmbir.py::test_grad[fan-curved-True-0-True-32-33-50-51-125-1.2]": 0.07508209097431973, + "scico/test/linop/test_radon_svmbir.py::test_grad[fan-curved-True-3-False-32-33-50-51-125-1.2]": 0.07642810407560319, + "scico/test/linop/test_radon_svmbir.py::test_grad[fan-curved-True-3-True-32-33-50-51-125-1.2]": 0.07268046599347144, + "scico/test/linop/test_radon_svmbir.py::test_grad[fan-flat-False-0-False-32-33-50-51-125-1.2]": 0.07789129897719249, + "scico/test/linop/test_radon_svmbir.py::test_grad[fan-flat-False-0-True-32-33-50-51-125-1.2]": 0.07612851000158116, + "scico/test/linop/test_radon_svmbir.py::test_grad[fan-flat-False-3-False-32-33-50-51-125-1.2]": 0.07846598996547982, + "scico/test/linop/test_radon_svmbir.py::test_grad[fan-flat-False-3-True-32-33-50-51-125-1.2]": 0.0761549940216355, + "scico/test/linop/test_radon_svmbir.py::test_grad[fan-flat-True-0-False-32-33-50-51-125-1.2]": 0.07559026300441474, + "scico/test/linop/test_radon_svmbir.py::test_grad[fan-flat-True-0-True-32-33-50-51-125-1.2]": 0.07335161999799311, + "scico/test/linop/test_radon_svmbir.py::test_grad[fan-flat-True-3-False-32-33-50-51-125-1.2]": 0.07242202904308215, + "scico/test/linop/test_radon_svmbir.py::test_grad[fan-flat-True-3-True-32-33-50-51-125-1.2]": 0.07510325702605769, + "scico/test/linop/test_radon_svmbir.py::test_grad[parallel-False-0-False-32-33-50-51-125-1.2]": 0.07332869799574837, + "scico/test/linop/test_radon_svmbir.py::test_grad[parallel-False-0-True-32-33-50-51-125-1.2]": 0.07462927303276956, + "scico/test/linop/test_radon_svmbir.py::test_grad[parallel-False-3-False-32-33-50-51-125-1.2]": 0.07795880606863648, + "scico/test/linop/test_radon_svmbir.py::test_grad[parallel-False-3-True-32-33-50-51-125-1.2]": 0.07340535701951012, + "scico/test/linop/test_radon_svmbir.py::test_grad[parallel-True-0-False-32-33-50-51-125-1.2]": 0.2427882800111547, + "scico/test/linop/test_radon_svmbir.py::test_grad[parallel-True-0-True-32-33-50-51-125-1.2]": 0.39927822700701654, + "scico/test/linop/test_radon_svmbir.py::test_grad[parallel-True-3-False-32-33-50-51-125-1.2]": 0.07340680103516206, + "scico/test/linop/test_radon_svmbir.py::test_grad[parallel-True-3-True-32-33-50-51-125-1.2]": 0.07444497500546277, + "scico/test/linop/test_radon_svmbir.py::test_prox[fan-curved-False-0-False-4-5-7-8-16-1.2]": 0.7325696150073782, + "scico/test/linop/test_radon_svmbir.py::test_prox[fan-curved-False-0-True-4-5-7-8-16-1.2]": 0.7373827379778959, + "scico/test/linop/test_radon_svmbir.py::test_prox[fan-curved-False-0.1-False-4-5-7-8-16-1.2]": 0.7696180259808898, + "scico/test/linop/test_radon_svmbir.py::test_prox[fan-curved-False-0.1-True-4-5-7-8-16-1.2]": 0.7612788709811866, + "scico/test/linop/test_radon_svmbir.py::test_prox[fan-curved-True-0-False-4-5-7-8-16-1.2]": 0.7579160630120896, + "scico/test/linop/test_radon_svmbir.py::test_prox[fan-curved-True-0-True-4-5-7-8-16-1.2]": 0.7502249060198665, + "scico/test/linop/test_radon_svmbir.py::test_prox[fan-curved-True-0.1-False-4-5-7-8-16-1.2]": 0.7697738080169074, + "scico/test/linop/test_radon_svmbir.py::test_prox[fan-curved-True-0.1-True-4-5-7-8-16-1.2]": 0.7653815310914069, + "scico/test/linop/test_radon_svmbir.py::test_prox[fan-flat-False-0-False-4-5-7-8-16-1.2]": 0.73426889203256, + "scico/test/linop/test_radon_svmbir.py::test_prox[fan-flat-False-0-True-4-5-7-8-16-1.2]": 0.7165462640114129, + "scico/test/linop/test_radon_svmbir.py::test_prox[fan-flat-False-0.1-False-4-5-7-8-16-1.2]": 0.7861618440947495, + "scico/test/linop/test_radon_svmbir.py::test_prox[fan-flat-False-0.1-True-4-5-7-8-16-1.2]": 0.8234918090165593, + "scico/test/linop/test_radon_svmbir.py::test_prox[fan-flat-True-0-False-4-5-7-8-16-1.2]": 0.7510283380397595, + "scico/test/linop/test_radon_svmbir.py::test_prox[fan-flat-True-0-True-4-5-7-8-16-1.2]": 0.747718638041988, + "scico/test/linop/test_radon_svmbir.py::test_prox[fan-flat-True-0.1-False-4-5-7-8-16-1.2]": 0.7646361719816923, + "scico/test/linop/test_radon_svmbir.py::test_prox[fan-flat-True-0.1-True-4-5-7-8-16-1.2]": 0.8185825060354546, + "scico/test/linop/test_radon_svmbir.py::test_prox[parallel-False-0-False-4-5-7-8-16-1.2]": 0.9054147750139236, + "scico/test/linop/test_radon_svmbir.py::test_prox[parallel-False-0-True-4-5-7-8-16-1.2]": 0.9199706660001539, + "scico/test/linop/test_radon_svmbir.py::test_prox[parallel-False-0.1-False-4-5-7-8-16-1.2]": 1.228598722082097, + "scico/test/linop/test_radon_svmbir.py::test_prox[parallel-False-0.1-True-4-5-7-8-16-1.2]": 1.2250371580012143, + "scico/test/linop/test_radon_svmbir.py::test_prox[parallel-True-0-False-4-5-7-8-16-1.2]": 1.1208888600231148, + "scico/test/linop/test_radon_svmbir.py::test_prox[parallel-True-0-True-4-5-7-8-16-1.2]": 1.6147604940342717, + "scico/test/linop/test_radon_svmbir.py::test_prox[parallel-True-0.1-False-4-5-7-8-16-1.2]": 1.297638707968872, + "scico/test/linop/test_radon_svmbir.py::test_prox[parallel-True-0.1-True-4-5-7-8-16-1.2]": 1.2720791960600764, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[fan-curved-False-0-transmission-False-4-5-7-8-16-1.2]": 0.22122702392516658, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[fan-curved-False-0-transmission-True-4-5-7-8-16-1.2]": 0.22631986695341766, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[fan-curved-False-0-unweighted-False-4-5-7-8-16-1.2]": 0.2233966620406136, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[fan-curved-False-0-unweighted-True-4-5-7-8-16-1.2]": 0.22049635992152616, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[fan-curved-False-0.1-transmission-False-4-5-7-8-16-1.2]": 0.2313299300149083, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[fan-curved-False-0.1-transmission-True-4-5-7-8-16-1.2]": 0.23008524504257366, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[fan-curved-False-0.1-unweighted-False-4-5-7-8-16-1.2]": 0.23038268904201686, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[fan-curved-False-0.1-unweighted-True-4-5-7-8-16-1.2]": 0.22356762998970225, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[fan-curved-True-0-transmission-False-4-5-7-8-16-1.2]": 0.2376189490314573, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[fan-curved-True-0-transmission-True-4-5-7-8-16-1.2]": 0.22468134597875178, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[fan-curved-True-0-unweighted-False-4-5-7-8-16-1.2]": 0.22386416891822591, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[fan-curved-True-0-unweighted-True-4-5-7-8-16-1.2]": 0.23522121808491647, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[fan-curved-True-0.1-transmission-False-4-5-7-8-16-1.2]": 0.22513871698174626, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[fan-curved-True-0.1-transmission-True-4-5-7-8-16-1.2]": 0.2217562830192037, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[fan-curved-True-0.1-unweighted-False-4-5-7-8-16-1.2]": 0.22598584089428186, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[fan-curved-True-0.1-unweighted-True-4-5-7-8-16-1.2]": 0.2263726289384067, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[fan-flat-False-0-transmission-False-4-5-7-8-16-1.2]": 0.23346550296992064, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[fan-flat-False-0-transmission-True-4-5-7-8-16-1.2]": 0.23309727397281677, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[fan-flat-False-0-unweighted-False-4-5-7-8-16-1.2]": 0.22696308797458187, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[fan-flat-False-0-unweighted-True-4-5-7-8-16-1.2]": 0.22270377702079713, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[fan-flat-False-0.1-transmission-False-4-5-7-8-16-1.2]": 0.22878682595910504, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[fan-flat-False-0.1-transmission-True-4-5-7-8-16-1.2]": 0.22254293400328606, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[fan-flat-False-0.1-unweighted-False-4-5-7-8-16-1.2]": 0.22535937401698902, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[fan-flat-False-0.1-unweighted-True-4-5-7-8-16-1.2]": 0.2274773579556495, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[fan-flat-True-0-transmission-False-4-5-7-8-16-1.2]": 0.2259394769789651, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[fan-flat-True-0-transmission-True-4-5-7-8-16-1.2]": 0.23913255898514763, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[fan-flat-True-0-unweighted-False-4-5-7-8-16-1.2]": 0.2248763870447874, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[fan-flat-True-0-unweighted-True-4-5-7-8-16-1.2]": 0.22031164000509307, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[fan-flat-True-0.1-transmission-False-4-5-7-8-16-1.2]": 0.25401524506742135, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[fan-flat-True-0.1-transmission-True-4-5-7-8-16-1.2]": 0.22283588297432289, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[fan-flat-True-0.1-unweighted-False-4-5-7-8-16-1.2]": 0.22540698398370296, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[fan-flat-True-0.1-unweighted-True-4-5-7-8-16-1.2]": 0.2352883919957094, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[parallel-False-0-transmission-False-4-5-7-8-16-1.2]": 0.22776603401871398, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[parallel-False-0-transmission-True-4-5-7-8-16-1.2]": 0.2248022619751282, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[parallel-False-0-unweighted-False-4-5-7-8-16-1.2]": 0.22850062703946605, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[parallel-False-0-unweighted-True-4-5-7-8-16-1.2]": 0.2284449900034815, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[parallel-False-0.1-transmission-False-4-5-7-8-16-1.2]": 0.22393563896184787, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[parallel-False-0.1-transmission-True-4-5-7-8-16-1.2]": 0.22491411794908345, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[parallel-False-0.1-unweighted-False-4-5-7-8-16-1.2]": 0.22663924400694668, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[parallel-False-0.1-unweighted-True-4-5-7-8-16-1.2]": 0.2219014239963144, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[parallel-True-0-transmission-False-4-5-7-8-16-1.2]": 0.4475609950022772, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[parallel-True-0-transmission-True-4-5-7-8-16-1.2]": 0.5503096440224908, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[parallel-True-0-unweighted-False-4-5-7-8-16-1.2]": 0.2269428400322795, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[parallel-True-0-unweighted-True-4-5-7-8-16-1.2]": 0.22636434499872848, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[parallel-True-0.1-transmission-False-4-5-7-8-16-1.2]": 0.22768706496572122, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[parallel-True-0.1-transmission-True-4-5-7-8-16-1.2]": 0.22178284503752366, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[parallel-True-0.1-unweighted-False-4-5-7-8-16-1.2]": 0.2248629960231483, + "scico/test/linop/test_radon_svmbir.py::test_prox_cg[parallel-True-0.1-unweighted-True-4-5-7-8-16-1.2]": 0.22675546602113172, + "scico/test/linop/test_radon_svmbir.py::test_prox_weights[fan-curved-False-0-False-4-5-7-8-16-1.2]": 0.7651062959921546, + "scico/test/linop/test_radon_svmbir.py::test_prox_weights[fan-curved-False-0-True-4-5-7-8-16-1.2]": 0.7593928320566192, + "scico/test/linop/test_radon_svmbir.py::test_prox_weights[fan-curved-False-0.1-False-4-5-7-8-16-1.2]": 0.7536098379641771, + "scico/test/linop/test_radon_svmbir.py::test_prox_weights[fan-curved-False-0.1-True-4-5-7-8-16-1.2]": 0.7499778040219098, + "scico/test/linop/test_radon_svmbir.py::test_prox_weights[fan-curved-True-0-False-4-5-7-8-16-1.2]": 0.7897060399409384, + "scico/test/linop/test_radon_svmbir.py::test_prox_weights[fan-curved-True-0-True-4-5-7-8-16-1.2]": 0.7786274590180255, + "scico/test/linop/test_radon_svmbir.py::test_prox_weights[fan-curved-True-0.1-False-4-5-7-8-16-1.2]": 0.7586928900564089, + "scico/test/linop/test_radon_svmbir.py::test_prox_weights[fan-curved-True-0.1-True-4-5-7-8-16-1.2]": 0.7870969359646551, + "scico/test/linop/test_radon_svmbir.py::test_prox_weights[fan-flat-False-0-False-4-5-7-8-16-1.2]": 0.8089651630143635, + "scico/test/linop/test_radon_svmbir.py::test_prox_weights[fan-flat-False-0-True-4-5-7-8-16-1.2]": 0.798618673987221, + "scico/test/linop/test_radon_svmbir.py::test_prox_weights[fan-flat-False-0.1-False-4-5-7-8-16-1.2]": 0.8187201439868659, + "scico/test/linop/test_radon_svmbir.py::test_prox_weights[fan-flat-False-0.1-True-4-5-7-8-16-1.2]": 0.7618411000585184, + "scico/test/linop/test_radon_svmbir.py::test_prox_weights[fan-flat-True-0-False-4-5-7-8-16-1.2]": 0.8261430150014348, + "scico/test/linop/test_radon_svmbir.py::test_prox_weights[fan-flat-True-0-True-4-5-7-8-16-1.2]": 0.7860033710021526, + "scico/test/linop/test_radon_svmbir.py::test_prox_weights[fan-flat-True-0.1-False-4-5-7-8-16-1.2]": 0.7528884220519103, + "scico/test/linop/test_radon_svmbir.py::test_prox_weights[fan-flat-True-0.1-True-4-5-7-8-16-1.2]": 0.787171489035245, + "scico/test/linop/test_radon_svmbir.py::test_prox_weights[parallel-False-0-False-4-5-7-8-16-1.2]": 0.744496316940058, + "scico/test/linop/test_radon_svmbir.py::test_prox_weights[parallel-False-0-True-4-5-7-8-16-1.2]": 0.7703057150356472, + "scico/test/linop/test_radon_svmbir.py::test_prox_weights[parallel-False-0.1-False-4-5-7-8-16-1.2]": 0.7691361350007355, + "scico/test/linop/test_radon_svmbir.py::test_prox_weights[parallel-False-0.1-True-4-5-7-8-16-1.2]": 0.7286440929747187, + "scico/test/linop/test_radon_svmbir.py::test_prox_weights[parallel-True-0-False-4-5-7-8-16-1.2]": 0.9201248640310951, + "scico/test/linop/test_radon_svmbir.py::test_prox_weights[parallel-True-0-True-4-5-7-8-16-1.2]": 0.8640378009295091, + "scico/test/linop/test_radon_svmbir.py::test_prox_weights[parallel-True-0.1-False-4-5-7-8-16-1.2]": 0.9740140549838543, + "scico/test/linop/test_radon_svmbir.py::test_prox_weights[parallel-True-0.1-True-4-5-7-8-16-1.2]": 0.7454695460037328, + "scico/test/linop/test_stack.py::TestBlockDiagonalLinearOperator::test_adjoint": 0.09494103997712955, + "scico/test/linop/test_stack.py::TestBlockDiagonalLinearOperator::test_apply": 0.20982298004673794, + "scico/test/linop/test_stack.py::TestBlockDiagonalLinearOperator::test_input_collapse": 0.04175049503101036, + "scico/test/linop/test_stack.py::TestBlockDiagonalLinearOperator::test_output_collapse": 0.06493102898821235, + "scico/test/linop/test_stack.py::TestVerticalStack::test_adjoint[False-False]": 0.8342463690787554, + "scico/test/linop/test_stack.py::TestVerticalStack::test_adjoint[False-True]": 0.4581361939199269, + "scico/test/linop/test_stack.py::TestVerticalStack::test_adjoint[True-False]": 0.41683568502776325, + "scico/test/linop/test_stack.py::TestVerticalStack::test_adjoint[True-True]": 0.45202910905936733, + "scico/test/linop/test_stack.py::TestVerticalStack::test_algebra[False-False]": 0.7146956279757433, + "scico/test/linop/test_stack.py::TestVerticalStack::test_algebra[False-True]": 0.6722920751199126, + "scico/test/linop/test_stack.py::TestVerticalStack::test_algebra[True-False]": 0.8014960089349188, + "scico/test/linop/test_stack.py::TestVerticalStack::test_algebra[True-True]": 0.8294107429683208, + "scico/test/linop/test_stack.py::TestVerticalStack::test_construct[False]": 0.4879604179877788, + "scico/test/linop/test_stack.py::TestVerticalStack::test_construct[True]": 0.6030583689571358, + "scico/test/optimize/test_admm.py::TestCircularConvolveSolve::test_admm": 1.4857948949793354, + "scico/test/optimize/test_admm.py::TestComplex::test_admm_generic": 5.31828006595606, + "scico/test/optimize/test_admm.py::TestComplex::test_admm_quadratic": 0.3748738630092703, + "scico/test/optimize/test_admm.py::TestMisc::test_admm": 0.6784124909900129, + "scico/test/optimize/test_admm.py::TestReal::test_admm_generic": 3.2768732130061835, + "scico/test/optimize/test_admm.py::TestReal::test_admm_quadratic_jax": 4.24879087600857, + "scico/test/optimize/test_admm.py::TestReal::test_admm_quadratic_relax": 4.244783506030217, + "scico/test/optimize/test_admm.py::TestReal::test_admm_quadratic_scico": 0.2542282220092602, + "scico/test/optimize/test_admm.py::TestRealWeighted::test_admm_quadratic": 0.3562849690206349, + "scico/test/optimize/test_ladmm.py::TestBlockArray::test_blockarray": 0.3432747959741391, + "scico/test/optimize/test_ladmm.py::TestComplex::test_ladmm": 1.3730241929879412, + "scico/test/optimize/test_ladmm.py::TestMisc::test_callback": 0.29591473401524127, + "scico/test/optimize/test_ladmm.py::TestMisc::test_itstat": 0.033141085994429886, + "scico/test/optimize/test_ladmm.py::TestReal::test_ladmm": 1.0681118129868992, + "scico/test/optimize/test_padmm.py::TestBlockArray::test_blockarray_nlpadmm": 0.11667248699814081, + "scico/test/optimize/test_padmm.py::TestBlockArray::test_blockarray_padmm": 0.06565275491448119, + "scico/test/optimize/test_padmm.py::TestComplex::test_nlpadmm": 1.093167578917928, + "scico/test/optimize/test_padmm.py::TestEstimateParameters::test_complex": 0.6717943410039879, + "scico/test/optimize/test_padmm.py::TestEstimateParameters::test_padmm": 0.1545671370695345, + "scico/test/optimize/test_padmm.py::TestEstimateParameters::test_real": 0.31302893796237186, + "scico/test/optimize/test_padmm.py::TestMisc::test_callback": 0.2205350719159469, + "scico/test/optimize/test_padmm.py::TestMisc::test_itstat_nlpadmm": 0.006991577916778624, + "scico/test/optimize/test_padmm.py::TestMisc::test_itstat_padmm": 0.010166009014938027, + "scico/test/optimize/test_padmm.py::TestReal::test_nlpadmm": 0.8703186910133809, + "scico/test/optimize/test_padmm.py::TestReal::test_padmm": 0.43198278005002066, + "scico/test/optimize/test_pdhg.py::TestBlockArray::test_blockarray": 0.02687937702285126, + "scico/test/optimize/test_pdhg.py::TestComplex::test_pdhg": 0.43690673308447003, + "scico/test/optimize/test_pdhg.py::TestEstimateParameters::test_operators": 0.5242845889297314, + "scico/test/optimize/test_pdhg.py::TestEstimateParameters::test_operators_dlft": 0.16229397599818185, + "scico/test/optimize/test_pdhg.py::TestEstimateParameters::test_ratio": 0.056902811978943646, + "scico/test/optimize/test_pdhg.py::TestMisc::test_callback": 0.2089704549871385, + "scico/test/optimize/test_pdhg.py::TestMisc::test_itstat": 0.008209881954826415, + "scico/test/optimize/test_pdhg.py::TestReal::test_nlpdhg": 0.6922628799802624, + "scico/test/optimize/test_pdhg.py::TestReal::test_pdhg": 0.5152600919827819, + "scico/test/optimize/test_pgm.py::TestComplex::test_accelerated_pgm": 0.18879867607029155, + "scico/test/optimize/test_pgm.py::TestComplex::test_accelerated_pgm_line_search": 1.207085227011703, + "scico/test/optimize/test_pgm.py::TestComplex::test_accelerated_pgm_robust_line_search": 1.223056239017751, + "scico/test/optimize/test_pgm.py::TestComplex::test_pgm": 0.514436760044191, + "scico/test/optimize/test_pgm.py::TestComplex::test_pgm_BB_step_size": 0.8139721640036441, + "scico/test/optimize/test_pgm.py::TestComplex::test_pgm_adaptive_BB_step_size": 0.6694705879781395, + "scico/test/optimize/test_pgm.py::TestSet::test_accelerated_pgm": 0.2053732589702122, + "scico/test/optimize/test_pgm.py::TestSet::test_accelerated_pgm_adaptive_BB_step_size_jit": 0.06759226298891008, + "scico/test/optimize/test_pgm.py::TestSet::test_accelerated_pgm_line_search": 2.1961037569562905, + "scico/test/optimize/test_pgm.py::TestSet::test_accelerated_pgm_robust_line_search": 1.4722589969751425, + "scico/test/optimize/test_pgm.py::TestSet::test_pgm": 0.2462682300247252, + "scico/test/optimize/test_pgm.py::TestSet::test_pgm_BB_step_size": 0.8876053530257195, + "scico/test/optimize/test_pgm.py::TestSet::test_pgm_BB_step_size_jit": 0.06596046302001923, + "scico/test/optimize/test_pgm.py::TestSet::test_pgm_adaptive_BB_step_size": 0.7327878370415419, + "scico/test/test_array.py::test_complex_dtype": 0.023142351012211293, + "scico/test/test_array.py::test_ensure_on_device": 0.017597694997675717, + "scico/test/test_array.py::test_indexed_shape[0-shape0]": 0.0006544270436279476, + "scico/test/test_array.py::test_indexed_shape[0-shape1]": 0.0005972450016997755, + "scico/test/test_array.py::test_indexed_shape[slc1-shape0]": 0.0005880179814994335, + "scico/test/test_array.py::test_indexed_shape[slc1-shape1]": 0.0005399129586294293, + "scico/test/test_array.py::test_indexed_shape[slc2-shape0]": 0.0007149900193326175, + "scico/test/test_array.py::test_indexed_shape[slc2-shape1]": 0.0006188569241203368, + "scico/test/test_array.py::test_indexed_shape[slc3-shape0]": 0.000549387070350349, + "scico/test/test_array.py::test_indexed_shape[slc3-shape1]": 0.0004921000218018889, + "scico/test/test_array.py::test_indexed_shape[slc4-shape0]": 0.0005553340306505561, + "scico/test/test_array.py::test_indexed_shape[slc4-shape1]": 0.0006043050088919699, + "scico/test/test_array.py::test_indexed_shape[slc5-shape0]": 0.0009475610568188131, + "scico/test/test_array.py::test_indexed_shape[slc5-shape1]": 0.0006291570025496185, + "scico/test/test_array.py::test_indexed_shape[slc6-shape0]": 0.001163296983577311, + "scico/test/test_array.py::test_indexed_shape[slc6-shape1]": 0.0005759339546784759, + "scico/test/test_array.py::test_is_complex_dtype": 0.0005281470366753638, + "scico/test/test_array.py::test_is_nested": 0.0005223400657996535, + "scico/test/test_array.py::test_is_real_dtype": 0.0006818719557486475, + "scico/test/test_array.py::test_no_nan_divide_array": 0.39659343799576163, + "scico/test/test_array.py::test_no_nan_divide_blockarray": 0.1964964100625366, + "scico/test/test_array.py::test_parse_axes": 0.0009114040294662118, + "scico/test/test_array.py::test_real_dtype": 0.019873280019965023, + "scico/test/test_array.py::test_slice_length[1--1-0-16]": 0.0005876240320503712, + "scico/test/test_array.py::test_slice_length[1--1-0-17]": 0.0006224070093594491, + "scico/test/test_array.py::test_slice_length[1--1-0-4]": 0.0006647200207225978, + "scico/test/test_array.py::test_slice_length[1--1-0-5]": 0.0006166929961182177, + "scico/test/test_array.py::test_slice_length[1--1-0-8]": 0.0006029189680702984, + "scico/test/test_array.py::test_slice_length[1--1-1-16]": 0.0005539309931918979, + "scico/test/test_array.py::test_slice_length[1--1-1-17]": 0.0007057120092213154, + "scico/test/test_array.py::test_slice_length[1--1-1-4]": 0.0006370689370669425, + "scico/test/test_array.py::test_slice_length[1--1-1-5]": 0.0006059911102056503, + "scico/test/test_array.py::test_slice_length[1--1-1-8]": 0.0005467850132845342, + "scico/test/test_array.py::test_slice_length[1--1-2-16]": 0.0006085639470256865, + "scico/test/test_array.py::test_slice_length[1--1-2-17]": 0.09851102397078648, + "scico/test/test_array.py::test_slice_length[1--1-2-4]": 0.0005976849934086204, + "scico/test/test_array.py::test_slice_length[1--1-2-5]": 0.0005960619891993701, + "scico/test/test_array.py::test_slice_length[1--1-2-8]": 0.0006122760241851211, + "scico/test/test_array.py::test_slice_length[1--1-3-16]": 0.00102012709248811, + "scico/test/test_array.py::test_slice_length[1--1-3-17]": 0.0010711760260164738, + "scico/test/test_array.py::test_slice_length[1--1-3-4]": 0.001145360933151096, + "scico/test/test_array.py::test_slice_length[1--1-3-5]": 0.0010352840181440115, + "scico/test/test_array.py::test_slice_length[1--1-3-8]": 0.0009767739684320986, + "scico/test/test_array.py::test_slice_length[1--1-None-16]": 0.0006463599856942892, + "scico/test/test_array.py::test_slice_length[1--1-None-17]": 0.0006114559946581721, + "scico/test/test_array.py::test_slice_length[1--1-None-4]": 0.0006838330300524831, + "scico/test/test_array.py::test_slice_length[1--1-None-5]": 0.0006502919713966548, + "scico/test/test_array.py::test_slice_length[1--1-None-8]": 0.0007462130161002278, + "scico/test/test_array.py::test_slice_length[1--2-0-16]": 0.0007500560604967177, + "scico/test/test_array.py::test_slice_length[1--2-0-17]": 0.0008331439457833767, + "scico/test/test_array.py::test_slice_length[1--2-0-4]": 0.0005964830052107573, + "scico/test/test_array.py::test_slice_length[1--2-0-5]": 0.0006588290561921895, + "scico/test/test_array.py::test_slice_length[1--2-0-8]": 0.001102647976949811, + "scico/test/test_array.py::test_slice_length[1--2-1-16]": 0.0006426740437746048, + "scico/test/test_array.py::test_slice_length[1--2-1-17]": 0.0006363830179907382, + "scico/test/test_array.py::test_slice_length[1--2-1-4]": 0.0007879440090619028, + "scico/test/test_array.py::test_slice_length[1--2-1-5]": 0.000821211957372725, + "scico/test/test_array.py::test_slice_length[1--2-1-8]": 0.0006144630024209619, + "scico/test/test_array.py::test_slice_length[1--2-2-16]": 0.0011946579907089472, + "scico/test/test_array.py::test_slice_length[1--2-2-17]": 0.0006117569864727557, + "scico/test/test_array.py::test_slice_length[1--2-2-4]": 0.0006103590130805969, + "scico/test/test_array.py::test_slice_length[1--2-2-5]": 0.0006950720562599599, + "scico/test/test_array.py::test_slice_length[1--2-2-8]": 0.000599005026742816, + "scico/test/test_array.py::test_slice_length[1--2-3-16]": 0.0006303479894995689, + "scico/test/test_array.py::test_slice_length[1--2-3-17]": 0.0009382230346091092, + "scico/test/test_array.py::test_slice_length[1--2-3-4]": 0.0006005000323057175, + "scico/test/test_array.py::test_slice_length[1--2-3-5]": 0.0005831469898112118, + "scico/test/test_array.py::test_slice_length[1--2-3-8]": 0.0006040320149622858, + "scico/test/test_array.py::test_slice_length[1--2-None-16]": 0.0005961920251138508, + "scico/test/test_array.py::test_slice_length[1--2-None-17]": 0.0006257760105654597, + "scico/test/test_array.py::test_slice_length[1--2-None-4]": 0.0006309800664894283, + "scico/test/test_array.py::test_slice_length[1--2-None-5]": 0.0006781740230508149, + "scico/test/test_array.py::test_slice_length[1--2-None-8]": 0.0005995779647491872, + "scico/test/test_array.py::test_slice_length[1-0-0-16]": 0.0005959619884379208, + "scico/test/test_array.py::test_slice_length[1-0-0-17]": 0.000689278997015208, + "scico/test/test_array.py::test_slice_length[1-0-0-4]": 0.00104308599838987, + "scico/test/test_array.py::test_slice_length[1-0-0-5]": 0.0006138139870017767, + "scico/test/test_array.py::test_slice_length[1-0-0-8]": 0.0006113230483606458, + "scico/test/test_array.py::test_slice_length[1-0-1-16]": 0.0006260140798985958, + "scico/test/test_array.py::test_slice_length[1-0-1-17]": 0.0007042459910735488, + "scico/test/test_array.py::test_slice_length[1-0-1-4]": 0.0006109160021878779, + "scico/test/test_array.py::test_slice_length[1-0-1-5]": 0.0006900919834151864, + "scico/test/test_array.py::test_slice_length[1-0-1-8]": 0.0006060299929231405, + "scico/test/test_array.py::test_slice_length[1-0-2-16]": 0.0007120039081200957, + "scico/test/test_array.py::test_slice_length[1-0-2-17]": 0.0006246190750971437, + "scico/test/test_array.py::test_slice_length[1-0-2-4]": 0.0007649619947187603, + "scico/test/test_array.py::test_slice_length[1-0-2-5]": 0.0005743600195273757, + "scico/test/test_array.py::test_slice_length[1-0-2-8]": 0.0005906160222366452, + "scico/test/test_array.py::test_slice_length[1-0-3-16]": 0.0006177629693411291, + "scico/test/test_array.py::test_slice_length[1-0-3-17]": 0.0007116830674931407, + "scico/test/test_array.py::test_slice_length[1-0-3-4]": 0.0006231649895198643, + "scico/test/test_array.py::test_slice_length[1-0-3-5]": 0.0006353529752232134, + "scico/test/test_array.py::test_slice_length[1-0-3-8]": 0.0006700289668515325, + "scico/test/test_array.py::test_slice_length[1-0-None-16]": 0.0006034090183675289, + "scico/test/test_array.py::test_slice_length[1-0-None-17]": 0.0005980770220048726, + "scico/test/test_array.py::test_slice_length[1-0-None-4]": 0.0005981639842502773, + "scico/test/test_array.py::test_slice_length[1-0-None-5]": 0.0005960589624010026, + "scico/test/test_array.py::test_slice_length[1-0-None-8]": 0.0009642079821787775, + "scico/test/test_array.py::test_slice_length[1-1-0-16]": 0.0005686579970642924, + "scico/test/test_array.py::test_slice_length[1-1-0-17]": 0.0006139029865153134, + "scico/test/test_array.py::test_slice_length[1-1-0-4]": 0.0006462590536102653, + "scico/test/test_array.py::test_slice_length[1-1-0-5]": 0.0006942609907127917, + "scico/test/test_array.py::test_slice_length[1-1-0-8]": 0.0006313000340014696, + "scico/test/test_array.py::test_slice_length[1-1-1-16]": 0.0006076159770600498, + "scico/test/test_array.py::test_slice_length[1-1-1-17]": 0.0006183259538374841, + "scico/test/test_array.py::test_slice_length[1-1-1-4]": 0.0006355050718411803, + "scico/test/test_array.py::test_slice_length[1-1-1-5]": 0.0006278610089793801, + "scico/test/test_array.py::test_slice_length[1-1-1-8]": 0.0006325590657070279, + "scico/test/test_array.py::test_slice_length[1-1-2-16]": 0.0006210230640135705, + "scico/test/test_array.py::test_slice_length[1-1-2-17]": 0.0006294109625741839, + "scico/test/test_array.py::test_slice_length[1-1-2-4]": 0.0006411040085367858, + "scico/test/test_array.py::test_slice_length[1-1-2-5]": 0.0007086329278536141, + "scico/test/test_array.py::test_slice_length[1-1-2-8]": 0.0006521429750137031, + "scico/test/test_array.py::test_slice_length[1-1-3-16]": 0.0006208819104358554, + "scico/test/test_array.py::test_slice_length[1-1-3-17]": 0.0006089460221119225, + "scico/test/test_array.py::test_slice_length[1-1-3-4]": 0.0006683600367978215, + "scico/test/test_array.py::test_slice_length[1-1-3-5]": 0.000623778032604605, + "scico/test/test_array.py::test_slice_length[1-1-3-8]": 0.0006266310228966177, + "scico/test/test_array.py::test_slice_length[1-1-None-16]": 0.0007562880055047572, + "scico/test/test_array.py::test_slice_length[1-1-None-17]": 0.0006596539751626551, + "scico/test/test_array.py::test_slice_length[1-1-None-4]": 0.0007106600678525865, + "scico/test/test_array.py::test_slice_length[1-1-None-5]": 0.0006144409999251366, + "scico/test/test_array.py::test_slice_length[1-1-None-8]": 0.000620862003415823, + "scico/test/test_array.py::test_slice_length[1-2-0-16]": 0.0006230779690667987, + "scico/test/test_array.py::test_slice_length[1-2-0-17]": 0.0011205969494767487, + "scico/test/test_array.py::test_slice_length[1-2-0-4]": 0.0007459520129486918, + "scico/test/test_array.py::test_slice_length[1-2-0-5]": 0.000669662025757134, + "scico/test/test_array.py::test_slice_length[1-2-0-8]": 0.0006261109956540167, + "scico/test/test_array.py::test_slice_length[1-2-1-16]": 0.0006295440252870321, + "scico/test/test_array.py::test_slice_length[1-2-1-17]": 0.0006141979829408228, + "scico/test/test_array.py::test_slice_length[1-2-1-4]": 0.0006135160219855607, + "scico/test/test_array.py::test_slice_length[1-2-1-5]": 0.0006149349501356483, + "scico/test/test_array.py::test_slice_length[1-2-1-8]": 0.0006109099485911429, + "scico/test/test_array.py::test_slice_length[1-2-2-16]": 0.0006124680512584746, + "scico/test/test_array.py::test_slice_length[1-2-2-17]": 0.0006179070333018899, + "scico/test/test_array.py::test_slice_length[1-2-2-4]": 0.000631547998636961, + "scico/test/test_array.py::test_slice_length[1-2-2-5]": 0.0006149070104584098, + "scico/test/test_array.py::test_slice_length[1-2-2-8]": 0.0006817479734309018, + "scico/test/test_array.py::test_slice_length[1-2-3-16]": 0.0008190739899873734, + "scico/test/test_array.py::test_slice_length[1-2-3-17]": 0.0006067479844205081, + "scico/test/test_array.py::test_slice_length[1-2-3-4]": 0.0006749900057911873, + "scico/test/test_array.py::test_slice_length[1-2-3-5]": 0.0006474520778283477, + "scico/test/test_array.py::test_slice_length[1-2-3-8]": 0.0006205490208230913, + "scico/test/test_array.py::test_slice_length[1-2-None-16]": 0.000606100948061794, + "scico/test/test_array.py::test_slice_length[1-2-None-17]": 0.0006091860122978687, + "scico/test/test_array.py::test_slice_length[1-2-None-4]": 0.0006116961012594402, + "scico/test/test_array.py::test_slice_length[1-2-None-5]": 0.0006190499407239258, + "scico/test/test_array.py::test_slice_length[1-2-None-8]": 0.0006158449687063694, + "scico/test/test_array.py::test_slice_length[1-None-0-16]": 0.0006062790635041893, + "scico/test/test_array.py::test_slice_length[1-None-0-17]": 0.0006688979919999838, + "scico/test/test_array.py::test_slice_length[1-None-0-4]": 0.000641042017377913, + "scico/test/test_array.py::test_slice_length[1-None-0-5]": 0.000614585995208472, + "scico/test/test_array.py::test_slice_length[1-None-0-8]": 0.0007237170357257128, + "scico/test/test_array.py::test_slice_length[1-None-1-16]": 0.0006044559995643795, + "scico/test/test_array.py::test_slice_length[1-None-1-17]": 0.0006085880449973047, + "scico/test/test_array.py::test_slice_length[1-None-1-4]": 0.0006609100382775068, + "scico/test/test_array.py::test_slice_length[1-None-1-5]": 0.0006329529569484293, + "scico/test/test_array.py::test_slice_length[1-None-1-8]": 0.0006362429703585804, + "scico/test/test_array.py::test_slice_length[1-None-2-16]": 0.0006202380172908306, + "scico/test/test_array.py::test_slice_length[1-None-2-17]": 0.0006194960442371666, + "scico/test/test_array.py::test_slice_length[1-None-2-4]": 0.0007862659986130893, + "scico/test/test_array.py::test_slice_length[1-None-2-5]": 0.0006363579886965454, + "scico/test/test_array.py::test_slice_length[1-None-2-8]": 0.0006045849295333028, + "scico/test/test_array.py::test_slice_length[1-None-3-16]": 0.0006320650572888553, + "scico/test/test_array.py::test_slice_length[1-None-3-17]": 0.0006706140120513737, + "scico/test/test_array.py::test_slice_length[1-None-3-4]": 0.000698129995726049, + "scico/test/test_array.py::test_slice_length[1-None-3-5]": 0.0006064500194042921, + "scico/test/test_array.py::test_slice_length[1-None-3-8]": 0.0006056120619177818, + "scico/test/test_array.py::test_slice_length[1-None-None-16]": 0.0008009889861568809, + "scico/test/test_array.py::test_slice_length[1-None-None-17]": 0.0007031959830783308, + "scico/test/test_array.py::test_slice_length[1-None-None-4]": 0.000866613001562655, + "scico/test/test_array.py::test_slice_length[1-None-None-5]": 0.0006048009963706136, + "scico/test/test_array.py::test_slice_length[1-None-None-8]": 0.0006063940236344934, + "scico/test/test_array.py::test_slice_length[2--1-0-16]": 0.0006464970647357404, + "scico/test/test_array.py::test_slice_length[2--1-0-17]": 0.0006213070009835064, + "scico/test/test_array.py::test_slice_length[2--1-0-4]": 0.0006419789860956371, + "scico/test/test_array.py::test_slice_length[2--1-0-5]": 0.0007234539953060448, + "scico/test/test_array.py::test_slice_length[2--1-0-8]": 0.0008630930096842349, + "scico/test/test_array.py::test_slice_length[2--1-1-16]": 0.000761136005166918, + "scico/test/test_array.py::test_slice_length[2--1-1-17]": 0.0006499309674836695, + "scico/test/test_array.py::test_slice_length[2--1-1-4]": 0.0006159349577501416, + "scico/test/test_array.py::test_slice_length[2--1-1-5]": 0.0006052429671399295, + "scico/test/test_array.py::test_slice_length[2--1-1-8]": 0.0006099439924582839, + "scico/test/test_array.py::test_slice_length[2--1-2-16]": 0.0006281549576669931, + "scico/test/test_array.py::test_slice_length[2--1-2-17]": 0.000600048981141299, + "scico/test/test_array.py::test_slice_length[2--1-2-4]": 0.0006221589865162969, + "scico/test/test_array.py::test_slice_length[2--1-2-5]": 0.000615408003795892, + "scico/test/test_array.py::test_slice_length[2--1-2-8]": 0.0006521540344692767, + "scico/test/test_array.py::test_slice_length[2--1-3-16]": 0.0007386439829133451, + "scico/test/test_array.py::test_slice_length[2--1-3-17]": 0.0006302769179455936, + "scico/test/test_array.py::test_slice_length[2--1-3-4]": 0.00061315594939515, + "scico/test/test_array.py::test_slice_length[2--1-3-5]": 0.0005620119627565145, + "scico/test/test_array.py::test_slice_length[2--1-3-8]": 0.0006559190223924816, + "scico/test/test_array.py::test_slice_length[2--1-None-16]": 0.0007400049362331629, + "scico/test/test_array.py::test_slice_length[2--1-None-17]": 0.0008902580011636019, + "scico/test/test_array.py::test_slice_length[2--1-None-4]": 0.0006972109549678862, + "scico/test/test_array.py::test_slice_length[2--1-None-5]": 0.000564156100153923, + "scico/test/test_array.py::test_slice_length[2--1-None-8]": 0.0005661360337398946, + "scico/test/test_array.py::test_slice_length[2--2-0-16]": 0.0006109370151534677, + "scico/test/test_array.py::test_slice_length[2--2-0-17]": 0.0006029059877619147, + "scico/test/test_array.py::test_slice_length[2--2-0-4]": 0.0006575910374522209, + "scico/test/test_array.py::test_slice_length[2--2-0-5]": 0.0006129999528639019, + "scico/test/test_array.py::test_slice_length[2--2-0-8]": 0.0006002560257911682, + "scico/test/test_array.py::test_slice_length[2--2-1-16]": 0.0006123390048742294, + "scico/test/test_array.py::test_slice_length[2--2-1-17]": 0.0006216020556166768, + "scico/test/test_array.py::test_slice_length[2--2-1-4]": 0.000650155998300761, + "scico/test/test_array.py::test_slice_length[2--2-1-5]": 0.000745968078263104, + "scico/test/test_array.py::test_slice_length[2--2-1-8]": 0.0006134429713711143, + "scico/test/test_array.py::test_slice_length[2--2-2-16]": 0.0006098890444263816, + "scico/test/test_array.py::test_slice_length[2--2-2-17]": 0.000691812951117754, + "scico/test/test_array.py::test_slice_length[2--2-2-4]": 0.0006074209813959897, + "scico/test/test_array.py::test_slice_length[2--2-2-5]": 0.0007092989981174469, + "scico/test/test_array.py::test_slice_length[2--2-2-8]": 0.0006842300062999129, + "scico/test/test_array.py::test_slice_length[2--2-3-16]": 0.0006055330159142613, + "scico/test/test_array.py::test_slice_length[2--2-3-17]": 0.0006310070166364312, + "scico/test/test_array.py::test_slice_length[2--2-3-4]": 0.0006342330598272383, + "scico/test/test_array.py::test_slice_length[2--2-3-5]": 0.0006159890908747911, + "scico/test/test_array.py::test_slice_length[2--2-3-8]": 0.0006033559329807758, + "scico/test/test_array.py::test_slice_length[2--2-None-16]": 0.0006266309646889567, + "scico/test/test_array.py::test_slice_length[2--2-None-17]": 0.0006394219817593694, + "scico/test/test_array.py::test_slice_length[2--2-None-4]": 0.0006069859373383224, + "scico/test/test_array.py::test_slice_length[2--2-None-5]": 0.0009132370469160378, + "scico/test/test_array.py::test_slice_length[2--2-None-8]": 0.0006141900084912777, + "scico/test/test_array.py::test_slice_length[2-0-0-16]": 0.0007570461020804942, + "scico/test/test_array.py::test_slice_length[2-0-0-17]": 0.0007261380669660866, + "scico/test/test_array.py::test_slice_length[2-0-0-4]": 0.0007261850987561047, + "scico/test/test_array.py::test_slice_length[2-0-0-5]": 0.0007619740208610892, + "scico/test/test_array.py::test_slice_length[2-0-0-8]": 0.000978708965703845, + "scico/test/test_array.py::test_slice_length[2-0-1-16]": 0.0007914989837445319, + "scico/test/test_array.py::test_slice_length[2-0-1-17]": 0.000748241029214114, + "scico/test/test_array.py::test_slice_length[2-0-1-4]": 0.0007880170596763492, + "scico/test/test_array.py::test_slice_length[2-0-1-5]": 0.0007420050678774714, + "scico/test/test_array.py::test_slice_length[2-0-1-8]": 0.000825104012619704, + "scico/test/test_array.py::test_slice_length[2-0-2-16]": 0.0007500920328311622, + "scico/test/test_array.py::test_slice_length[2-0-2-17]": 0.0007383039919659495, + "scico/test/test_array.py::test_slice_length[2-0-2-4]": 0.0007609680178575218, + "scico/test/test_array.py::test_slice_length[2-0-2-5]": 0.0007474369485862553, + "scico/test/test_array.py::test_slice_length[2-0-2-8]": 0.0008282390190288424, + "scico/test/test_array.py::test_slice_length[2-0-3-16]": 0.0008588959462940693, + "scico/test/test_array.py::test_slice_length[2-0-3-17]": 0.000777909008320421, + "scico/test/test_array.py::test_slice_length[2-0-3-4]": 0.0008411150192841887, + "scico/test/test_array.py::test_slice_length[2-0-3-5]": 0.000788033998105675, + "scico/test/test_array.py::test_slice_length[2-0-3-8]": 0.0008058749954216182, + "scico/test/test_array.py::test_slice_length[2-0-None-16]": 0.0007583349361084402, + "scico/test/test_array.py::test_slice_length[2-0-None-17]": 0.0007343619363382459, + "scico/test/test_array.py::test_slice_length[2-0-None-4]": 0.0007642339915037155, + "scico/test/test_array.py::test_slice_length[2-0-None-5]": 0.0007343339966610074, + "scico/test/test_array.py::test_slice_length[2-0-None-8]": 0.0008110879571177065, + "scico/test/test_array.py::test_slice_length[2-1-0-16]": 0.0006572480197064579, + "scico/test/test_array.py::test_slice_length[2-1-0-17]": 0.0006453260430134833, + "scico/test/test_array.py::test_slice_length[2-1-0-4]": 0.0007076139445416629, + "scico/test/test_array.py::test_slice_length[2-1-0-5]": 0.0007029740372672677, + "scico/test/test_array.py::test_slice_length[2-1-0-8]": 0.0007352870889008045, + "scico/test/test_array.py::test_slice_length[2-1-1-16]": 0.0007804199703969061, + "scico/test/test_array.py::test_slice_length[2-1-1-17]": 0.0006823919829912484, + "scico/test/test_array.py::test_slice_length[2-1-1-4]": 0.0006373110227286816, + "scico/test/test_array.py::test_slice_length[2-1-1-5]": 0.0006391819915734231, + "scico/test/test_array.py::test_slice_length[2-1-1-8]": 0.0007159810047596693, + "scico/test/test_array.py::test_slice_length[2-1-2-16]": 0.0006080529419705272, + "scico/test/test_array.py::test_slice_length[2-1-2-17]": 0.000618324032984674, + "scico/test/test_array.py::test_slice_length[2-1-2-4]": 0.0008504000143148005, + "scico/test/test_array.py::test_slice_length[2-1-2-5]": 0.0006247669807635248, + "scico/test/test_array.py::test_slice_length[2-1-2-8]": 0.0007232440402731299, + "scico/test/test_array.py::test_slice_length[2-1-3-16]": 0.0006192700238898396, + "scico/test/test_array.py::test_slice_length[2-1-3-17]": 0.0006714959745295346, + "scico/test/test_array.py::test_slice_length[2-1-3-4]": 0.0006058269646018744, + "scico/test/test_array.py::test_slice_length[2-1-3-5]": 0.0007323159952647984, + "scico/test/test_array.py::test_slice_length[2-1-3-8]": 0.000890907074790448, + "scico/test/test_array.py::test_slice_length[2-1-None-16]": 0.000873380049597472, + "scico/test/test_array.py::test_slice_length[2-1-None-17]": 0.0007699620327912271, + "scico/test/test_array.py::test_slice_length[2-1-None-4]": 0.0008014619816094637, + "scico/test/test_array.py::test_slice_length[2-1-None-5]": 0.0008155289688147604, + "scico/test/test_array.py::test_slice_length[2-1-None-8]": 0.0007452039862982929, + "scico/test/test_array.py::test_slice_length[2-2-0-16]": 0.0006025059847161174, + "scico/test/test_array.py::test_slice_length[2-2-0-17]": 0.0006037539569661021, + "scico/test/test_array.py::test_slice_length[2-2-0-4]": 0.0007067699334584177, + "scico/test/test_array.py::test_slice_length[2-2-0-5]": 0.0006719270022585988, + "scico/test/test_array.py::test_slice_length[2-2-0-8]": 0.0006798460381105542, + "scico/test/test_array.py::test_slice_length[2-2-1-16]": 0.0006120739853940904, + "scico/test/test_array.py::test_slice_length[2-2-1-17]": 0.0006133959395810962, + "scico/test/test_array.py::test_slice_length[2-2-1-4]": 0.0006054480327293277, + "scico/test/test_array.py::test_slice_length[2-2-1-5]": 0.0006775659858249128, + "scico/test/test_array.py::test_slice_length[2-2-1-8]": 0.000610621995292604, + "scico/test/test_array.py::test_slice_length[2-2-2-16]": 0.0006230349536053836, + "scico/test/test_array.py::test_slice_length[2-2-2-17]": 0.0005969979683868587, + "scico/test/test_array.py::test_slice_length[2-2-2-4]": 0.0006056320271454751, + "scico/test/test_array.py::test_slice_length[2-2-2-5]": 0.0006066210335120559, + "scico/test/test_array.py::test_slice_length[2-2-2-8]": 0.0006733349873684347, + "scico/test/test_array.py::test_slice_length[2-2-3-16]": 0.0005960179842077196, + "scico/test/test_array.py::test_slice_length[2-2-3-17]": 0.0006156879244372249, + "scico/test/test_array.py::test_slice_length[2-2-3-4]": 0.0006160510238260031, + "scico/test/test_array.py::test_slice_length[2-2-3-5]": 0.0006067460053600371, + "scico/test/test_array.py::test_slice_length[2-2-3-8]": 0.0006197659531608224, + "scico/test/test_array.py::test_slice_length[2-2-None-16]": 0.0005535059608519077, + "scico/test/test_array.py::test_slice_length[2-2-None-17]": 0.0006400759448297322, + "scico/test/test_array.py::test_slice_length[2-2-None-4]": 0.0008185620536096394, + "scico/test/test_array.py::test_slice_length[2-2-None-5]": 0.0006069890223443508, + "scico/test/test_array.py::test_slice_length[2-2-None-8]": 0.0006233709864318371, + "scico/test/test_array.py::test_slice_length[2-None-0-16]": 0.0009892410598695278, + "scico/test/test_array.py::test_slice_length[2-None-0-17]": 0.0008935989462770522, + "scico/test/test_array.py::test_slice_length[2-None-0-4]": 0.0009413090301677585, + "scico/test/test_array.py::test_slice_length[2-None-0-5]": 0.0009081039461307228, + "scico/test/test_array.py::test_slice_length[2-None-0-8]": 0.0009251639130525291, + "scico/test/test_array.py::test_slice_length[2-None-1-16]": 0.0008249209495261312, + "scico/test/test_array.py::test_slice_length[2-None-1-17]": 0.0008654650300741196, + "scico/test/test_array.py::test_slice_length[2-None-1-4]": 0.0010558500653132796, + "scico/test/test_array.py::test_slice_length[2-None-1-5]": 0.0008742910576984286, + "scico/test/test_array.py::test_slice_length[2-None-1-8]": 0.0008707880042493343, + "scico/test/test_array.py::test_slice_length[2-None-2-16]": 0.0007347490172833204, + "scico/test/test_array.py::test_slice_length[2-None-2-17]": 0.0008211230742745101, + "scico/test/test_array.py::test_slice_length[2-None-2-4]": 0.0009321270626969635, + "scico/test/test_array.py::test_slice_length[2-None-2-5]": 0.0007395260035991669, + "scico/test/test_array.py::test_slice_length[2-None-2-8]": 0.000813820050098002, + "scico/test/test_array.py::test_slice_length[2-None-3-16]": 0.0008161239675246179, + "scico/test/test_array.py::test_slice_length[2-None-3-17]": 0.000942129991017282, + "scico/test/test_array.py::test_slice_length[2-None-3-4]": 0.0007265000604093075, + "scico/test/test_array.py::test_slice_length[2-None-3-5]": 0.0007413330022245646, + "scico/test/test_array.py::test_slice_length[2-None-3-8]": 0.0007491169380955398, + "scico/test/test_array.py::test_slice_length[2-None-None-16]": 0.0009483670582994819, + "scico/test/test_array.py::test_slice_length[2-None-None-17]": 0.0009217030019499362, + "scico/test/test_array.py::test_slice_length[2-None-None-4]": 0.0009655109606683254, + "scico/test/test_array.py::test_slice_length[2-None-None-5]": 0.0009459140128456056, + "scico/test/test_array.py::test_slice_length[2-None-None-8]": 0.0010082279914058745, + "scico/test/test_array.py::test_slice_length[3--1-0-16]": 0.0006760289543308318, + "scico/test/test_array.py::test_slice_length[3--1-0-17]": 0.0006203870289027691, + "scico/test/test_array.py::test_slice_length[3--1-0-4]": 0.0006219869828782976, + "scico/test/test_array.py::test_slice_length[3--1-0-5]": 0.0006212649750523269, + "scico/test/test_array.py::test_slice_length[3--1-0-8]": 0.000610848015639931, + "scico/test/test_array.py::test_slice_length[3--1-1-16]": 0.0006302269757725298, + "scico/test/test_array.py::test_slice_length[3--1-1-17]": 0.0006800460396334529, + "scico/test/test_array.py::test_slice_length[3--1-1-4]": 0.0006238899077288806, + "scico/test/test_array.py::test_slice_length[3--1-1-5]": 0.0006157749448902905, + "scico/test/test_array.py::test_slice_length[3--1-1-8]": 0.0006300119566731155, + "scico/test/test_array.py::test_slice_length[3--1-2-16]": 0.0006174680311232805, + "scico/test/test_array.py::test_slice_length[3--1-2-17]": 0.0006239050417207181, + "scico/test/test_array.py::test_slice_length[3--1-2-4]": 0.0006226399564184248, + "scico/test/test_array.py::test_slice_length[3--1-2-5]": 0.0006250199512578547, + "scico/test/test_array.py::test_slice_length[3--1-2-8]": 0.0011858770158141851, + "scico/test/test_array.py::test_slice_length[3--1-3-16]": 0.0006003670278005302, + "scico/test/test_array.py::test_slice_length[3--1-3-17]": 0.0006275279447436333, + "scico/test/test_array.py::test_slice_length[3--1-3-4]": 0.0006227070116437972, + "scico/test/test_array.py::test_slice_length[3--1-3-5]": 0.000639772042632103, + "scico/test/test_array.py::test_slice_length[3--1-3-8]": 0.000617982994299382, + "scico/test/test_array.py::test_slice_length[3--1-None-16]": 0.0006182990618981421, + "scico/test/test_array.py::test_slice_length[3--1-None-17]": 0.0006853999802842736, + "scico/test/test_array.py::test_slice_length[3--1-None-4]": 0.0006152049754746258, + "scico/test/test_array.py::test_slice_length[3--1-None-5]": 0.0006267799763008952, + "scico/test/test_array.py::test_slice_length[3--1-None-8]": 0.0006244130781851709, + "scico/test/test_array.py::test_slice_length[3--2-0-16]": 0.0007617580122314394, + "scico/test/test_array.py::test_slice_length[3--2-0-17]": 0.0008698289166204631, + "scico/test/test_array.py::test_slice_length[3--2-0-4]": 0.000699169933795929, + "scico/test/test_array.py::test_slice_length[3--2-0-5]": 0.0005993039812892675, + "scico/test/test_array.py::test_slice_length[3--2-0-8]": 0.0006091570248827338, + "scico/test/test_array.py::test_slice_length[3--2-1-16]": 0.0006437870324589312, + "scico/test/test_array.py::test_slice_length[3--2-1-17]": 0.0006089950329624116, + "scico/test/test_array.py::test_slice_length[3--2-1-4]": 0.0007204239955171943, + "scico/test/test_array.py::test_slice_length[3--2-1-5]": 0.000659872021060437, + "scico/test/test_array.py::test_slice_length[3--2-1-8]": 0.0008683869964443147, + "scico/test/test_array.py::test_slice_length[3--2-2-16]": 0.0006006000330671668, + "scico/test/test_array.py::test_slice_length[3--2-2-17]": 0.0006244039977900684, + "scico/test/test_array.py::test_slice_length[3--2-2-4]": 0.0006309909513220191, + "scico/test/test_array.py::test_slice_length[3--2-2-5]": 0.0006051729433238506, + "scico/test/test_array.py::test_slice_length[3--2-2-8]": 0.0006690059672109783, + "scico/test/test_array.py::test_slice_length[3--2-3-16]": 0.0007367149810306728, + "scico/test/test_array.py::test_slice_length[3--2-3-17]": 0.0006212190492078662, + "scico/test/test_array.py::test_slice_length[3--2-3-4]": 0.0008019829401746392, + "scico/test/test_array.py::test_slice_length[3--2-3-5]": 0.0006987720262259245, + "scico/test/test_array.py::test_slice_length[3--2-3-8]": 0.0006691649905405939, + "scico/test/test_array.py::test_slice_length[3--2-None-16]": 0.0006236770423129201, + "scico/test/test_array.py::test_slice_length[3--2-None-17]": 0.0008254870190285146, + "scico/test/test_array.py::test_slice_length[3--2-None-4]": 0.0006120369653217494, + "scico/test/test_array.py::test_slice_length[3--2-None-5]": 0.0005616649868898094, + "scico/test/test_array.py::test_slice_length[3--2-None-8]": 0.0006212039734236896, + "scico/test/test_array.py::test_slice_length[3-0-0-16]": 0.000659012992400676, + "scico/test/test_array.py::test_slice_length[3-0-0-17]": 0.0007564599509350955, + "scico/test/test_array.py::test_slice_length[3-0-0-4]": 0.0006516559515148401, + "scico/test/test_array.py::test_slice_length[3-0-0-5]": 0.0007945870165713131, + "scico/test/test_array.py::test_slice_length[3-0-0-8]": 0.0006559060420840979, + "scico/test/test_array.py::test_slice_length[3-0-1-16]": 0.0007186160073615611, + "scico/test/test_array.py::test_slice_length[3-0-1-17]": 0.0006565150106325746, + "scico/test/test_array.py::test_slice_length[3-0-1-4]": 0.0006385879823938012, + "scico/test/test_array.py::test_slice_length[3-0-1-5]": 0.0006128500099293888, + "scico/test/test_array.py::test_slice_length[3-0-1-8]": 0.0006570640252903104, + "scico/test/test_array.py::test_slice_length[3-0-2-16]": 0.0006483520264737308, + "scico/test/test_array.py::test_slice_length[3-0-2-17]": 0.000621205079369247, + "scico/test/test_array.py::test_slice_length[3-0-2-4]": 0.0007289730128832161, + "scico/test/test_array.py::test_slice_length[3-0-2-5]": 0.0006872350350022316, + "scico/test/test_array.py::test_slice_length[3-0-2-8]": 0.0007536240154877305, + "scico/test/test_array.py::test_slice_length[3-0-3-16]": 0.0006120709585957229, + "scico/test/test_array.py::test_slice_length[3-0-3-17]": 0.0006216370384208858, + "scico/test/test_array.py::test_slice_length[3-0-3-4]": 0.0006940150051377714, + "scico/test/test_array.py::test_slice_length[3-0-3-5]": 0.0006168749532662332, + "scico/test/test_array.py::test_slice_length[3-0-3-8]": 0.0006439751014113426, + "scico/test/test_array.py::test_slice_length[3-0-None-16]": 0.0006630721036344767, + "scico/test/test_array.py::test_slice_length[3-0-None-17]": 0.0007025439408607781, + "scico/test/test_array.py::test_slice_length[3-0-None-4]": 0.0006315649952739477, + "scico/test/test_array.py::test_slice_length[3-0-None-5]": 0.0006376859382726252, + "scico/test/test_array.py::test_slice_length[3-0-None-8]": 0.0006735689239576459, + "scico/test/test_array.py::test_slice_length[3-1-0-16]": 0.0006193760200403631, + "scico/test/test_array.py::test_slice_length[3-1-0-17]": 0.0008252779953181744, + "scico/test/test_array.py::test_slice_length[3-1-0-4]": 0.0006546240183524787, + "scico/test/test_array.py::test_slice_length[3-1-0-5]": 0.0006293110200203955, + "scico/test/test_array.py::test_slice_length[3-1-0-8]": 0.0007378770387731493, + "scico/test/test_array.py::test_slice_length[3-1-1-16]": 0.0006448219646699727, + "scico/test/test_array.py::test_slice_length[3-1-1-17]": 0.0006264690309762955, + "scico/test/test_array.py::test_slice_length[3-1-1-4]": 0.0007684049778617918, + "scico/test/test_array.py::test_slice_length[3-1-1-5]": 0.0006955439457669854, + "scico/test/test_array.py::test_slice_length[3-1-1-8]": 0.0008868789882399142, + "scico/test/test_array.py::test_slice_length[3-1-2-16]": 0.0009923020261339843, + "scico/test/test_array.py::test_slice_length[3-1-2-17]": 0.0006191159482114017, + "scico/test/test_array.py::test_slice_length[3-1-2-4]": 0.0006273670587688684, + "scico/test/test_array.py::test_slice_length[3-1-2-5]": 0.0008353249868378043, + "scico/test/test_array.py::test_slice_length[3-1-2-8]": 0.0006827259785495698, + "scico/test/test_array.py::test_slice_length[3-1-3-16]": 0.0007606929284520447, + "scico/test/test_array.py::test_slice_length[3-1-3-17]": 0.0006165970698930323, + "scico/test/test_array.py::test_slice_length[3-1-3-4]": 0.0006215489120222628, + "scico/test/test_array.py::test_slice_length[3-1-3-5]": 0.0006282999529503286, + "scico/test/test_array.py::test_slice_length[3-1-3-8]": 0.0006172610446810722, + "scico/test/test_array.py::test_slice_length[3-1-None-16]": 0.0006428900524042547, + "scico/test/test_array.py::test_slice_length[3-1-None-17]": 0.0006250530132092535, + "scico/test/test_array.py::test_slice_length[3-1-None-4]": 0.0006116670556366444, + "scico/test/test_array.py::test_slice_length[3-1-None-5]": 0.0006290330202318728, + "scico/test/test_array.py::test_slice_length[3-1-None-8]": 0.0006358220125548542, + "scico/test/test_array.py::test_slice_length[3-2-0-16]": 0.0006256760098040104, + "scico/test/test_array.py::test_slice_length[3-2-0-17]": 0.0006121059996075928, + "scico/test/test_array.py::test_slice_length[3-2-0-4]": 0.0005850069574080408, + "scico/test/test_array.py::test_slice_length[3-2-0-5]": 0.0007149059674702585, + "scico/test/test_array.py::test_slice_length[3-2-0-8]": 0.0006249849102459848, + "scico/test/test_array.py::test_slice_length[3-2-1-16]": 0.0006748320301994681, + "scico/test/test_array.py::test_slice_length[3-2-1-17]": 0.0007701599970459938, + "scico/test/test_array.py::test_slice_length[3-2-1-4]": 0.0008689649985171854, + "scico/test/test_array.py::test_slice_length[3-2-1-5]": 0.0009658969938755035, + "scico/test/test_array.py::test_slice_length[3-2-1-8]": 0.0006127009983174503, + "scico/test/test_array.py::test_slice_length[3-2-2-16]": 0.0006081520114094019, + "scico/test/test_array.py::test_slice_length[3-2-2-17]": 0.0006073930417187512, + "scico/test/test_array.py::test_slice_length[3-2-2-4]": 0.0006845909520052373, + "scico/test/test_array.py::test_slice_length[3-2-2-5]": 0.0006143250502645969, + "scico/test/test_array.py::test_slice_length[3-2-2-8]": 0.0006468840874731541, + "scico/test/test_array.py::test_slice_length[3-2-3-16]": 0.0005887959850952029, + "scico/test/test_array.py::test_slice_length[3-2-3-17]": 0.0006226769182831049, + "scico/test/test_array.py::test_slice_length[3-2-3-4]": 0.000720856012776494, + "scico/test/test_array.py::test_slice_length[3-2-3-5]": 0.0006174849695526063, + "scico/test/test_array.py::test_slice_length[3-2-3-8]": 0.0010305600590072572, + "scico/test/test_array.py::test_slice_length[3-2-None-16]": 0.0006040798616595566, + "scico/test/test_array.py::test_slice_length[3-2-None-17]": 0.0006215699831955135, + "scico/test/test_array.py::test_slice_length[3-2-None-4]": 0.0006407199543900788, + "scico/test/test_array.py::test_slice_length[3-2-None-5]": 0.0006821599672548473, + "scico/test/test_array.py::test_slice_length[3-2-None-8]": 0.0006241290247999132, + "scico/test/test_array.py::test_slice_length[3-None-0-16]": 0.0005791979492641985, + "scico/test/test_array.py::test_slice_length[3-None-0-17]": 0.0007417520391754806, + "scico/test/test_array.py::test_slice_length[3-None-0-4]": 0.0007750229560770094, + "scico/test/test_array.py::test_slice_length[3-None-0-5]": 0.0008949700277298689, + "scico/test/test_array.py::test_slice_length[3-None-0-8]": 0.0007616940420120955, + "scico/test/test_array.py::test_slice_length[3-None-1-16]": 0.0006570240366272628, + "scico/test/test_array.py::test_slice_length[3-None-1-17]": 0.0007922039949335158, + "scico/test/test_array.py::test_slice_length[3-None-1-4]": 0.000710083928424865, + "scico/test/test_array.py::test_slice_length[3-None-1-5]": 0.0006327389855869114, + "scico/test/test_array.py::test_slice_length[3-None-1-8]": 0.0009187620016746223, + "scico/test/test_array.py::test_slice_length[3-None-2-16]": 0.0006423950544558465, + "scico/test/test_array.py::test_slice_length[3-None-2-17]": 0.0006688479334115982, + "scico/test/test_array.py::test_slice_length[3-None-2-4]": 0.0006394900265149772, + "scico/test/test_array.py::test_slice_length[3-None-2-5]": 0.0031477150041610003, + "scico/test/test_array.py::test_slice_length[3-None-2-8]": 0.0007029129774309695, + "scico/test/test_array.py::test_slice_length[3-None-3-16]": 0.0006912550888955593, + "scico/test/test_array.py::test_slice_length[3-None-3-17]": 0.0006288610165938735, + "scico/test/test_array.py::test_slice_length[3-None-3-4]": 0.0006320528918877244, + "scico/test/test_array.py::test_slice_length[3-None-3-5]": 0.0006426000036299229, + "scico/test/test_array.py::test_slice_length[3-None-3-8]": 0.0006913979887031019, + "scico/test/test_array.py::test_slice_length[3-None-None-16]": 0.0006225200486369431, + "scico/test/test_array.py::test_slice_length[3-None-None-17]": 0.0006266269483603537, + "scico/test/test_array.py::test_slice_length[3-None-None-4]": 0.0006214750465005636, + "scico/test/test_array.py::test_slice_length[3-None-None-5]": 0.0006061799358576536, + "scico/test/test_array.py::test_slice_length[3-None-None-8]": 0.0006151269772090018, + "scico/test/test_array.py::test_slice_length[None--1-0-16]": 0.0005999509594403207, + "scico/test/test_array.py::test_slice_length[None--1-0-17]": 0.0006036179838702083, + "scico/test/test_array.py::test_slice_length[None--1-0-4]": 0.0006230990402400494, + "scico/test/test_array.py::test_slice_length[None--1-0-5]": 0.0006278660730458796, + "scico/test/test_array.py::test_slice_length[None--1-0-8]": 0.0007099320064298809, + "scico/test/test_array.py::test_slice_length[None--1-1-16]": 0.0006171470158733428, + "scico/test/test_array.py::test_slice_length[None--1-1-17]": 0.0006071029347367585, + "scico/test/test_array.py::test_slice_length[None--1-1-4]": 0.000659907003864646, + "scico/test/test_array.py::test_slice_length[None--1-1-5]": 0.0006016150000505149, + "scico/test/test_array.py::test_slice_length[None--1-1-8]": 0.0006103929481469095, + "scico/test/test_array.py::test_slice_length[None--1-2-16]": 0.0006182280485518277, + "scico/test/test_array.py::test_slice_length[None--1-2-17]": 0.0006025760085321963, + "scico/test/test_array.py::test_slice_length[None--1-2-4]": 0.0006403839797712862, + "scico/test/test_array.py::test_slice_length[None--1-2-5]": 0.00065034901490435, + "scico/test/test_array.py::test_slice_length[None--1-2-8]": 0.000607983092777431, + "scico/test/test_array.py::test_slice_length[None--1-3-16]": 0.0006561020272783935, + "scico/test/test_array.py::test_slice_length[None--1-3-17]": 0.0006422341102734208, + "scico/test/test_array.py::test_slice_length[None--1-3-4]": 0.0006086030625738204, + "scico/test/test_array.py::test_slice_length[None--1-3-5]": 0.0006864249589852989, + "scico/test/test_array.py::test_slice_length[None--1-3-8]": 0.0006483920151367784, + "scico/test/test_array.py::test_slice_length[None--1-None-16]": 0.0006043799803592265, + "scico/test/test_array.py::test_slice_length[None--1-None-17]": 0.0006150999688543379, + "scico/test/test_array.py::test_slice_length[None--1-None-4]": 0.0006103949854150414, + "scico/test/test_array.py::test_slice_length[None--1-None-5]": 0.0005717949825339019, + "scico/test/test_array.py::test_slice_length[None--1-None-8]": 0.0006015069084241986, + "scico/test/test_array.py::test_slice_length[None--2-0-16]": 0.0006560999318026006, + "scico/test/test_array.py::test_slice_length[None--2-0-17]": 0.0006761100376024842, + "scico/test/test_array.py::test_slice_length[None--2-0-4]": 0.0005974660161882639, + "scico/test/test_array.py::test_slice_length[None--2-0-5]": 0.0006145850056782365, + "scico/test/test_array.py::test_slice_length[None--2-0-8]": 0.0006611990393139422, + "scico/test/test_array.py::test_slice_length[None--2-1-16]": 0.0006188200204633176, + "scico/test/test_array.py::test_slice_length[None--2-1-17]": 0.0006160620250739157, + "scico/test/test_array.py::test_slice_length[None--2-1-4]": 0.0006007479387335479, + "scico/test/test_array.py::test_slice_length[None--2-1-5]": 0.0007157349609769881, + "scico/test/test_array.py::test_slice_length[None--2-1-8]": 0.0006482289754785597, + "scico/test/test_array.py::test_slice_length[None--2-2-16]": 0.0006158850155770779, + "scico/test/test_array.py::test_slice_length[None--2-2-17]": 0.000897072022780776, + "scico/test/test_array.py::test_slice_length[None--2-2-4]": 0.0006457249983213842, + "scico/test/test_array.py::test_slice_length[None--2-2-5]": 0.0006053420365788043, + "scico/test/test_array.py::test_slice_length[None--2-2-8]": 0.0006075359415262938, + "scico/test/test_array.py::test_slice_length[None--2-3-16]": 0.0006034519756212831, + "scico/test/test_array.py::test_slice_length[None--2-3-17]": 0.0006054520490579307, + "scico/test/test_array.py::test_slice_length[None--2-3-4]": 0.0006364620639942586, + "scico/test/test_array.py::test_slice_length[None--2-3-5]": 0.0006028619827702641, + "scico/test/test_array.py::test_slice_length[None--2-3-8]": 0.0006685659755021334, + "scico/test/test_array.py::test_slice_length[None--2-None-16]": 0.00065363704925403, + "scico/test/test_array.py::test_slice_length[None--2-None-17]": 0.0006093739648349583, + "scico/test/test_array.py::test_slice_length[None--2-None-4]": 0.0006219990318641067, + "scico/test/test_array.py::test_slice_length[None--2-None-5]": 0.0006339899846352637, + "scico/test/test_array.py::test_slice_length[None--2-None-8]": 0.0006117880111560225, + "scico/test/test_array.py::test_slice_length[None-0-0-16]": 0.0008525740122422576, + "scico/test/test_array.py::test_slice_length[None-0-0-17]": 0.0007218949613161385, + "scico/test/test_array.py::test_slice_length[None-0-0-4]": 0.0007393789710476995, + "scico/test/test_array.py::test_slice_length[None-0-0-5]": 0.000754036009311676, + "scico/test/test_array.py::test_slice_length[None-0-0-8]": 0.0007907969411462545, + "scico/test/test_array.py::test_slice_length[None-0-1-16]": 0.0006846030009910464, + "scico/test/test_array.py::test_slice_length[None-0-1-17]": 0.0006741119432263076, + "scico/test/test_array.py::test_slice_length[None-0-1-4]": 0.0007545920088887215, + "scico/test/test_array.py::test_slice_length[None-0-1-5]": 0.0007204949506558478, + "scico/test/test_array.py::test_slice_length[None-0-1-8]": 0.0007221320411190391, + "scico/test/test_array.py::test_slice_length[None-0-2-16]": 0.0006088940426707268, + "scico/test/test_array.py::test_slice_length[None-0-2-17]": 0.0005512110656127334, + "scico/test/test_array.py::test_slice_length[None-0-2-4]": 0.0006795809604227543, + "scico/test/test_array.py::test_slice_length[None-0-2-5]": 0.0006583420326933265, + "scico/test/test_array.py::test_slice_length[None-0-2-8]": 0.0006633599987253547, + "scico/test/test_array.py::test_slice_length[None-0-3-16]": 0.0005250439862720668, + "scico/test/test_array.py::test_slice_length[None-0-3-17]": 0.0007869249675422907, + "scico/test/test_array.py::test_slice_length[None-0-3-4]": 0.0005983840674161911, + "scico/test/test_array.py::test_slice_length[None-0-3-5]": 0.000608057074714452, + "scico/test/test_array.py::test_slice_length[None-0-3-8]": 0.0005991809885017574, + "scico/test/test_array.py::test_slice_length[None-0-None-16]": 0.0007568559958599508, + "scico/test/test_array.py::test_slice_length[None-0-None-17]": 0.0007054479792714119, + "scico/test/test_array.py::test_slice_length[None-0-None-4]": 0.0007553170435130596, + "scico/test/test_array.py::test_slice_length[None-0-None-5]": 0.0007500079809688032, + "scico/test/test_array.py::test_slice_length[None-0-None-8]": 0.0008541650022380054, + "scico/test/test_array.py::test_slice_length[None-1-0-16]": 0.0006120409816503525, + "scico/test/test_array.py::test_slice_length[None-1-0-17]": 0.0006043039611540735, + "scico/test/test_array.py::test_slice_length[None-1-0-4]": 0.000600579020101577, + "scico/test/test_array.py::test_slice_length[None-1-0-5]": 0.0006065279594622552, + "scico/test/test_array.py::test_slice_length[None-1-0-8]": 0.000577326980419457, + "scico/test/test_array.py::test_slice_length[None-1-1-16]": 0.0008306449744850397, + "scico/test/test_array.py::test_slice_length[None-1-1-17]": 0.0006149649852886796, + "scico/test/test_array.py::test_slice_length[None-1-1-4]": 0.0006345959845930338, + "scico/test/test_array.py::test_slice_length[None-1-1-5]": 0.0005579760181717575, + "scico/test/test_array.py::test_slice_length[None-1-1-8]": 0.0006093870033510029, + "scico/test/test_array.py::test_slice_length[None-1-2-16]": 0.0006125440122559667, + "scico/test/test_array.py::test_slice_length[None-1-2-17]": 0.0006025549373589456, + "scico/test/test_array.py::test_slice_length[None-1-2-4]": 0.0007023069774731994, + "scico/test/test_array.py::test_slice_length[None-1-2-5]": 0.0007177588995546103, + "scico/test/test_array.py::test_slice_length[None-1-2-8]": 0.0006308729061856866, + "scico/test/test_array.py::test_slice_length[None-1-3-16]": 0.0006007149931974709, + "scico/test/test_array.py::test_slice_length[None-1-3-17]": 0.0005978199769742787, + "scico/test/test_array.py::test_slice_length[None-1-3-4]": 0.0006268159486353397, + "scico/test/test_array.py::test_slice_length[None-1-3-5]": 0.0005998129490762949, + "scico/test/test_array.py::test_slice_length[None-1-3-8]": 0.0006143760401755571, + "scico/test/test_array.py::test_slice_length[None-1-None-16]": 0.0006518140435218811, + "scico/test/test_array.py::test_slice_length[None-1-None-17]": 0.0006886780029162765, + "scico/test/test_array.py::test_slice_length[None-1-None-4]": 0.0006358319660648704, + "scico/test/test_array.py::test_slice_length[None-1-None-5]": 0.0006031189695931971, + "scico/test/test_array.py::test_slice_length[None-1-None-8]": 0.0006056959391571581, + "scico/test/test_array.py::test_slice_length[None-2-0-16]": 0.0006406220491044223, + "scico/test/test_array.py::test_slice_length[None-2-0-17]": 0.0006062029278837144, + "scico/test/test_array.py::test_slice_length[None-2-0-4]": 0.0006130660185590386, + "scico/test/test_array.py::test_slice_length[None-2-0-5]": 0.0006698639481328428, + "scico/test/test_array.py::test_slice_length[None-2-0-8]": 0.0006196169997565448, + "scico/test/test_array.py::test_slice_length[None-2-1-16]": 0.0005991199868731201, + "scico/test/test_array.py::test_slice_length[None-2-1-17]": 0.0006245719850994647, + "scico/test/test_array.py::test_slice_length[None-2-1-4]": 0.0006828779587522149, + "scico/test/test_array.py::test_slice_length[None-2-1-5]": 0.0006309309974312782, + "scico/test/test_array.py::test_slice_length[None-2-1-8]": 0.0006079230224713683, + "scico/test/test_array.py::test_slice_length[None-2-2-16]": 0.0007729859789833426, + "scico/test/test_array.py::test_slice_length[None-2-2-17]": 0.000698395015206188, + "scico/test/test_array.py::test_slice_length[None-2-2-4]": 0.0006832769722677767, + "scico/test/test_array.py::test_slice_length[None-2-2-5]": 0.0009745450806804001, + "scico/test/test_array.py::test_slice_length[None-2-2-8]": 0.0006097760051488876, + "scico/test/test_array.py::test_slice_length[None-2-3-16]": 0.00068554503377527, + "scico/test/test_array.py::test_slice_length[None-2-3-17]": 0.0006008240161463618, + "scico/test/test_array.py::test_slice_length[None-2-3-4]": 0.0006028770585544407, + "scico/test/test_array.py::test_slice_length[None-2-3-5]": 0.0006000130088068545, + "scico/test/test_array.py::test_slice_length[None-2-3-8]": 0.0006146110245026648, + "scico/test/test_array.py::test_slice_length[None-2-None-16]": 0.0006089959642849863, + "scico/test/test_array.py::test_slice_length[None-2-None-17]": 0.0005627809441648424, + "scico/test/test_array.py::test_slice_length[None-2-None-4]": 0.0006036439444869757, + "scico/test/test_array.py::test_slice_length[None-2-None-5]": 0.0006132050184533, + "scico/test/test_array.py::test_slice_length[None-2-None-8]": 0.0005853980546817183, + "scico/test/test_array.py::test_slice_length[None-None-0-16]": 0.0007499229977838695, + "scico/test/test_array.py::test_slice_length[None-None-0-17]": 0.0007608610321767628, + "scico/test/test_array.py::test_slice_length[None-None-0-4]": 0.0007955380715429783, + "scico/test/test_array.py::test_slice_length[None-None-0-5]": 0.0007593069458380342, + "scico/test/test_array.py::test_slice_length[None-None-0-8]": 0.0008273010607808828, + "scico/test/test_array.py::test_slice_length[None-None-1-16]": 0.0007457120227627456, + "scico/test/test_array.py::test_slice_length[None-None-1-17]": 0.0007325889891944826, + "scico/test/test_array.py::test_slice_length[None-None-1-4]": 0.000830116041470319, + "scico/test/test_array.py::test_slice_length[None-None-1-5]": 0.0007491519791074097, + "scico/test/test_array.py::test_slice_length[None-None-1-8]": 0.0007449109689332545, + "scico/test/test_array.py::test_slice_length[None-None-2-16]": 0.0007505390094593167, + "scico/test/test_array.py::test_slice_length[None-None-2-17]": 0.0007382800104096532, + "scico/test/test_array.py::test_slice_length[None-None-2-4]": 0.0007686049793846905, + "scico/test/test_array.py::test_slice_length[None-None-2-5]": 0.0007764290203340352, + "scico/test/test_array.py::test_slice_length[None-None-2-8]": 0.000735834997612983, + "scico/test/test_array.py::test_slice_length[None-None-3-16]": 0.0010730130015872419, + "scico/test/test_array.py::test_slice_length[None-None-3-17]": 0.00077746098395437, + "scico/test/test_array.py::test_slice_length[None-None-3-4]": 0.0007482600631192327, + "scico/test/test_array.py::test_slice_length[None-None-3-5]": 0.0008722800994291902, + "scico/test/test_array.py::test_slice_length[None-None-3-8]": 0.000744157936424017, + "scico/test/test_array.py::test_slice_length[None-None-None-16]": 0.0007617259980179369, + "scico/test/test_array.py::test_slice_length[None-None-None-17]": 0.0007610889733769, + "scico/test/test_array.py::test_slice_length[None-None-None-4]": 0.0008038550731725991, + "scico/test/test_array.py::test_slice_length[None-None-None-5]": 0.000761695031542331, + "scico/test/test_array.py::test_slice_length[None-None-None-8]": 0.0008528619655407965, + "scico/test/test_array.py::test_slice_length_other[-4-4]": 0.0005316229653544724, + "scico/test/test_array.py::test_slice_length_other[-4-5]": 0.0005409259465523064, + "scico/test/test_array.py::test_slice_length_other[0-4]": 0.0005610880325548351, + "scico/test/test_array.py::test_slice_length_other[0-5]": 0.000532906036823988, + "scico/test/test_array.py::test_slice_length_other[1-4]": 0.0005424259579740465, + "scico/test/test_array.py::test_slice_length_other[1-5]": 0.0005451960023492575, + "scico/test/test_array.py::test_slice_length_other[slc3-4]": 0.0005471789627335966, + "scico/test/test_array.py::test_slice_length_other[slc3-5]": 0.0005672429106198251, + "scico/test/test_autograd.py::test_cvjp[complex64]": 0.3704754210775718, + "scico/test/test_autograd.py::test_cvjp[float32]": 0.1348203809466213, + "scico/test/test_autograd.py::test_grad[complex64]": 0.7934269209508784, + "scico/test/test_autograd.py::test_grad[float32]": 0.4265803350135684, + "scico/test/test_autograd.py::test_grad_aux[complex64]": 0.006914077966939658, + "scico/test/test_autograd.py::test_grad_aux[float32]": 0.0068022930063307285, + "scico/test/test_autograd.py::test_linear_adjoint[complex64]": 0.05222876009065658, + "scico/test/test_autograd.py::test_linear_adjoint[float32]": 0.11935500393155962, + "scico/test/test_autograd.py::test_linear_adjoint_c_to_r": 0.355231188936159, + "scico/test/test_autograd.py::test_linear_adjoint_r_to_c": 0.22687425801996142, + "scico/test/test_autograd.py::test_value_and_grad[complex64]": 0.02011015499010682, + "scico/test/test_autograd.py::test_value_and_grad[float32]": 0.044897280051372945, + "scico/test/test_autograd.py::test_value_and_grad_aux[complex64]": 0.0067835429799743, + "scico/test/test_autograd.py::test_value_and_grad_aux[float32]": 0.007208591036032885, + "scico/test/test_biconvolve.py::TestBiConvolve::test_eval[False-full-complex64]": 0.6326021560234949, + "scico/test/test_biconvolve.py::TestBiConvolve::test_eval[False-full-float32]": 0.37429687596159056, + "scico/test/test_biconvolve.py::TestBiConvolve::test_eval[False-same-complex64]": 0.1571239969925955, + "scico/test/test_biconvolve.py::TestBiConvolve::test_eval[False-same-float32]": 0.11235567403491586, + "scico/test/test_biconvolve.py::TestBiConvolve::test_eval[False-valid-complex64]": 0.1569568140548654, + "scico/test/test_biconvolve.py::TestBiConvolve::test_eval[False-valid-float32]": 0.09282682300545275, + "scico/test/test_biconvolve.py::TestBiConvolve::test_eval[True-full-complex64]": 0.14939228497678414, + "scico/test/test_biconvolve.py::TestBiConvolve::test_eval[True-full-float32]": 0.09102022898150608, + "scico/test/test_biconvolve.py::TestBiConvolve::test_eval[True-same-complex64]": 0.1418719429639168, + "scico/test/test_biconvolve.py::TestBiConvolve::test_eval[True-same-float32]": 0.08647788799135014, + "scico/test/test_biconvolve.py::TestBiConvolve::test_eval[True-valid-complex64]": 0.14856853405945003, + "scico/test/test_biconvolve.py::TestBiConvolve::test_eval[True-valid-float32]": 0.08683960000053048, + "scico/test/test_biconvolve.py::TestBiConvolve::test_invalid_shapes": 0.001834933995269239, + "scico/test/test_blockarray.py::TestCreators::test_empty": 0.001969515986274928, + "scico/test/test_blockarray.py::TestCreators::test_full": 0.046738252975046635, + "scico/test/test_blockarray.py::TestCreators::test_full_nodtype": 0.0019026570371352136, + "scico/test/test_blockarray.py::TestCreators::test_ones": 0.0023143491125665605, + "scico/test/test_blockarray.py::TestCreators::test_zeros": 0.11687840899685398, + "scico/test/test_blockarray.py::test_ba_ba_dot[complex64-dot]": 0.03074928600108251, + "scico/test/test_blockarray.py::test_ba_ba_dot[complex64-matmul]": 0.0015304769622161984, + "scico/test/test_blockarray.py::test_ba_ba_dot[float32-dot]": 0.05161460296949372, + "scico/test/test_blockarray.py::test_ba_ba_dot[float32-matmul]": 0.0014489860041067004, + "scico/test/test_blockarray.py::test_ba_ba_matmul[complex64]": 0.04814158799126744, + "scico/test/test_blockarray.py::test_ba_ba_matmul[float32]": 0.0586539339274168, + "scico/test/test_blockarray.py::test_ba_ba_operator[complex64-add]": 0.03262106096372008, + "scico/test/test_blockarray.py::test_ba_ba_operator[complex64-eq]": 0.035330089973285794, + "scico/test/test_blockarray.py::test_ba_ba_operator[complex64-ge]": 0.03762298391666263, + "scico/test/test_blockarray.py::test_ba_ba_operator[complex64-gt]": 0.03989524801727384, + "scico/test/test_blockarray.py::test_ba_ba_operator[complex64-le]": 0.0379888690658845, + "scico/test/test_blockarray.py::test_ba_ba_operator[complex64-lt]": 0.03824114002054557, + "scico/test/test_blockarray.py::test_ba_ba_operator[complex64-mul]": 0.03329960803966969, + "scico/test/test_blockarray.py::test_ba_ba_operator[complex64-pow]": 0.04567672201665118, + "scico/test/test_blockarray.py::test_ba_ba_operator[complex64-sub]": 0.03180287900613621, + "scico/test/test_blockarray.py::test_ba_ba_operator[complex64-truediv]": 0.044504644989501685, + "scico/test/test_blockarray.py::test_ba_ba_operator[float32-add]": 0.03039956500288099, + "scico/test/test_blockarray.py::test_ba_ba_operator[float32-eq]": 0.035749462025705725, + "scico/test/test_blockarray.py::test_ba_ba_operator[float32-ge]": 0.0356266230228357, + "scico/test/test_blockarray.py::test_ba_ba_operator[float32-gt]": 0.03345983492908999, + "scico/test/test_blockarray.py::test_ba_ba_operator[float32-le]": 0.031629026983864605, + "scico/test/test_blockarray.py::test_ba_ba_operator[float32-lt]": 0.03209828695980832, + "scico/test/test_blockarray.py::test_ba_ba_operator[float32-mul]": 0.029619424021802843, + "scico/test/test_blockarray.py::test_ba_ba_operator[float32-pow]": 0.031613107945304364, + "scico/test/test_blockarray.py::test_ba_ba_operator[float32-sub]": 0.03048822603886947, + "scico/test/test_blockarray.py::test_ba_ba_operator[float32-truediv]": 0.02959921903675422, + "scico/test/test_blockarray.py::test_blockarray_from_one_array": 0.0017182400333695114, + "scico/test/test_blockarray.py::test_conj[complex64]": 0.03531545796431601, + "scico/test/test_blockarray.py::test_conj[float32]": 0.0031719779944978654, + "scico/test/test_blockarray.py::test_elementwise_binary[add]": 0.027535939938388765, + "scico/test/test_blockarray.py::test_elementwise_binary[eq]": 0.029706330969929695, + "scico/test/test_blockarray.py::test_elementwise_binary[floordiv]": 0.05163712293142453, + "scico/test/test_blockarray.py::test_elementwise_binary[ge]": 0.028569250949658453, + "scico/test/test_blockarray.py::test_elementwise_binary[gt]": 0.02862451202236116, + "scico/test/test_blockarray.py::test_elementwise_binary[le]": 0.030072204011958092, + "scico/test/test_blockarray.py::test_elementwise_binary[lt]": 0.028392421023454517, + "scico/test/test_blockarray.py::test_elementwise_binary[mod]": 0.03995226800907403, + "scico/test/test_blockarray.py::test_elementwise_binary[mul]": 0.02744304301450029, + "scico/test/test_blockarray.py::test_elementwise_binary[ne]": 0.03363239503232762, + "scico/test/test_blockarray.py::test_elementwise_binary[sub]": 0.028500686981715262, + "scico/test/test_blockarray.py::test_elementwise_binary[truediv]": 0.028762036992702633, + "scico/test/test_blockarray.py::test_getitem[complex64]": 0.0019098639604635537, + "scico/test/test_blockarray.py::test_getitem[float32]": 0.0016526429099030793, + "scico/test/test_blockarray.py::test_imag[complex64]": 0.030860610015224665, + "scico/test/test_blockarray.py::test_imag[float32]": 0.02741755306487903, + "scico/test/test_blockarray.py::test_matmul": 0.03577794402372092, + "scico/test/test_blockarray.py::test_method": 0.030776616011280566, + "scico/test/test_blockarray.py::test_ndim[complex64]": 0.0006873820093460381, + "scico/test/test_blockarray.py::test_ndim[float32]": 0.0006589129916392267, + "scico/test/test_blockarray.py::test_not_implemented_binary": 0.0013238469837233424, + "scico/test/test_blockarray.py::test_operator_left[complex64-add]": 1.457515177957248, + "scico/test/test_blockarray.py::test_operator_left[complex64-eq]": 0.03448135097278282, + "scico/test/test_blockarray.py::test_operator_left[complex64-ge]": 0.04015055898344144, + "scico/test/test_blockarray.py::test_operator_left[complex64-gt]": 0.04109323606826365, + "scico/test/test_blockarray.py::test_operator_left[complex64-le]": 0.0401050869259052, + "scico/test/test_blockarray.py::test_operator_left[complex64-lt]": 0.04066599492216483, + "scico/test/test_blockarray.py::test_operator_left[complex64-mul]": 0.034104435006156564, + "scico/test/test_blockarray.py::test_operator_left[complex64-pow]": 0.04611359996488318, + "scico/test/test_blockarray.py::test_operator_left[complex64-sub]": 0.03451373701682314, + "scico/test/test_blockarray.py::test_operator_left[complex64-truediv]": 0.046109331015031785, + "scico/test/test_blockarray.py::test_operator_left[float32-add]": 0.7396278670057654, + "scico/test/test_blockarray.py::test_operator_left[float32-eq]": 0.03350607701577246, + "scico/test/test_blockarray.py::test_operator_left[float32-ge]": 0.032574602926615626, + "scico/test/test_blockarray.py::test_operator_left[float32-gt]": 0.03245359001448378, + "scico/test/test_blockarray.py::test_operator_left[float32-le]": 0.03253118897555396, + "scico/test/test_blockarray.py::test_operator_left[float32-lt]": 0.032931544934399426, + "scico/test/test_blockarray.py::test_operator_left[float32-mul]": 0.030898995988536626, + "scico/test/test_blockarray.py::test_operator_left[float32-pow]": 0.03352308494504541, + "scico/test/test_blockarray.py::test_operator_left[float32-sub]": 0.03113722091075033, + "scico/test/test_blockarray.py::test_operator_left[float32-truediv]": 0.032279369013849646, + "scico/test/test_blockarray.py::test_operator_right[complex64-add]": 0.03379052900709212, + "scico/test/test_blockarray.py::test_operator_right[complex64-eq]": 0.0013904120423831046, + "scico/test/test_blockarray.py::test_operator_right[complex64-ge]": 0.0015924430917948484, + "scico/test/test_blockarray.py::test_operator_right[complex64-gt]": 0.001398372056428343, + "scico/test/test_blockarray.py::test_operator_right[complex64-le]": 0.0014969250187277794, + "scico/test/test_blockarray.py::test_operator_right[complex64-lt]": 0.0014981829444877803, + "scico/test/test_blockarray.py::test_operator_right[complex64-mul]": 0.03421734302537516, + "scico/test/test_blockarray.py::test_operator_right[complex64-pow]": 0.046766849991399795, + "scico/test/test_blockarray.py::test_operator_right[complex64-sub]": 0.03370109904790297, + "scico/test/test_blockarray.py::test_operator_right[complex64-truediv]": 0.04651239002123475, + "scico/test/test_blockarray.py::test_operator_right[float32-add]": 0.03121186897624284, + "scico/test/test_blockarray.py::test_operator_right[float32-eq]": 0.0015570319956168532, + "scico/test/test_blockarray.py::test_operator_right[float32-ge]": 0.0014726469526067376, + "scico/test/test_blockarray.py::test_operator_right[float32-gt]": 0.001426830014679581, + "scico/test/test_blockarray.py::test_operator_right[float32-le]": 0.0015706239501014352, + "scico/test/test_blockarray.py::test_operator_right[float32-lt]": 0.0014370710123330355, + "scico/test/test_blockarray.py::test_operator_right[float32-mul]": 0.031131131981965154, + "scico/test/test_blockarray.py::test_operator_right[float32-pow]": 0.03392302605789155, + "scico/test/test_blockarray.py::test_operator_right[float32-sub]": 0.030756667023524642, + "scico/test/test_blockarray.py::test_operator_right[float32-truediv]": 0.031593614956364036, + "scico/test/test_blockarray.py::test_property": 0.0010526240221224725, + "scico/test/test_blockarray.py::test_real[complex64]": 0.030493211990687996, + "scico/test/test_blockarray.py::test_real[float32]": 0.0028253259952180088, + "scico/test/test_blockarray.py::test_reduce[complex64-norm]": 0.0840677130036056, + "scico/test/test_blockarray.py::test_reduce[complex64-sum]": 0.07849433599039912, + "scico/test/test_blockarray.py::test_reduce[float32-norm]": 0.07176078605698422, + "scico/test/test_blockarray.py::test_reduce[float32-sum]": 0.07776088401442394, + "scico/test/test_blockarray.py::test_reduce_axis[0-complex64-norm]": 0.1384149309596978, + "scico/test/test_blockarray.py::test_reduce_axis[0-complex64-sum]": 0.06019620195729658, + "scico/test/test_blockarray.py::test_reduce_axis[0-float32-norm]": 0.11860956903547049, + "scico/test/test_blockarray.py::test_reduce_axis[0-float32-sum]": 0.052409266063477844, + "scico/test/test_blockarray.py::test_reduce_axis[1-complex64-norm]": 0.1342968010576442, + "scico/test/test_blockarray.py::test_reduce_axis[1-complex64-sum]": 0.030105223937425762, + "scico/test/test_blockarray.py::test_reduce_axis[1-float32-norm]": 0.11906895705033094, + "scico/test/test_blockarray.py::test_reduce_axis[1-float32-sum]": 0.02650612499564886, + "scico/test/test_blockarray.py::test_reduce_singleton[complex64-norm]": 0.08149125095224008, + "scico/test/test_blockarray.py::test_reduce_singleton[complex64-sum]": 0.042577896965667605, + "scico/test/test_blockarray.py::test_reduce_singleton[float32-norm]": 0.073828816995956, + "scico/test/test_blockarray.py::test_reduce_singleton[float32-sum]": 0.040111522073857486, + "scico/test/test_blockarray.py::test_split[complex64]": 0.0008969059563241899, + "scico/test/test_blockarray.py::test_split[float32]": 0.0008795859757810831, + "scico/test/test_blockarray.py::test_sum_method[complex64-False-1]": 0.03643399599241093, + "scico/test/test_blockarray.py::test_sum_method[complex64-False-None]": 0.03563008498167619, + "scico/test/test_blockarray.py::test_sum_method[complex64-True-1]": 0.038740790041629225, + "scico/test/test_blockarray.py::test_sum_method[complex64-True-None]": 0.03771393001079559, + "scico/test/test_blockarray.py::test_sum_method[float32-False-1]": 0.031547093007247895, + "scico/test/test_blockarray.py::test_sum_method[float32-False-None]": 0.032999123039189726, + "scico/test/test_blockarray.py::test_sum_method[float32-True-1]": 0.0339627800276503, + "scico/test/test_blockarray.py::test_sum_method[float32-True-None]": 0.03640303004067391, + "scico/test/test_blockarray.py::test_unary[abs]": 0.02659847098402679, + "scico/test/test_blockarray.py::test_unary[neg]": 0.02832764305640012, + "scico/test/test_blockarray.py::test_unary[pos]": 0.003245957021135837, + "scico/test/test_data.py::TestSet::test_kodim23_float": 0.01859751099254936, + "scico/test/test_data.py::TestSet::test_kodim23_uint": 0.02418117196066305, + "scico/test/test_denoiser.py::TestBM3D::test_bad_inputs": 0.3648938280530274, + "scico/test/test_denoiser.py::TestBM3D::test_gry": 0.8233748709899373, + "scico/test/test_denoiser.py::TestBM3D::test_rgb": 2.2672492670244537, + "scico/test/test_denoiser.py::TestBM3D::test_shape": 1.7379494839697145, + "scico/test/test_denoiser.py::TestBM4D::test_bad_inputs": 0.009347629093099385, + "scico/test/test_denoiser.py::TestBM4D::test_jit": 8.79467635997571, + "scico/test/test_denoiser.py::TestBM4D::test_shape": 6.335908765089698, + "scico/test/test_denoiser.py::TestDnCNN::test_bad_inputs": 0.011672596971038729, + "scico/test/test_denoiser.py::TestDnCNN::test_init": 0.4136804980225861, + "scico/test/test_denoiser.py::TestDnCNN::test_multi_channel": 0.6808766719768755, + "scico/test/test_denoiser.py::TestDnCNN::test_single_channel": 0.7049559879815206, + "scico/test/test_denoiser.py::TestNonBLindDnCNN::test_bad_inputs": 0.006475238013081253, + "scico/test/test_denoiser.py::TestNonBLindDnCNN::test_multi_channel": 0.2882364460383542, + "scico/test/test_denoiser.py::TestNonBLindDnCNN::test_single_channel": 0.2583324779989198, + "scico/test/test_diagnostics.py::TestSet::test_display": 0.0009575209696777165, + "scico/test/test_diagnostics.py::TestSet::test_exception": 0.0005940939881838858, + "scico/test/test_diagnostics.py::TestSet::test_itstat": 0.0010306959738954902, + "scico/test/test_diagnostics.py::TestSet::test_warning": 0.000639131001662463, + "scico/test/test_examples.py::test_create_3D_foam_phantom[10-img_shape0]": 0.0344651389750652, + "scico/test/test_examples.py::test_create_3D_foam_phantom[10-img_shape1]": 0.7753480449900962, + "scico/test/test_examples.py::test_create_3D_foam_phantom[10-img_shape2]": 0.5293863639817573, + "scico/test/test_examples.py::test_create_3D_foam_phantom[20-img_shape0]": 0.0624156350386329, + "scico/test/test_examples.py::test_create_3D_foam_phantom[20-img_shape1]": 0.44456961198011413, + "scico/test/test_examples.py::test_create_3D_foam_phantom[20-img_shape2]": 0.43539632397005334, + "scico/test/test_examples.py::test_create_3D_foam_phantom[3-img_shape0]": 0.43918595201103017, + "scico/test/test_examples.py::test_create_3D_foam_phantom[3-img_shape1]": 0.8337857590522617, + "scico/test/test_examples.py::test_create_3D_foam_phantom[3-img_shape2]": 0.4993817739887163, + "scico/test/test_examples.py::test_create_circular_phantom": 0.5920188789605163, + "scico/test/test_examples.py::test_create_cone[img_shape0]": 0.18023073900258169, + "scico/test/test_examples.py::test_create_cone[img_shape1]": 0.16759109601844102, + "scico/test/test_examples.py::test_create_cone[img_shape2]": 0.19891573203494772, + "scico/test/test_examples.py::test_downsample_volume": 0.08603742596460506, + "scico/test/test_examples.py::test_epfl_deconv_data": 0.004587893956340849, + "scico/test/test_examples.py::test_phase_diff": 0.11262562999036163, + "scico/test/test_examples.py::test_rgb2gray": 0.07615956995869055, + "scico/test/test_examples.py::test_spnoise": 0.395992694015149, + "scico/test/test_examples.py::test_tile_volume_slices": 0.39482115098508075, + "scico/test/test_examples.py::test_volume_read": 0.010709327936638147, + "scico/test/test_function.py::TestFunction::test_eval": 0.0033019569818861783, + "scico/test/test_function.py::TestFunction::test_eval_jit": 0.019822215021122247, + "scico/test/test_function.py::TestFunction::test_init": 0.1689584770356305, + "scico/test/test_function.py::TestFunction::test_join": 0.004289313044864684, + "scico/test/test_function.py::TestFunction::test_join_raise": 0.033441177976783365, + "scico/test/test_function.py::TestFunction::test_slice": 0.004538102948572487, + "scico/test/test_function.py::test_jacobian[complex64]": 0.8661428960040212, + "scico/test/test_function.py::test_jacobian[float32]": 0.5159956240095198, + "scico/test/test_metric.py::TestSet::test_bsnr": 0.0009515180136077106, + "scico/test/test_metric.py::TestSet::test_isnr": 0.0018883590237237513, + "scico/test/test_metric.py::TestSet::test_mae_mse": 0.04430982191115618, + "scico/test/test_metric.py::TestSet::test_psnr": 0.013767983065918088, + "scico/test/test_metric.py::TestSet::test_snr_nrm": 0.061687593057285994, + "scico/test/test_metric.py::TestSet::test_snr_signal_range": 0.05553595902165398, + "scico/test/test_metric.py::test_rel_res": 0.10142690606880933, + "scico/test/test_numpy.py::test_create_empty_like": 0.003100619011092931, + "scico/test/test_numpy.py::test_create_full": 0.04279035603394732, + "scico/test/test_numpy.py::test_create_full_like": 0.01507750601740554, + "scico/test/test_numpy.py::test_create_ones": 0.027957476035226136, + "scico/test/test_numpy.py::test_create_ones_like": 0.0031871729879640043, + "scico/test/test_numpy.py::test_create_zeros": 0.03024131094571203, + "scico/test/test_numpy.py::test_create_zeros_like": 0.0036414110218174756, + "scico/test/test_numpy.py::test_reshape_array": 0.0008765259990468621, + "scico/test/test_numpy.py::test_ufunc_abs": 0.020020306983496994, + "scico/test/test_numpy.py::test_ufunc_conj": 0.0332483458914794, + "scico/test/test_numpy.py::test_ufunc_floor_divide": 0.12287438294151798, + "scico/test/test_numpy.py::test_ufunc_imag": 0.02783411496784538, + "scico/test/test_numpy.py::test_ufunc_maximum": 0.08028214803198352, + "scico/test/test_numpy.py::test_ufunc_real": 0.030211607983801514, + "scico/test/test_numpy.py::test_ufunc_sign": 0.022882592980749905, + "scico/test/test_numpy.py::test_ufunc_true_divide": 0.07123694609617814, + "scico/test/test_numpy.py::test_ufunc_where": 0.021897164988331497, + "scico/test/test_operator.py::TestJacobianProdComplex::test_jvp": 0.004858190950471908, + "scico/test/test_operator.py::TestJacobianProdComplex::test_vjp_conj": 0.058434805017896, + "scico/test/test_operator.py::TestJacobianProdComplex::test_vjp_noconj": 0.006046892027370632, + "scico/test/test_operator.py::TestJacobianProdReal::test_jvp": 0.0047347829677164555, + "scico/test/test_operator.py::TestJacobianProdReal::test_vjp_conj": 0.038056652003433555, + "scico/test/test_operator.py::TestJacobianProdReal::test_vjp_noconj": 0.005982145084999502, + "scico/test/test_operator.py::test_binary_op[complex128-add]": 0.7702056769630872, + "scico/test/test_operator.py::test_binary_op[complex128-sub]": 0.014684628986287862, + "scico/test/test_operator.py::test_binary_op[complex64-add]": 0.505357658083085, + "scico/test/test_operator.py::test_binary_op[complex64-sub]": 0.01530062296660617, + "scico/test/test_operator.py::test_binary_op[float32-add]": 0.2882341340300627, + "scico/test/test_operator.py::test_binary_op[float32-sub]": 0.013679136987775564, + "scico/test/test_operator.py::test_binary_op[float64-add]": 0.4088091040030122, + "scico/test/test_operator.py::test_binary_op[float64-sub]": 0.0015452749794349074, + "scico/test/test_operator.py::test_binary_op_same[complex128-add]": 0.0017065659631043673, + "scico/test/test_operator.py::test_binary_op_same[complex128-sub]": 0.001102539012208581, + "scico/test/test_operator.py::test_binary_op_same[complex64-add]": 0.0011695069260895252, + "scico/test/test_operator.py::test_binary_op_same[complex64-sub]": 0.0012433649390004575, + "scico/test/test_operator.py::test_binary_op_same[float32-add]": 0.0011469559976831079, + "scico/test/test_operator.py::test_binary_op_same[float32-sub]": 0.0014483309932984412, + "scico/test/test_operator.py::test_binary_op_same[float64-add]": 0.0010508339619264007, + "scico/test/test_operator.py::test_binary_op_same[float64-sub]": 0.0011577810510061681, + "scico/test/test_operator.py::test_call_operator_operator[complex128]": 0.0015014020609669387, + "scico/test/test_operator.py::test_call_operator_operator[complex64]": 0.0013970789732411504, + "scico/test/test_operator.py::test_call_operator_operator[float32]": 0.0014241470489650965, + "scico/test/test_operator.py::test_call_operator_operator[float64]": 0.0017095369985327125, + "scico/test/test_operator.py::test_freeze_2arg": 0.00530308997258544, + "scico/test/test_operator.py::test_freeze_3arg": 0.37078510102583095, + "scico/test/test_operator.py::test_func_op[op_fn0-complex64]": 0.049064121092669666, + "scico/test/test_operator.py::test_func_op[op_fn0-float32]": 0.031021706003230065, + "scico/test/test_operator.py::test_func_op[op_fn1-complex64]": 0.03801504900911823, + "scico/test/test_operator.py::test_func_op[op_fn1-float32]": 0.0378999809618108, + "scico/test/test_operator.py::test_func_op[op_fn2-complex64]": 0.03846406197408214, + "scico/test/test_operator.py::test_func_op[op_fn2-float32]": 0.034924934967420995, + "scico/test/test_operator.py::test_invalid_add_sub_array[complex128-add]": 0.0006761569529771805, + "scico/test/test_operator.py::test_invalid_add_sub_array[complex128-sub]": 0.0006391219794750214, + "scico/test/test_operator.py::test_invalid_add_sub_array[complex64-add]": 0.0006538970046676695, + "scico/test/test_operator.py::test_invalid_add_sub_array[complex64-sub]": 0.0007709220517426729, + "scico/test/test_operator.py::test_invalid_add_sub_array[float32-add]": 0.0007304289611056447, + "scico/test/test_operator.py::test_invalid_add_sub_array[float32-sub]": 0.0006645230459980667, + "scico/test/test_operator.py::test_invalid_add_sub_array[float64-add]": 0.0006885809707455337, + "scico/test/test_operator.py::test_invalid_add_sub_array[float64-sub]": 0.0006365469889715314, + "scico/test/test_operator.py::test_invalid_add_sub_scalar[complex128-add]": 0.0006897830753587186, + "scico/test/test_operator.py::test_invalid_add_sub_scalar[complex128-sub]": 0.0007021559868007898, + "scico/test/test_operator.py::test_invalid_add_sub_scalar[complex64-add]": 0.0006627109833061695, + "scico/test/test_operator.py::test_invalid_add_sub_scalar[complex64-sub]": 0.0006428590277209878, + "scico/test/test_operator.py::test_invalid_add_sub_scalar[float32-add]": 0.0006522659678012133, + "scico/test/test_operator.py::test_invalid_add_sub_scalar[float32-sub]": 0.0006951180403120816, + "scico/test/test_operator.py::test_invalid_add_sub_scalar[float64-add]": 0.0006304529379121959, + "scico/test/test_operator.py::test_invalid_add_sub_scalar[float64-sub]": 0.0005202770116738975, + "scico/test/test_operator.py::test_make_func_op": 0.029612238984555006, + "scico/test/test_operator.py::test_negation[complex128]": 0.0011213039397262037, + "scico/test/test_operator.py::test_negation[complex64]": 0.0012733300682157278, + "scico/test/test_operator.py::test_negation[float32]": 0.012381051026750356, + "scico/test/test_operator.py::test_negation[float64]": 0.013103905017487705, + "scico/test/test_operator.py::test_scalar_left[complex128-mul]": 0.030414491018746048, + "scico/test/test_operator.py::test_scalar_left[complex128-truediv]": 0.02088860998628661, + "scico/test/test_operator.py::test_scalar_left[complex64-mul]": 0.028707845078315586, + "scico/test/test_operator.py::test_scalar_left[complex64-truediv]": 0.018999541003722697, + "scico/test/test_operator.py::test_scalar_left[float32-mul]": 0.013373518944717944, + "scico/test/test_operator.py::test_scalar_left[float32-truediv]": 0.014429234026465565, + "scico/test/test_operator.py::test_scalar_left[float64-mul]": 0.01314417104003951, + "scico/test/test_operator.py::test_scalar_left[float64-truediv]": 0.013799445994663984, + "scico/test/test_operator.py::test_scalar_right[complex128-mul]": 0.001178088947199285, + "scico/test/test_operator.py::test_scalar_right[complex128-truediv]": 0.0007549170404672623, + "scico/test/test_operator.py::test_scalar_right[complex64-mul]": 0.0011427949648350477, + "scico/test/test_operator.py::test_scalar_right[complex64-truediv]": 0.0007290880312211812, + "scico/test/test_operator.py::test_scalar_right[float32-mul]": 0.001139567990321666, + "scico/test/test_operator.py::test_scalar_right[float32-truediv]": 0.0007161590037867427, + "scico/test/test_operator.py::test_scalar_right[float64-mul]": 0.0011180550209246576, + "scico/test/test_operator.py::test_scalar_right[float64-truediv]": 0.0007003629580140114, + "scico/test/test_operator.py::test_scale_pmap[complex128]": 0.019414826936554164, + "scico/test/test_operator.py::test_scale_pmap[complex64]": 0.019768444006331265, + "scico/test/test_operator.py::test_scale_pmap[float32]": 0.032131507992744446, + "scico/test/test_operator.py::test_scale_pmap[float64]": 0.030391833977773786, + "scico/test/test_operator.py::test_scale_vmap[complex128]": 0.002684557985048741, + "scico/test/test_operator.py::test_scale_vmap[complex64]": 0.0029214370297268033, + "scico/test/test_operator.py::test_scale_vmap[float32]": 0.017278845014516264, + "scico/test/test_operator.py::test_scale_vmap[float64]": 0.01662171195494011, + "scico/test/test_operator.py::test_shape_call_vec[complex128]": 0.0005357569316402078, + "scico/test/test_operator.py::test_shape_call_vec[complex64]": 0.0005877679795958102, + "scico/test/test_operator.py::test_shape_call_vec[float32]": 0.0006778290262445807, + "scico/test/test_operator.py::test_shape_call_vec[float64]": 0.0007322890451177955, + "scico/test/test_random.py::test_add_seed_adapter": 0.1582351000397466, + "scico/test/test_random.py::test_wrapped_funcs[42]": 0.006869859935250133, + "scico/test/test_random.py::test_wrapped_funcs[None]": 0.4561604260234162, + "scico/test/test_ray_tune.py::test_hyperopt": 3.686688503017649, + "scico/test/test_ray_tune.py::test_random": 3.7168962620198727, + "scico/test/test_scipy_special.py::test_betainc": 0.262545371952001, + "scico/test/test_scipy_special.py::test_gammainc[gammainc]": 0.0048543179873377085, + "scico/test/test_scipy_special.py::test_gammainc[gammaincc]": 0.005232686991803348, + "scico/test/test_scipy_special.py::test_logs[xlog1py]": 0.041675638931337744, + "scico/test/test_scipy_special.py::test_logs[xlogy]": 0.006921999040059745, + "scico/test/test_scipy_special.py::test_multigammaln": 0.25825561094097793, + "scico/test/test_scipy_special.py::test_one_arg_funcs[entr]": 0.2548945469898172, + "scico/test/test_scipy_special.py::test_one_arg_funcs[erf]": 0.04057543905219063, + "scico/test/test_scipy_special.py::test_one_arg_funcs[erfc]": 0.053574394958559424, + "scico/test/test_scipy_special.py::test_one_arg_funcs[erfinv]": 0.06811670801835135, + "scico/test/test_scipy_special.py::test_one_arg_funcs[expit]": 0.03801270399708301, + "scico/test/test_scipy_special.py::test_one_arg_funcs[gammaln]": 0.06896318000508472, + "scico/test/test_scipy_special.py::test_one_arg_funcs[i0]": 0.12511718994937837, + "scico/test/test_scipy_special.py::test_one_arg_funcs[i0e]": 0.004068037029355764, + "scico/test/test_scipy_special.py::test_one_arg_funcs[i1]": 0.05802958901040256, + "scico/test/test_scipy_special.py::test_one_arg_funcs[i1e]": 0.003744461981114, + "scico/test/test_scipy_special.py::test_one_arg_funcs[log_ndtr]": 0.2554896690417081, + "scico/test/test_scipy_special.py::test_one_arg_funcs[logit]": 0.05970004200935364, + "scico/test/test_scipy_special.py::test_one_arg_funcs[ndtr]": 0.14834926597541198, + "scico/test/test_scipy_special.py::test_one_arg_funcs[ndtri]": 0.1490816500154324, + "scico/test/test_scipy_special.py::test_one_arg_funcs[psi]": 0.17559743497986346, + "scico/test/test_scipy_special.py::test_zeta": 0.5403032270260155, + "scico/test/test_solver.py::TestOptimizeScalar::test_minimize_scalar": 0.060081623087171465, + "scico/test/test_solver.py::TestSet::test_cg_complex": 0.19815940904663876, + "scico/test/test_solver.py::TestSet::test_cg_no_info": 0.04543708998244256, + "scico/test/test_solver.py::TestSet::test_cg_op": 0.15972469403641298, + "scico/test/test_solver.py::TestSet::test_cg_std": 0.16109021700685844, + "scico/test/test_solver.py::TestSet::test_lstsq_func": 0.20389953901758417, + "scico/test/test_solver.py::TestSet::test_lstsq_op": 0.12504524603718892, + "scico/test/test_solver.py::TestSet::test_preconditioned_cg": 0.014856783032882959, + "scico/test/test_solver.py::TestSet::test_wrap_func_and_grad": 0.1196231449721381, + "scico/test/test_solver.py::test_bisect": 1.470031117030885, + "scico/test/test_solver.py::test_golden": 0.2634817710495554, + "scico/test/test_solver.py::test_minimize_vector[CG-complex64]": 1.21344898204552, + "scico/test/test_solver.py::test_minimize_vector[CG-float32]": 0.6534110069624148, + "scico/test/test_solver.py::test_minimize_vector[L-BFGS-B-complex64]": 0.3093233689432964, + "scico/test/test_solver.py::test_minimize_vector[L-BFGS-B-float32]": 0.2182717760442756, + "scico/test/test_solver.py::test_split_join_array": 0.11355864099459723, + "scico/test/test_solver.py::test_split_join_blockarray": 0.10279110301053151, + "scico/test/test_util.py::test_check_for_tracer": 0.0627982160076499, + "scico/test/test_util.py::test_ctxttimer_basic": 0.0005158649873919785, + "scico/test/test_util.py::test_ctxttimer_stopstart": 0.00046127696987241507, + "scico/test/test_util.py::test_partial_kw": 0.0005135710234753788, + "scico/test/test_util.py::test_partial_pos": 0.0006592049612663686, + "scico/test/test_util.py::test_partial_pos_and_kw": 0.0004990909365005791, + "scico/test/test_util.py::test_timer_basic": 0.0005763480439782143, + "scico/test/test_util.py::test_timer_multi": 0.0005706200608983636, + "scico/test/test_util.py::test_timer_reset": 0.00048420304665341973, + "scico/test/test_util.py::test_url_get": 0.7940536070382223, + "scico/test/test_version.py::test_var_val": 0.0027052650111727417 +} \ No newline at end of file From 9f884f97f5b825f09a990ab7a5387677456509f7 Mon Sep 17 00:00:00 2001 From: Brendt Wohlberg Date: Fri, 7 Apr 2023 19:05:58 -0600 Subject: [PATCH 05/21] Fix job names --- .github/workflows/pytest_macos.yml | 2 +- .github/workflows/pytest_ubuntu.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/pytest_macos.yml b/.github/workflows/pytest_macos.yml index 71c396def..69114185d 100644 --- a/.github/workflows/pytest_macos.yml +++ b/.github/workflows/pytest_macos.yml @@ -18,7 +18,7 @@ jobs: fail-fast: false matrix: group: [1, 2, 3, 4, 5] - name: ${{ matrix.label }} + name: pytest split ${{ matrix.group }} defaults: run: shell: bash -l {0} diff --git a/.github/workflows/pytest_ubuntu.yml b/.github/workflows/pytest_ubuntu.yml index 2796875e7..f6aa34be8 100644 --- a/.github/workflows/pytest_ubuntu.yml +++ b/.github/workflows/pytest_ubuntu.yml @@ -18,7 +18,7 @@ jobs: fail-fast: false matrix: group: [1, 2, 3, 4, 5] - name: ${{ matrix.label }} + name: pytest split ${{ matrix.group }} defaults: run: shell: bash -l {0} From a4470609db3da32e5a9fabadbebe55ec4d86c167 Mon Sep 17 00:00:00 2001 From: Brendt Wohlberg Date: Fri, 7 Apr 2023 19:07:39 -0600 Subject: [PATCH 06/21] Force cache reset --- .github/workflows/pytest_macos.yml | 2 +- .github/workflows/pytest_ubuntu.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/pytest_macos.yml b/.github/workflows/pytest_macos.yml index 69114185d..c550857e0 100644 --- a/.github/workflows/pytest_macos.yml +++ b/.github/workflows/pytest_macos.yml @@ -43,7 +43,7 @@ jobs: path: ${{ env.CONDA }}/envs key: conda-${{ runner.os }}-${{ runner.arch }}-${{ hashFiles('requirements.txt') }}-${{ hashFiles('dev_requirements.txt') }}-${{ env.CACHE_NUMBER }} env: - CACHE_NUMBER: 0 # Increase this value to force cache reset + CACHE_NUMBER: 1 # Increase this value to force cache reset id: cache # Display environment details - name: Display environment details diff --git a/.github/workflows/pytest_ubuntu.yml b/.github/workflows/pytest_ubuntu.yml index f6aa34be8..61c7f0a26 100644 --- a/.github/workflows/pytest_ubuntu.yml +++ b/.github/workflows/pytest_ubuntu.yml @@ -43,7 +43,7 @@ jobs: path: ${{ env.CONDA }}/envs key: conda-${{ runner.os }}-${{ runner.arch }}-${{ hashFiles('requirements.txt') }}-${{ hashFiles('dev_requirements.txt') }}-${{ env.CACHE_NUMBER }} env: - CACHE_NUMBER: 0 # Increase this value to force cache reset + CACHE_NUMBER: 1 # Increase this value to force cache reset id: cache # Display environment details - name: Display environment details From 083cc5ca531dd6ef3f049a34327c6363e07c41f5 Mon Sep 17 00:00:00 2001 From: Brendt Wohlberg Date: Fri, 7 Apr 2023 19:08:14 -0600 Subject: [PATCH 07/21] Set cache indices back to 0 --- .github/workflows/pytest_macos.yml | 2 +- .github/workflows/pytest_ubuntu.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/pytest_macos.yml b/.github/workflows/pytest_macos.yml index c550857e0..69114185d 100644 --- a/.github/workflows/pytest_macos.yml +++ b/.github/workflows/pytest_macos.yml @@ -43,7 +43,7 @@ jobs: path: ${{ env.CONDA }}/envs key: conda-${{ runner.os }}-${{ runner.arch }}-${{ hashFiles('requirements.txt') }}-${{ hashFiles('dev_requirements.txt') }}-${{ env.CACHE_NUMBER }} env: - CACHE_NUMBER: 1 # Increase this value to force cache reset + CACHE_NUMBER: 0 # Increase this value to force cache reset id: cache # Display environment details - name: Display environment details diff --git a/.github/workflows/pytest_ubuntu.yml b/.github/workflows/pytest_ubuntu.yml index 61c7f0a26..f6aa34be8 100644 --- a/.github/workflows/pytest_ubuntu.yml +++ b/.github/workflows/pytest_ubuntu.yml @@ -43,7 +43,7 @@ jobs: path: ${{ env.CONDA }}/envs key: conda-${{ runner.os }}-${{ runner.arch }}-${{ hashFiles('requirements.txt') }}-${{ hashFiles('dev_requirements.txt') }}-${{ env.CACHE_NUMBER }} env: - CACHE_NUMBER: 1 # Increase this value to force cache reset + CACHE_NUMBER: 0 # Increase this value to force cache reset id: cache # Display environment details - name: Display environment details From 058c3011781820ca08b2a2594c01a033bbbc7c3e Mon Sep 17 00:00:00 2001 From: Brendt Wohlberg Date: Fri, 7 Apr 2023 19:12:56 -0600 Subject: [PATCH 08/21] Add exception for .test_durations in file size check --- .github/workflows/check_files.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/check_files.yml b/.github/workflows/check_files.yml index e33e280be..89c05878b 100644 --- a/.github/workflows/check_files.yml +++ b/.github/workflows/check_files.yml @@ -22,5 +22,7 @@ jobs: continue-on-error: true - run: | for f in ${{ steps.files.outputs.added }}; do - ${GITHUB_WORKSPACE}/.github/./isbin.sh $f + if [ "$f" != ".test_durations"; then + ${GITHUB_WORKSPACE}/.github/./isbin.sh $f + fi done From f1d2f8644e213fae48628711eceda186e2814d8e Mon Sep 17 00:00:00 2001 From: Brendt Wohlberg Date: Fri, 7 Apr 2023 19:21:32 -0600 Subject: [PATCH 09/21] Fix syntax error --- .github/workflows/pytest_ubuntu.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pytest_ubuntu.yml b/.github/workflows/pytest_ubuntu.yml index f6aa34be8..f1014f29a 100644 --- a/.github/workflows/pytest_ubuntu.yml +++ b/.github/workflows/pytest_ubuntu.yml @@ -86,7 +86,7 @@ jobs: run: | pytest --ignore-glob="*test_*.py" --doctest-modules scico -coverage: + coverage: needs: test runs-on: ubuntu-latest steps: From 74c594152826e23034452b0205136f8af5445c85 Mon Sep 17 00:00:00 2001 From: Brendt Wohlberg Date: Fri, 7 Apr 2023 19:31:07 -0600 Subject: [PATCH 10/21] Revert cache index --- .github/workflows/pytest_macos.yml | 2 +- .github/workflows/pytest_ubuntu.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/pytest_macos.yml b/.github/workflows/pytest_macos.yml index 69114185d..c550857e0 100644 --- a/.github/workflows/pytest_macos.yml +++ b/.github/workflows/pytest_macos.yml @@ -43,7 +43,7 @@ jobs: path: ${{ env.CONDA }}/envs key: conda-${{ runner.os }}-${{ runner.arch }}-${{ hashFiles('requirements.txt') }}-${{ hashFiles('dev_requirements.txt') }}-${{ env.CACHE_NUMBER }} env: - CACHE_NUMBER: 0 # Increase this value to force cache reset + CACHE_NUMBER: 1 # Increase this value to force cache reset id: cache # Display environment details - name: Display environment details diff --git a/.github/workflows/pytest_ubuntu.yml b/.github/workflows/pytest_ubuntu.yml index f1014f29a..63d004370 100644 --- a/.github/workflows/pytest_ubuntu.yml +++ b/.github/workflows/pytest_ubuntu.yml @@ -43,7 +43,7 @@ jobs: path: ${{ env.CONDA }}/envs key: conda-${{ runner.os }}-${{ runner.arch }}-${{ hashFiles('requirements.txt') }}-${{ hashFiles('dev_requirements.txt') }}-${{ env.CACHE_NUMBER }} env: - CACHE_NUMBER: 0 # Increase this value to force cache reset + CACHE_NUMBER: 1 # Increase this value to force cache reset id: cache # Display environment details - name: Display environment details From f42c0fb3de2d6bf8c4aba639328be252812f6a06 Mon Sep 17 00:00:00 2001 From: Brendt Wohlberg Date: Sat, 8 Apr 2023 07:27:35 -0600 Subject: [PATCH 11/21] Bump jaxlib/jax max versions --- requirements.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/requirements.txt b/requirements.txt index 7c2d39184..40004f811 100644 --- a/requirements.txt +++ b/requirements.txt @@ -3,8 +3,8 @@ scipy>=1.6.0 tifffile imageio>=2.17 matplotlib -jaxlib>=0.3.2,<=0.4.2 -jax>=0.3.2,<=0.4.2 +jaxlib>=0.3.2,<=0.4.7 +jax>=0.3.2,<=0.4.8 flax>=0.5.1,<=0.6.1 bm3d>=4.0.0 bm4d>=4.2.2 From cb057d4c5da92caad0f7282aff4c84ddd26f95d5 Mon Sep 17 00:00:00 2001 From: Brendt Wohlberg Date: Sat, 8 Apr 2023 08:23:42 -0600 Subject: [PATCH 12/21] Add newline --- .test_durations | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.test_durations b/.test_durations index 5c67fffd1..5e76a5231 100644 --- a/.test_durations +++ b/.test_durations @@ -3222,4 +3222,4 @@ "scico/test/test_util.py::test_timer_reset": 0.00048420304665341973, "scico/test/test_util.py::test_url_get": 0.7940536070382223, "scico/test/test_version.py::test_var_val": 0.0027052650111727417 -} \ No newline at end of file +} From 73724de76aea86910c19df50990c15417909153d Mon Sep 17 00:00:00 2001 From: Brendt Wohlberg Date: Sat, 8 Apr 2023 08:24:16 -0600 Subject: [PATCH 13/21] Clean up and bump action versions --- .github/workflows/check_files.yml | 11 ++--------- .github/workflows/lint.yml | 22 ++++++++-------------- .github/workflows/lint_optional.yml | 6 +++--- .github/workflows/mypy.yml | 13 +++---------- .github/workflows/pypi_upload.yml | 8 ++++---- .github/workflows/pytest_latest.yml | 12 ++++-------- .github/workflows/pytest_macos.yml | 6 +++--- .github/workflows/pytest_ubuntu.yml | 18 +++++++++--------- .github/workflows/test_examples.yml | 8 ++++---- 9 files changed, 40 insertions(+), 64 deletions(-) diff --git a/.github/workflows/check_files.yml b/.github/workflows/check_files.yml index 89c05878b..a6df9a529 100644 --- a/.github/workflows/check_files.yml +++ b/.github/workflows/check_files.yml @@ -2,23 +2,16 @@ name: check files -# Controls when the action will run. on: [push, pull_request] -# -# A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: - # This workflow contains a single job called "build" checkfiles: - # The type of runner that the job will run on runs-on: ubuntu-latest - - # Steps represent a sequence of tasks that will be executed as part of the job steps: - name: checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 - id: files - uses: Ana06/get-changed-files@v1.2 + uses: Ana06/get-changed-files@v2.2.0 continue-on-error: true - run: | for f in ${{ steps.files.outputs.added }}; do diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index bba5e5cdc..f41bf1b69 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -2,33 +2,27 @@ name: lint -# Controls when the action will run. on: push: branches: - main pull_request: - -# A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: - # This workflow contains a single job called "build" lint: - # The type of runner that the job will run on runs-on: ubuntu-latest - - # Steps represent a sequence of tasks that will be executed as part of the job steps: - # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - - uses: actions/checkout@v2 - - uses: actions/setup-python@v2 + - uses: actions/checkout@v3 + - uses: actions/setup-python@v4 with: - python-version: "3.8" - + python-version: "3.9" - name: Black code formatter uses: psf/black@stable with: version: "22.3" - - name: Isort import sorter - uses: isort/isort-action@v0.1.0 + uses: isort/isort-action@v1 + - name: Pylint code analysis + run: | + pip install pylint + pylint --disable=all --enable=missing-docstring scico diff --git a/.github/workflows/lint_optional.yml b/.github/workflows/lint_optional.yml index f0f97d3c1..b9d775efd 100644 --- a/.github/workflows/lint_optional.yml +++ b/.github/workflows/lint_optional.yml @@ -20,10 +20,10 @@ jobs: # Steps represent a sequence of tasks that will be executed as part of the job steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - - uses: actions/checkout@v2 - - uses: actions/setup-python@v2 + - uses: actions/checkout@v3 + - uses: actions/setup-python@v4 with: - python-version: "3.8" + python-version: "3.9" - name: Install pylint run: | diff --git a/.github/workflows/mypy.yml b/.github/workflows/mypy.yml index bb209f2d1..8bbfe5f0f 100644 --- a/.github/workflows/mypy.yml +++ b/.github/workflows/mypy.yml @@ -2,32 +2,25 @@ name: mypy -# Controls when the workflow will run on: - # Triggers the workflow on push or pull request events but only for the main branch push: branches: [ main ] pull_request: branches: [ main ] - # Allows you to run this workflow manually from the Actions tab workflow_dispatch: jobs: mypy: - # The type of runner that the job will run on runs-on: ubuntu-latest - - # Steps represent a sequence of tasks that will be executed as part of the job steps: - # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 with: submodules: recursive - name: Install Python 3 - uses: actions/setup-python@v1 + uses: actions/setup-python@v4 with: - python-version: 3.8 + python-version: "3.9" - name: Install dependencies run: | pip install mypy diff --git a/.github/workflows/pypi_upload.yml b/.github/workflows/pypi_upload.yml index 428497847..2649da99b 100644 --- a/.github/workflows/pypi_upload.yml +++ b/.github/workflows/pypi_upload.yml @@ -1,6 +1,6 @@ # When a tag is pushed, build packages and upload to PyPI -name: pypi +name: pypi upload # Trigger when tags are pushed on: @@ -15,13 +15,13 @@ jobs: name: Upload package to PyPI runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 with: submodules: recursive - name: Install Python 3 - uses: actions/setup-python@v1 + uses: actions/setup-python@v4 with: - python-version: 3.8 + python-version: "3.9" - name: Install dependencies run: | python -m pip install --upgrade pip diff --git a/.github/workflows/pytest_latest.yml b/.github/workflows/pytest_latest.yml index f77db250a..f412f1b1e 100644 --- a/.github/workflows/pytest_latest.yml +++ b/.github/workflows/pytest_latest.yml @@ -1,6 +1,6 @@ # Install scico requirements and run pytest with latest jax version -name: unit tests -- latest jax +name: unit tests (latest jax) # Controls when the workflow will run on: @@ -13,19 +13,15 @@ on: jobs: pytest-latest-jax: - # The type of runner that the job will run on runs-on: ubuntu-latest - - # Steps represent a sequence of tasks that will be executed as part of the job steps: - # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 with: submodules: recursive - name: Install Python 3 - uses: actions/setup-python@v1 + uses: actions/setup-python@v4 with: - python-version: 3.8 + python-version: "3.9" - name: Install lastversion run: | python -m pip install --upgrade pip diff --git a/.github/workflows/pytest_macos.yml b/.github/workflows/pytest_macos.yml index c550857e0..477dc70a5 100644 --- a/.github/workflows/pytest_macos.yml +++ b/.github/workflows/pytest_macos.yml @@ -24,7 +24,7 @@ jobs: shell: bash -l {0} steps: # Check-out the repository under $GITHUB_WORKSPACE - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 with: submodules: recursive # Set up conda/mamba environment @@ -35,10 +35,10 @@ jobs: miniforge-version: latest activate-environment: test-env use-mamba: true - python-version: 3.9 + python-version: "3.9" # Configure conda environment cache - name: Set up conda environment cache - uses: actions/cache@v2 + uses: actions/cache@v3 with: path: ${{ env.CONDA }}/envs key: conda-${{ runner.os }}-${{ runner.arch }}-${{ hashFiles('requirements.txt') }}-${{ hashFiles('dev_requirements.txt') }}-${{ env.CACHE_NUMBER }} diff --git a/.github/workflows/pytest_ubuntu.yml b/.github/workflows/pytest_ubuntu.yml index 63d004370..315702d6e 100644 --- a/.github/workflows/pytest_ubuntu.yml +++ b/.github/workflows/pytest_ubuntu.yml @@ -24,7 +24,7 @@ jobs: shell: bash -l {0} steps: # Check-out the repository under $GITHUB_WORKSPACE - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 with: submodules: recursive # Set up conda/mamba environment @@ -35,10 +35,10 @@ jobs: miniforge-version: latest activate-environment: test-env use-mamba: true - python-version: 3.9 + python-version: "3.9" # Configure conda environment cache - name: Set up conda environment cache - uses: actions/cache@v2 + uses: actions/cache@v3 with: path: ${{ env.CONDA }}/envs key: conda-${{ runner.os }}-${{ runner.arch }}-${{ hashFiles('requirements.txt') }}-${{ hashFiles('dev_requirements.txt') }}-${{ env.CACHE_NUMBER }} @@ -76,7 +76,7 @@ jobs: run: pytest -x --cov --splits 5 --group ${{ matrix.group }} # Upload coverage data - name: Upload coverage - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: coverage${{ matrix.group }} path: .coverage @@ -90,24 +90,24 @@ jobs: needs: test runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Set up Python 3.9 - uses: actions/setup-python@v2 + uses: actions/setup-python@4 with: - python-version: 3.9 + python-version: "3.9" - name: Install deps run: | python -m pip install --upgrade pip pip install coverage - name: Download all artifacts # Downloads coverage1, coverage2, etc. - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v3 - name: Run coverage run: | coverage combine coverage*/.coverage* coverage report coverage xml - - uses: codecov/codecov-action@v2 + - uses: codecov/codecov-action@v3 with: env_vars: OS,PYTHON fail_ci_if_error: false diff --git a/.github/workflows/test_examples.yml b/.github/workflows/test_examples.yml index f5101ab73..d629d34d6 100644 --- a/.github/workflows/test_examples.yml +++ b/.github/workflows/test_examples.yml @@ -1,4 +1,4 @@ -# Install scico requirements and run pytest +# Install scico requirements and run short versions of example scripts name: test examples @@ -30,7 +30,7 @@ jobs: # Steps represent a sequence of tasks that will be executed as part of the job steps: # Check-out the repository under $GITHUB_WORKSPACE - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 with: submodules: recursive # Set up conda/mamba environment @@ -41,10 +41,10 @@ jobs: miniforge-version: latest activate-environment: test-env use-mamba: true - python-version: 3.9 + python-version: "3.9" # Configure conda environment cache - name: Set up conda environment cache - uses: actions/cache@v2 + uses: actions/cache@v3 with: path: ${{ env.CONDA }}/envs key: conda-${{ runner.os }}-${{ runner.arch }}-${{ hashFiles('requirements.txt') }}-${{ hashFiles('dev_requirements.txt') }}-${{ hashFiles('examples/examples_requirements.txt') }}-${{ env.CACHE_NUMBER }} From cb1456ad21719105c5b47d914ea18ff3cc27b16d Mon Sep 17 00:00:00 2001 From: Brendt Wohlberg Date: Sat, 8 Apr 2023 08:25:02 -0600 Subject: [PATCH 14/21] Action for pylint moved into main lint workflow --- .github/workflows/lint_optional.yml | 34 ----------------------------- 1 file changed, 34 deletions(-) delete mode 100644 .github/workflows/lint_optional.yml diff --git a/.github/workflows/lint_optional.yml b/.github/workflows/lint_optional.yml deleted file mode 100644 index b9d775efd..000000000 --- a/.github/workflows/lint_optional.yml +++ /dev/null @@ -1,34 +0,0 @@ -# Runs optional, "nice to have" formatting checks - -name: optional lint - -# Controls when the action will run. -on: - push: - branches: - - main - pull_request: - - -# A workflow run is made up of one or more jobs that can run sequentially or in parallel -jobs: - # This workflow contains a single job - lint-optional: - # The type of runner that the job will run on - runs-on: ubuntu-latest - - # Steps represent a sequence of tasks that will be executed as part of the job - steps: - # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - - uses: actions/checkout@v3 - - uses: actions/setup-python@v4 - with: - python-version: "3.9" - - - name: Install pylint - run: | - pip install pylint - - - name: Pylint code analysis - run: | - pylint --disable=all --enable=missing-docstring scico From 8931aca2d3605e96aa07f6862dc2d21fcdd0af62 Mon Sep 17 00:00:00 2001 From: Brendt Wohlberg Date: Sat, 8 Apr 2023 08:35:13 -0600 Subject: [PATCH 15/21] Typo fix --- .github/workflows/pytest_ubuntu.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pytest_ubuntu.yml b/.github/workflows/pytest_ubuntu.yml index 315702d6e..1537da4da 100644 --- a/.github/workflows/pytest_ubuntu.yml +++ b/.github/workflows/pytest_ubuntu.yml @@ -92,7 +92,7 @@ jobs: steps: - uses: actions/checkout@v3 - name: Set up Python 3.9 - uses: actions/setup-python@4 + uses: actions/setup-python@v4 with: python-version: "3.9" - name: Install deps From 8924ec0607357f15c6cc04242eebba3077ea04b5 Mon Sep 17 00:00:00 2001 From: Brendt Wohlberg Date: Sat, 8 Apr 2023 08:42:30 -0600 Subject: [PATCH 16/21] Clean up --- .github/workflows/test_examples.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/.github/workflows/test_examples.yml b/.github/workflows/test_examples.yml index d629d34d6..e73888ef9 100644 --- a/.github/workflows/test_examples.yml +++ b/.github/workflows/test_examples.yml @@ -2,9 +2,7 @@ name: test examples -# Control when the workflow will run on: - # Trigger the workflow on push or pull request events but only for the main branch push: branches: [ main ] pull_request: @@ -27,7 +25,6 @@ jobs: defaults: run: shell: bash -l {0} - # Steps represent a sequence of tasks that will be executed as part of the job steps: # Check-out the repository under $GITHUB_WORKSPACE - uses: actions/checkout@v3 From 3a5d83bb29a4e37eff8faf080b75728640595d63 Mon Sep 17 00:00:00 2001 From: Brendt Wohlberg Date: Sat, 8 Apr 2023 08:45:33 -0600 Subject: [PATCH 17/21] Remove matrix usage --- .github/workflows/test_examples.yml | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/.github/workflows/test_examples.yml b/.github/workflows/test_examples.yml index e73888ef9..22da2d09d 100644 --- a/.github/workflows/test_examples.yml +++ b/.github/workflows/test_examples.yml @@ -13,15 +13,10 @@ on: jobs: build: + runs-on: ubuntu-latest strategy: fail-fast: false - matrix: - include: - - os: ubuntu-latest - label: linux-64 - prefix: /usr/share/miniconda3/envs/test-env - name: ${{ matrix.label }} - runs-on: ${{ matrix.os }} + name: test examples (ubuntu) defaults: run: shell: bash -l {0} @@ -55,7 +50,6 @@ jobs: printenv | sort # Install required system package - name: Install required system package - if: matrix.os == 'ubuntu-latest' run: sudo apt-get install -y libopenblas-dev # Install dependencies in conda environment - name: Install dependencies From 9c059d93ff070814d3046ca7d75174a6d99c108c Mon Sep 17 00:00:00 2001 From: Brendt Wohlberg Date: Sat, 8 Apr 2023 09:46:32 -0600 Subject: [PATCH 18/21] Change action names --- .github/workflows/pytest_macos.yml | 2 +- .github/workflows/pytest_ubuntu.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/pytest_macos.yml b/.github/workflows/pytest_macos.yml index 477dc70a5..fcfc98a04 100644 --- a/.github/workflows/pytest_macos.yml +++ b/.github/workflows/pytest_macos.yml @@ -18,7 +18,7 @@ jobs: fail-fast: false matrix: group: [1, 2, 3, 4, 5] - name: pytest split ${{ matrix.group }} + name: pytest split ${{ matrix.group }} (macos) defaults: run: shell: bash -l {0} diff --git a/.github/workflows/pytest_ubuntu.yml b/.github/workflows/pytest_ubuntu.yml index 1537da4da..af8a57705 100644 --- a/.github/workflows/pytest_ubuntu.yml +++ b/.github/workflows/pytest_ubuntu.yml @@ -18,7 +18,7 @@ jobs: fail-fast: false matrix: group: [1, 2, 3, 4, 5] - name: pytest split ${{ matrix.group }} + name: pytest split ${{ matrix.group }} (ubuntu) defaults: run: shell: bash -l {0} From 81f955075d23716bdfb74b44912d7a6111d8611a Mon Sep 17 00:00:00 2001 From: Brendt Wohlberg Date: Sat, 8 Apr 2023 11:18:20 -0600 Subject: [PATCH 19/21] Add note on pytest-split in dev docs --- docs/source/contributing.rst | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/docs/source/contributing.rst b/docs/source/contributing.rst index 051f2c4e0..38d20f351 100644 --- a/docs/source/contributing.rst +++ b/docs/source/contributing.rst @@ -317,6 +317,16 @@ version of ``scico`` by pytest --pyargs scico +When any significant changes are made to the test suite, the ``pytest-split`` test +time database file ``.test_durations`` in the repository root directory should be +updated + +:: + + pytest --store-durations + +and the changes should be committed into the repository. + Test Coverage ^^^^^^^^^^^^^ From 119050549426a489624f0ece14d1ba0369d2ff36 Mon Sep 17 00:00:00 2001 From: Brendt Wohlberg Date: Sat, 8 Apr 2023 11:19:10 -0600 Subject: [PATCH 20/21] Move handling of size exception for pytest-split durations file from workflow to script --- .github/isbin.sh | 3 ++- .github/workflows/check_files.yml | 4 +--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/.github/isbin.sh b/.github/isbin.sh index 502137245..78448b579 100755 --- a/.github/isbin.sh +++ b/.github/isbin.sh @@ -15,7 +15,8 @@ for f in $@; do Darwin) size=$(stat -f "%z" $f);; *) echo "Error: unsupported operating system $OS" >&2; exit 1;; esac - if [ $size -gt $size_threshold ]; then + # Exception on maximum size for pytest-split .test_durations file + if [ $size -gt $size_threshold ] && [ "$(basename $f)" != ".test_durations" ]; then echo "file exceeds maximum allowable size of $size_threshold bytes" echo "raw data and ipynb files should go in scico-data" exit 2 diff --git a/.github/workflows/check_files.yml b/.github/workflows/check_files.yml index a6df9a529..d6bcc408f 100644 --- a/.github/workflows/check_files.yml +++ b/.github/workflows/check_files.yml @@ -15,7 +15,5 @@ jobs: continue-on-error: true - run: | for f in ${{ steps.files.outputs.added }}; do - if [ "$f" != ".test_durations"; then - ${GITHUB_WORKSPACE}/.github/./isbin.sh $f - fi + ${GITHUB_WORKSPACE}/.github/./isbin.sh $f done From 5c5adbad08a0c8a89ae48e4d19eb72ad80062502 Mon Sep 17 00:00:00 2001 From: Brendt Wohlberg Date: Mon, 10 Apr 2023 14:42:37 -0600 Subject: [PATCH 21/21] Add explicit recommendation for python 3.9 --- docs/source/install.rst | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/docs/source/install.rst b/docs/source/install.rst index f1e5397b3..4a619f36f 100644 --- a/docs/source/install.rst +++ b/docs/source/install.rst @@ -3,10 +3,12 @@ Installing SCICO ================ -SCICO requires Python version 3.7 or later. It has been tested on -Linux and macOS, but is not currently supported on Windows due to the -limited support for ``jaxlib`` on Windows. However, Windows users can -use SCICO via the `Windows Subsystem for Linux +SCICO requires Python version 3.7 or later. (Version 3.9 is +recommended as it is the version under which SCICO has been most +thoroughly tested.) It is supported on both Linux and macOS, but is +not currently supported on Windows due to the limited support for +``jaxlib`` on Windows. However, Windows users can use SCICO via the +`Windows Subsystem for Linux `_ (WSL). Guides exist for using WSL with `CPU only `_ and