diff --git a/.github/workflows/regression_test.yml b/.github/workflows/regression_test.yml index d89ca7f8a1..ac3c20bdd5 100644 --- a/.github/workflows/regression_test.yml +++ b/.github/workflows/regression_test.yml @@ -53,10 +53,14 @@ jobs: ./prof.db - name: Upload coverage id : codecov - uses: codecov/codecov-action@v3 + uses: Wandalen/wretry.action@v1.0.36 with: - token: ${{ secrets.CODECOV_TOKEN }} # maybe needed to avoid upload failure? - name: codecov-umbrella # optional - files: ./cov.xml - fail_ci_if_error: true # optional (default = false) - verbose: true # optional (default = false) + action: codecov/codecov-action@v3 + with: | + token: ${{ secrets.CODECOV_TOKEN }} + name: codecov-umbrella + files: ./cov.xml + fail_ci_if_error: true + verbose: true + attempt_limit: 10 + attempt_delay: 60000 # ms, 1 min diff --git a/.github/workflows/unittest.yml b/.github/workflows/unittest.yml index 96c4391af5..e8aae7d1d9 100644 --- a/.github/workflows/unittest.yml +++ b/.github/workflows/unittest.yml @@ -53,10 +53,14 @@ jobs: ./prof.db - name: Upload coverage id : codecov - uses: codecov/codecov-action@v3 + uses: Wandalen/wretry.action@v1.0.36 with: - token: ${{ secrets.CODECOV_TOKEN }} # maybe needed to avoid upload failure? - name: codecov-umbrella # optional - files: ./cov.xml - fail_ci_if_error: true # optional (default = false) - verbose: true # optional (default = false) + action: codecov/codecov-action@v3 + with: | + token: ${{ secrets.CODECOV_TOKEN }} + name: codecov-umbrella + files: ./cov.xml + fail_ci_if_error: true + verbose: true + attempt_limit: 10 + attempt_delay: 60000 # ms, 1 min diff --git a/.test_durations b/.test_durations index b36c92da7e..29003036c2 100644 --- a/.test_durations +++ b/.test_durations @@ -1,293 +1,420 @@ { - "tests/test_backend.py::TestBackend::test_put": 0.16319112002383918, - "tests/test_backend.py::TestBackend::test_sign": 0.16426278100698255, - "tests/test_basis.py::TestBasis::test_change_resolution": 0.09631870599696413, - "tests/test_basis.py::TestBasis::test_double_fourier": 0.18843939795624465, - "tests/test_basis.py::TestBasis::test_fourier": 0.18170268696849234, - "tests/test_basis.py::TestBasis::test_polyder": 0.09330158800003119, - "tests/test_basis.py::TestBasis::test_polyval": 0.09197025297908112, - "tests/test_basis.py::TestBasis::test_polyval_exact": 2.8620459400117397, - "tests/test_basis.py::TestBasis::test_power_series": 0.10349116296856664, - "tests/test_basis.py::TestBasis::test_powers": 0.09307941800216213, - "tests/test_basis.py::TestBasis::test_repr": 0.09073432398145087, - "tests/test_basis.py::TestBasis::test_zernike_coeffs": 0.13976593600818887, - "tests/test_basis.py::TestBasis::test_zernike_indexing": 0.09698877201299183, - "tests/test_basis.py::TestBasis::test_zernike_radial": 0.5507492260076106, - "tests/test_coils.py::TestCoil::test_biot_savart": 0.8366880850226153, - "tests/test_coils.py::TestCoil::test_properties": 0.13962548301788047, - "tests/test_coils.py::TestCoilSet::test_dunder_methods": 0.1670936300070025, - "tests/test_coils.py::TestCoilSet::test_from_symmetry": 1.95217022599536, - "tests/test_coils.py::TestCoilSet::test_linspaced_angular": 1.5172912959824316, - "tests/test_coils.py::TestCoilSet::test_linspaced_linear": 0.8379850559867918, - "tests/test_coils.py::TestCoilSet::test_properties": 0.9087907820066903, - "tests/test_coils.py::test_repr": 0.14657297803205438, - "tests/test_compute_funs.py::test_boozer_transform": 0.8543369600083679, - "tests/test_compute_funs.py::test_compute_grad_p_volume_avg": 1.166078924026806, - "tests/test_compute_funs.py::test_currents": 111.83763053501025, - "tests/test_compute_funs.py::test_enclosed_volumes": 1.4088912659790367, - "tests/test_compute_funs.py::test_magnetic_field_derivatives": 5.090162754029734, - "tests/test_compute_funs.py::test_magnetic_pressure_gradient": 2.384153289021924, - "tests/test_compute_funs.py::test_quasisymmetry": 1.3683032389963046, - "tests/test_compute_funs.py::test_surface_areas": 0.2266164670290891, - "tests/test_compute_funs.py::test_surface_areas_2": 0.6484118379885331, - "tests/test_compute_funs.py::test_total_volume": 3.445375281997258, - "tests/test_compute_utils.py::TestComputeUtils::test_compress_expand_inverse_op": 0.3591451329702977, - "tests/test_compute_utils.py::TestComputeUtils::test_surface_area_unweighted": 0.40747741499217227, - "tests/test_compute_utils.py::TestComputeUtils::test_surface_area_weighted": 256.5931261689693, - "tests/test_compute_utils.py::TestComputeUtils::test_surface_averages_homomorphism": 2.235762157011777, - "tests/test_compute_utils.py::TestComputeUtils::test_surface_averages_identity_op": 1.727436329005286, - "tests/test_compute_utils.py::TestComputeUtils::test_surface_averages_shortcut": 2.6950305300124455, - "tests/test_compute_utils.py::TestComputeUtils::test_surface_integrals": 1.2604645310202613, - "tests/test_configuration.py::TestConstructor::test_asserts": 1.198015188012505, - "tests/test_configuration.py::TestConstructor::test_defaults": 0.8572356459626462, - "tests/test_configuration.py::TestConstructor::test_dict": 1.3178368409862742, - "tests/test_configuration.py::TestConstructor::test_supplied_coeffs": 0.8534832569421269, - "tests/test_configuration.py::TestConstructor::test_supplied_objects": 2.159155530971475, - "tests/test_configuration.py::TestGetSurfaces::test_asserts": 0.6613783299981151, - "tests/test_configuration.py::TestGetSurfaces::test_get_rho_surface": 0.9187118810077664, - "tests/test_configuration.py::TestGetSurfaces::test_get_theta_surface": 0.6687887860171031, - "tests/test_configuration.py::TestGetSurfaces::test_get_zeta_surface": 0.8993502040102612, - "tests/test_configuration.py::TestInitialGuess::test_NFP_error": 0.8808454989921302, - "tests/test_configuration.py::TestInitialGuess::test_default_set": 0.915381222992437, - "tests/test_configuration.py::TestInitialGuess::test_errors": 1.002504048985429, - "tests/test_configuration.py::TestInitialGuess::test_guess_from_file": 2.3030205390241463, - "tests/test_configuration.py::TestInitialGuess::test_guess_from_other": 0.9838326910103206, - "tests/test_configuration.py::TestInitialGuess::test_guess_from_points": 2.173820334021002, - "tests/test_configuration.py::TestInitialGuess::test_guess_from_surface": 0.956458842032589, - "tests/test_configuration.py::TestInitialGuess::test_guess_from_surface2": 1.1183009260275867, - "tests/test_configuration.py::test_get_profile": 3.642123261000961, - "tests/test_configuration.py::test_is_nested": 1.3905554809898604, - "tests/test_configuration.py::test_magnetic_axis": 2.2655431880266406, - "tests/test_constrain_current.py::TestConstrainCurrent::test_compute_rotational_transform": 13.517721238022204, - "tests/test_curves.py::TestPlanarCurve::test_asserts": 0.6460642149904743, - "tests/test_curves.py::TestPlanarCurve::test_coords": 0.6764707929978613, - "tests/test_curves.py::TestPlanarCurve::test_curvature": 0.6667683980194852, - "tests/test_curves.py::TestPlanarCurve::test_frenet": 0.6670568520203233, - "tests/test_curves.py::TestPlanarCurve::test_length": 0.7436973699659575, - "tests/test_curves.py::TestPlanarCurve::test_misc": 0.6544971340044867, - "tests/test_curves.py::TestPlanarCurve::test_torsion": 0.6316438130452298, - "tests/test_curves.py::TestRZCurve::test_asserts": 0.6389665480237454, - "tests/test_curves.py::TestRZCurve::test_coords": 0.6710343150189146, - "tests/test_curves.py::TestRZCurve::test_curvature": 0.7695501619600691, - "tests/test_curves.py::TestRZCurve::test_frenet": 0.7360348039946984, - "tests/test_curves.py::TestRZCurve::test_length": 0.9842730220116209, - "tests/test_curves.py::TestRZCurve::test_misc": 0.9369691349857021, - "tests/test_curves.py::TestRZCurve::test_torsion": 0.7952102440176532, - "tests/test_curves.py::TestXYZCurve::test_asserts": 0.6336826689948794, - "tests/test_curves.py::TestXYZCurve::test_coords": 0.6812499600055162, - "tests/test_curves.py::TestXYZCurve::test_curvature": 0.7301508240343537, - "tests/test_curves.py::TestXYZCurve::test_frenet": 0.7319349579920527, - "tests/test_curves.py::TestXYZCurve::test_length": 0.8130863039987162, - "tests/test_curves.py::TestXYZCurve::test_misc": 0.7831981630006339, - "tests/test_curves.py::TestXYZCurve::test_torsion": 0.747824740014039, - "tests/test_derivatives.py::TestDerivative::test_auto_diff": 0.7384990860009566, - "tests/test_derivatives.py::TestDerivative::test_block_jacobian": 0.7280762430164032, - "tests/test_derivatives.py::TestDerivative::test_compare_AD_FD": 0.6200078560214024, - "tests/test_derivatives.py::TestDerivative::test_fd_hessian": 0.614050998003222, - "tests/test_derivatives.py::TestDerivative::test_finite_diff_scalar": 0.6654848970065359, - "tests/test_derivatives.py::TestDerivative::test_finite_diff_vec": 0.6779936130042188, - "tests/test_derivatives.py::TestJVP::test_autodiff_jvp": 0.7038427339866757, - "tests/test_derivatives.py::TestJVP::test_autodiff_jvp2": 0.7853501120116562, - "tests/test_derivatives.py::TestJVP::test_autodiff_jvp3": 0.8913855760183651, - "tests/test_derivatives.py::TestJVP::test_finitediff_jvp": 0.67088464598055, - "tests/test_derivatives.py::TestJVP::test_finitediff_jvp2": 0.6070375640119892, - "tests/test_derivatives.py::TestJVP::test_finitediff_jvp3": 0.6251592839544173, - "tests/test_equilibrium.py::test_compute_flux_coords": 15.209058665001066, - "tests/test_equilibrium.py::test_compute_geometry": 1.2732213250128552, - "tests/test_equilibrium.py::test_compute_theta_coords": 3.9769973900401965, - "tests/test_equilibrium.py::test_continuation_resolution": 237.01995517400792, - "tests/test_equilibrium.py::test_eq_change_grid_resolution": 0.9327539860096294, - "tests/test_equilibrium.py::test_grid_resolution_warning": 178.11868567197234, - "tests/test_equilibrium.py::test_poincare_solve_not_implemented": 0.857799726043595, - "tests/test_equilibrium.py::test_resolution": 3.0189467390009668, - "tests/test_equilibrium.py::test_to_sfl": 19.221051273023477, - "tests/test_examples.py::TestGetExample::test_example_get_boundary": 3.6288866480172146, - "tests/test_examples.py::TestGetExample::test_example_get_current": 3.248082249017898, - "tests/test_examples.py::TestGetExample::test_example_get_eq": 1.9564476310042664, - "tests/test_examples.py::TestGetExample::test_example_get_eqf": 2.059858627995709, - "tests/test_examples.py::TestGetExample::test_example_get_iota": 3.4363666589779314, - "tests/test_examples.py::TestGetExample::test_example_get_pressure": 2.8821033500134945, - "tests/test_examples.py::test_1d_optimization": 31.088467855995987, - "tests/test_examples.py::test_1d_optimization_old": 46.100569873000495, - "tests/test_examples.py::test_DSHAPE_current_results": 200.0, - "tests/test_examples.py::test_DSHAPE_results": 200.0, - "tests/test_examples.py::test_HELIOTRON_results": 300.0, - "tests/test_examples.py::test_HELIOTRON_vac_results": 300.0, - "tests/test_examples.py::test_HELIOTRON_vac2_results": 1290.0, - "tests/test_examples.py::test_SOLOVEV_results": 100.997857671958627, - "tests/test_examples.py::test_SOLOVEV_vacuum": 100.81667408300564, - "tests/test_examples.py::test_force_balance_grids": 101.74212181699113, - "tests/test_examples.py::test_precise_QH_results": 560.4903232780052, - "tests/test_examples.py::test_qh_optimization1": 1643.437367072038, - "tests/test_examples.py::test_qh_optimization2": 1195.9998399379838, - "tests/test_examples.py::test_qh_optimization3": 1407.5206727749901, - "tests/test_geometry.py::test_rotation_matrix": 1.5397195909754373, - "tests/test_geometry.py::test_rpz2xyz": 1.4642370289657265, - "tests/test_geometry.py::test_xyz2rpz": 1.5709302359609865, - "tests/test_grid.py::TestGrid::test_change_resolution": 1.4480899419868365, - "tests/test_grid.py::TestGrid::test_concentric_grid": 1.4567486299783923, - "tests/test_grid.py::TestGrid::test_concentric_grid_high_res": 1.494575395976426, - "tests/test_grid.py::TestGrid::test_custom_grid": 1.4680156579706818, - "tests/test_grid.py::TestGrid::test_enforce_symmetry": 2.0861028060026, - "tests/test_grid.py::TestGrid::test_linear_grid": 1.4557259859866463, - "tests/test_grid.py::TestGrid::test_quad_grid_volume_integration": 1.8694028120371513, - "tests/test_grid.py::TestGrid::test_quadrature_grid": 1.4610482779680751, - "tests/test_grid.py::TestGrid::test_repr": 1.4673847810190637, - "tests/test_grid.py::TestGrid::test_symmetry_1": 4.53792224402423, - "tests/test_grid.py::TestGrid::test_symmetry_2": 3.8594748839677777, - "tests/test_input_output.py::TestInputReader::test_min_input": 1.4747687059862074, - "tests/test_input_output.py::TestInputReader::test_no_input_file": 1.4564473169739358, - "tests/test_input_output.py::TestInputReader::test_nonexistant_input_file": 1.473389380989829, - "tests/test_input_output.py::TestInputReader::test_np_environ": 1.480906559037976, - "tests/test_input_output.py::TestInputReader::test_quiet_verbose": 1.4606568470189814, - "tests/test_input_output.py::TestInputReader::test_vmec_to_desc_input": 1.4493063819827512, - "tests/test_input_output.py::test_ascii_io": 5.426259528991068, - "tests/test_input_output.py::test_copy": 1.703767811995931, - "tests/test_input_output.py::test_load_eq_without_current": 2.0889322780130897, - "tests/test_input_output.py::test_pickle_io": 1.8728483240120113, - "tests/test_input_output.py::test_reader_given_file": 1.4808904849633109, - "tests/test_input_output.py::test_reader_given_filename": 1.4612609439936932, - "tests/test_input_output.py::test_reader_read_obj": 1.4717297979805153, - "tests/test_input_output.py::test_save_none": 1.805593198951101, - "tests/test_input_output.py::test_vmec_input": 1.489481429947773, - "tests/test_input_output.py::test_writer_close_on_delete": 1.481737236957997, - "tests/test_input_output.py::test_writer_given_file": 1.4845355059951544, - "tests/test_input_output.py::test_writer_given_filename": 1.4506622340122703, - "tests/test_input_output.py::test_writer_write_dict": 1.469267923006555, - "tests/test_input_output.py::test_writer_write_list": 1.489657326019369, - "tests/test_input_output.py::test_writer_write_obj": 1.4807869029755238, - "tests/test_interpolate.py::TestInterp1D::test_interp1d": 2.702828766021412, - "tests/test_interpolate.py::TestInterp1D::test_interp1d_extrap_periodic": 2.266618116002064, - "tests/test_interpolate.py::TestInterp2D::test_interp2d": 2.2447289300325792, - "tests/test_interpolate.py::TestInterp3D::test_interp3d": 2.7806478349957615, - "tests/test_linear_objectives.py::test_LambdaGauge_asym": 1.7328490489453543, - "tests/test_linear_objectives.py::test_LambdaGauge_axis_sym": 1.8381405510299373, - "tests/test_linear_objectives.py::test_bc_on_interior_surfaces": 14.81425315400702, - "tests/test_linear_objectives.py::test_constrain_asserts": 31.84686429001158, - "tests/test_magnetic_fields.py::TestMagneticFields::test_basic_fields": 1.6450301119766664, - "tests/test_magnetic_fields.py::TestMagneticFields::test_field_line_integrate": 3.4947850040043704, - "tests/test_magnetic_fields.py::TestMagneticFields::test_scalar_field": 1.8318521420296747, - "tests/test_magnetic_fields.py::TestMagneticFields::test_spline_field": 4.8133795030007605, - "tests/test_objective_funs.py::TestObjectiveFunction::test_aspect_ratio": 3.012601396010723, - "tests/test_objective_funs.py::TestObjectiveFunction::test_energy": 2.992766459006816, - "tests/test_objective_funs.py::TestObjectiveFunction::test_generic": 3.423548609018326, - "tests/test_objective_funs.py::TestObjectiveFunction::test_magnetic_well": 6.2297250690171495, - "tests/test_objective_funs.py::TestObjectiveFunction::test_mercier_stability": 17.57055788100115, - "tests/test_objective_funs.py::TestObjectiveFunction::test_qs_boozer": 4.202963344985619, - "tests/test_objective_funs.py::TestObjectiveFunction::test_qs_tp": 14.557538277003914, - "tests/test_objective_funs.py::TestObjectiveFunction::test_qs_twoterm": 6.705576468986692, - "tests/test_objective_funs.py::TestObjectiveFunction::test_toroidal_current": 3.994107782986248, - "tests/test_objective_funs.py::TestObjectiveFunction::test_volume": 4.062468552001519, - "tests/test_objective_funs.py::test_derivative_modes": 391.7970264759788, - "tests/test_optimizer.py::TestFmin::test_rosenbrock_bfgs_dogleg": 1.7731215420353692, - "tests/test_optimizer.py::TestFmin::test_rosenbrock_bfgs_subspace": 2.3863207020331174, - "tests/test_optimizer.py::TestFmin::test_rosenbrock_full_hess_dogleg": 1.8966979979886673, - "tests/test_optimizer.py::TestFmin::test_rosenbrock_full_hess_subspace": 2.3888533609861042, - "tests/test_optimizer.py::TestLSQTR::test_lsqtr_exact": 2.8565440920065157, - "tests/test_optimizer.py::TestUtils::test_chol_update": 1.6670248139998876, - "tests/test_optimizer.py::TestUtils::test_spd": 1.6424918360135052, - "tests/test_optimizer.py::test_no_iterations": 2.3791265140171163, - "tests/test_perturbations.py::test_perturbation_orders": 129.85230036798748, - "tests/test_plotting.py::TestPlotBasis::test_plot_basis_doublefourierseries": 3.792620274994988, - "tests/test_plotting.py::TestPlotBasis::test_plot_basis_fourierseries": 1.9941100619616918, - "tests/test_plotting.py::TestPlotBasis::test_plot_basis_fourierzernike": 4.190899224020541, - "tests/test_plotting.py::TestPlotBasis::test_plot_basis_powerseries": 1.9374719460029155, - "tests/test_plotting.py::TestPlotFieldLines::test_field_line_Rbf": 2.16478733898839, - "tests/test_plotting.py::TestPlotFieldLines::test_find_idx": 2.1202878360054456, - "tests/test_plotting.py::TestPlotFieldLines::test_plot_field_line": 6.945935281022685, - "tests/test_plotting.py::TestPlotFieldLines::test_plot_field_lines": 9.593261955975322, - "tests/test_plotting.py::TestPlotGrid::test_plot_grid_cheb1": 1.9655225880269427, - "tests/test_plotting.py::TestPlotGrid::test_plot_grid_cheb2": 1.999716314021498, - "tests/test_plotting.py::TestPlotGrid::test_plot_grid_jacobi": 1.9859356309752911, - "tests/test_plotting.py::TestPlotGrid::test_plot_grid_linear": 1.9851959129737224, - "tests/test_plotting.py::TestPlotGrid::test_plot_grid_ocs": 1.9463835320202634, - "tests/test_plotting.py::TestPlotGrid::test_plot_grid_quad": 1.9654274340136908, - "tests/test_plotting.py::test_1d_dpdr": 2.2926437749702018, - "tests/test_plotting.py::test_1d_iota": 3.3607909139827825, - "tests/test_plotting.py::test_1d_logpsi": 2.257147044991143, - "tests/test_plotting.py::test_1d_p": 2.3017256209859625, - "tests/test_plotting.py::test_2d_g_rz": 2.753738532977877, - "tests/test_plotting.py::test_2d_g_tz": 2.51474775801762, - "tests/test_plotting.py::test_2d_lambda": 2.689261372986948, - "tests/test_plotting.py::test_2d_logF": 5.374985898990417, - "tests/test_plotting.py::test_3d_B": 3.220174102985766, - "tests/test_plotting.py::test_3d_J": 3.631269923003856, - "tests/test_plotting.py::test_3d_rt": 2.7417033099918626, - "tests/test_plotting.py::test_3d_rz": 2.7528771010111086, - "tests/test_plotting.py::test_3d_tz": 3.712983923003776, - "tests/test_plotting.py::test_fsa_F_normalized": 3.053683372971136, - "tests/test_plotting.py::test_fsa_F_normalized_vac": 2.7482764269807376, - "tests/test_plotting.py::test_fsa_G": 2.378249286994105, - "tests/test_plotting.py::test_fsa_I": 4.512178917997517, - "tests/test_plotting.py::test_kwarg_warning": 2.30944493500283, - "tests/test_plotting.py::test_plot_boozer_modes": 7.7288275150058325, - "tests/test_plotting.py::test_plot_boozer_surface": 5.104041640996002, - "tests/test_plotting.py::test_plot_coefficients": 2.2839196829881985, - "tests/test_plotting.py::test_plot_coils": 3.638421142997686, - "tests/test_plotting.py::test_plot_comparison": 6.942529977997765, - "tests/test_plotting.py::test_plot_comparison_no_theta": 2.3592095820058603, - "tests/test_plotting.py::test_plot_con_basis": 2.5211848939943593, - "tests/test_plotting.py::test_plot_cov_basis": 2.307325136993313, - "tests/test_plotting.py::test_plot_gradpsi": 2.4397075929737184, - "tests/test_plotting.py::test_plot_logo": 2.7058820089732762, - "tests/test_plotting.py::test_plot_magnetic_pressure": 2.8541176349972375, - "tests/test_plotting.py::test_plot_magnetic_tension": 3.322700363001786, - "tests/test_plotting.py::test_plot_normF_2d": 3.9124047159566544, - "tests/test_plotting.py::test_plot_normF_section": 2.980355279025389, - "tests/test_plotting.py::test_plot_qs_error": 18.365020049997838, - "tests/test_plotting.py::test_plot_surfaces": 5.444630615005735, - "tests/test_plotting.py::test_plot_surfaces_no_theta": 2.2404943559668027, - "tests/test_plotting.py::test_section_F": 3.062708245997783, - "tests/test_plotting.py::test_section_F_normalized_vac": 2.952978717017686, - "tests/test_plotting.py::test_section_J": 4.845190132968128, - "tests/test_plotting.py::test_section_R": 2.368843229021877, - "tests/test_plotting.py::test_section_Z": 2.3481368900102098, - "tests/test_plotting.py::test_section_logF": 2.788303903013002, - "tests/test_profiles.py::TestProfiles::test_auto_sym": 2.0103773389710113, - "tests/test_profiles.py::TestProfiles::test_close_values": 5.677604734984925, - "tests/test_profiles.py::TestProfiles::test_get_set": 2.138723647018196, - "tests/test_profiles.py::TestProfiles::test_product_profiles": 2.0888888699992094, - "tests/test_profiles.py::TestProfiles::test_profile_errors": 2.4953183619945776, - "tests/test_profiles.py::TestProfiles::test_repr": 2.5566192039987072, - "tests/test_profiles.py::TestProfiles::test_same_result": 50.40738377699745, - "tests/test_profiles.py::TestProfiles::test_scaled_profiles": 2.0377777140238322, - "tests/test_profiles.py::TestProfiles::test_sum_profiles": 2.5949475129891653, - "tests/test_stability_funs.py::test_compute_d_current": 10.26604151900392, - "tests/test_stability_funs.py::test_compute_d_geodesic": 16.73436694202246, - "tests/test_stability_funs.py::test_compute_d_mercier": 16.63742676001857, - "tests/test_stability_funs.py::test_compute_d_shear": 11.923570563987596, - "tests/test_stability_funs.py::test_compute_d_well": 16.141793721006252, - "tests/test_stability_funs.py::test_compute_magnetic_well": 10.886665541969705, - "tests/test_stability_funs.py::test_mercier_vacuum": 3.707642222987488, - "tests/test_surfaces.py::TestFourierRZToroidalSurface::test_area": 3.7962669679836836, - "tests/test_surfaces.py::TestFourierRZToroidalSurface::test_from_input_file": 3.7656214559974615, - "tests/test_surfaces.py::TestFourierRZToroidalSurface::test_misc": 2.472832595987711, - "tests/test_surfaces.py::TestFourierRZToroidalSurface::test_normal": 2.2786450309795327, - "tests/test_surfaces.py::TestZernikeRZToroidalSection::test_area": 3.120746141008567, - "tests/test_surfaces.py::TestZernikeRZToroidalSection::test_misc": 2.39428014101577, - "tests/test_surfaces.py::TestZernikeRZToroidalSection::test_normal": 2.329284916020697, - "tests/test_transform.py::TestTransform::test_direct2_warnings": 2.0221401920134667, - "tests/test_transform.py::TestTransform::test_direct_fft_equal": 5.019419569987804, - "tests/test_transform.py::TestTransform::test_eq": 2.1870096440252382, - "tests/test_transform.py::TestTransform::test_fft": 2.1864192799839657, - "tests/test_transform.py::TestTransform::test_fft_warnings": 2.9701093250187114, - "tests/test_transform.py::TestTransform::test_fit_direct1": 3.029033200989943, - "tests/test_transform.py::TestTransform::test_fit_direct2": 2.354376229981426, - "tests/test_transform.py::TestTransform::test_fit_fft": 2.6070278249972034, - "tests/test_transform.py::TestTransform::test_profile": 2.0387875909509603, - "tests/test_transform.py::TestTransform::test_project": 3.6202916509937495, - "tests/test_transform.py::TestTransform::test_set_basis": 2.1284724400320556, - "tests/test_transform.py::TestTransform::test_set_grid": 2.0575164709589444, - "tests/test_transform.py::TestTransform::test_surface": 2.398086258996045, - "tests/test_transform.py::TestTransform::test_transform_order_error": 1.9692786659870762, - "tests/test_transform.py::TestTransform::test_volume": 2.107707974006189, - "tests/test_vmec.py::TestVMECIO::test_fourier_to_zernike": 2.0543619530217256, - "tests/test_vmec.py::TestVMECIO::test_ptolemy_identity_fwd": 1.9896226179844234, - "tests/test_vmec.py::TestVMECIO::test_ptolemy_identity_rev": 2.0652171679830644, - "tests/test_vmec.py::TestVMECIO::test_zernike_to_fourier": 2.012931966019096, - "tests/test_vmec.py::test_load_then_save": 10.863189176016022, - "tests/test_vmec.py::test_plot_vmec_comparison": 4.172377132024849, - "tests/test_vmec.py::test_vmec_boundary_subspace": 2.251119649998145, - "tests/test_vmec.py::test_vmec_save": 6.103843269025674, - "tests/test_vmec.py::test_vmec_save_asym": 11.63631521401112 + "tests/test_axis_limits.py::TestAxisLimits::test_compute_axis_limit_api": 2.5391948223114014, + "tests/test_axis_limits.py::TestAxisLimits::test_b_mag_fsa": 7.966105818748474, + "tests/test_axis_limits.py::TestAxisLimits::test_rotational_transform": 11.269968628883362, + "tests/test_backend.py::test_put": 0.19738554954528809, + "tests/test_backend.py::test_sign": 0.19631361961364746, + "tests/test_basis.py::TestBasis::test_polyder": 0.1083458662033081, + "tests/test_basis.py::TestBasis::test_polyval": 0.10746932029724121, + "tests/test_basis.py::TestBasis::test_zernike_coeffs": 0.1800525188446045, + "tests/test_basis.py::TestBasis::test_polyval_exact": 0.10746932029724121, + "tests/test_basis.py::TestBasis::test_powers": 0.1132669448852539, + "tests/test_basis.py::TestBasis::test_zernike_radial": 0.8333420753479004, + "tests/test_basis.py::TestBasis::test_fourier": 0.2550234794616699, + "tests/test_basis.py::TestBasis::test_power_series": 0.11781167984008789, + "tests/test_basis.py::TestBasis::test_double_fourier": 0.2743496894836426, + "tests/test_basis.py::TestBasis::test_change_resolution": 0.15073871612548828, + "tests/test_basis.py::TestBasis::test_repr": 0.415041446685791, + "tests/test_basis.py::TestBasis::test_zernike_indexing": 0.11620235443115234, + "tests/test_basis.py::TestBasis::test_derivative_not_in_basis_zeros": 0.3892948627471924, + "tests/test_bootstrap.py::TestBootstrapCompute::test_trapped_fraction_analytic": 2.3723795413970947, + "tests/test_bootstrap.py::TestBootstrapCompute::test_trapped_fraction_Kim": 7.052055478096008, + "tests/test_bootstrap.py::TestBootstrapCompute::test_Redl_second_pass": 0.661003828048706, + "tests/test_bootstrap.py::TestBootstrapCompute::test_Redl_figures_2_3": 1.5928778648376465, + "tests/test_bootstrap.py::TestBootstrapCompute::test_Redl_figures_4_5": 4.930520176887512, + "tests/test_bootstrap.py::TestBootstrapCompute::test_Redl_sfincs_tokamak_benchmark": 4.571721792221069, + "tests/test_bootstrap.py::TestBootstrapCompute::test_Redl_sfincs_QA": 5.316905498504639, + "tests/test_bootstrap.py::TestBootstrapCompute::test_Redl_sfincs_QH": 5.3142324686050415, + "tests/test_bootstrap.py::TestBootstrapObjectives::test_BootstrapRedlConsistency_normalization": 27.70256757736206, + "tests/test_bootstrap.py::TestBootstrapObjectives::test_BootstrapRedlConsistency_resolution": 62.08576798439026, + "tests/test_bootstrap.py::TestBootstrapObjectives::test_bootstrap_consistency_iota": 185.59204578399658, + "tests/test_bootstrap.py::TestBootstrapObjectives::test_bootstrap_consistency_current": 226.8012100458145, + "tests/test_bootstrap.py::test_bootstrap_objective_build": 12.902662992477417, + "tests/test_coils.py::TestCoil::test_biot_savart": 1.2084215879440308, + "tests/test_coils.py::TestCoil::test_properties": 1.0765130519866943, + "tests/test_coils.py::TestCoilSet::test_linspaced_linear": 1.440415859222412, + "tests/test_coils.py::TestCoilSet::test_linspaced_angular": 3.4112319946289062, + "tests/test_coils.py::TestCoilSet::test_from_symmetry": 5.091866493225098, + "tests/test_coils.py::TestCoilSet::test_properties": 1.0765130519866943, + "tests/test_coils.py::TestCoilSet::test_dunder_methods": 0.6133010387420654, + "tests/test_coils.py::test_repr": 0.415041446685791, + "tests/test_compute_funs.py::test_total_volume": 3.275167226791382, + "tests/test_compute_funs.py::test_enclosed_volumes": 2.591869831085205, + "tests/test_compute_funs.py::test_surface_areas": 2.0627825260162354, + "tests/test_compute_funs.py::test_surface_areas_2": 2.0627825260162354, + "tests/test_compute_funs.py::test_magnetic_field_derivatives": 9.587448120117188, + "tests/test_compute_funs.py::test_metric_derivatives": 2.72632372379303, + "tests/test_compute_funs.py::test_magnetic_pressure_gradient": 4.304385185241699, + "tests/test_compute_funs.py::test_currents": 6.562957286834717, + "tests/test_compute_funs.py::test_BdotgradB": 3.5210081338882446, + "tests/test_compute_funs.py::test_boozer_transform": 4.997244834899902, + "tests/test_compute_funs.py::test_compute_grad_p_volume_avg": 1.6617939472198486, + "tests/test_compute_funs.py::test_compare_quantities_to_vmec": 11.2726891040802, + "tests/test_compute_funs.py::test_compute_everything": 84.62090516090393, + "tests/test_compute_funs.py::test_compute_averages": 8.572983503341675, + "tests/test_compute_utils.py::TestComputeUtils::test_compress_expand_inverse_op": 0.19367456436157227, + "tests/test_compute_utils.py::TestComputeUtils::test_surface_integrals": 1.827927827835083, + "tests/test_compute_utils.py::TestComputeUtils::test_surface_area_unweighted": 1.4398181438446045, + "tests/test_compute_utils.py::TestComputeUtils::test_surface_area_weighted": 6.354798316955566, + "tests/test_compute_utils.py::TestComputeUtils::test_surface_averages_identity_op": 5.77168881893158, + "tests/test_compute_utils.py::TestComputeUtils::test_surface_averages_homomorphism": 7.06252646446228, + "tests/test_compute_utils.py::TestComputeUtils::test_surface_averages_shortcut": 5.325978398323059, + "tests/test_compute_utils.py::TestComputeUtils::test_min_max": 0.8481179475784302, + "tests/test_configuration.py::TestConstructor::test_defaults": 0.9968388080596924, + "tests/test_configuration.py::TestConstructor::test_supplied_objects": 3.4648375511169434, + "tests/test_configuration.py::TestConstructor::test_dict": 1.9488677978515625, + "tests/test_configuration.py::TestConstructor::test_asserts": 0.7387478351593018, + "tests/test_configuration.py::TestConstructor::test_supplied_coeffs": 0.8749246597290039, + "tests/test_configuration.py::TestInitialGuess::test_default_set": 2.1531221866607666, + "tests/test_configuration.py::TestInitialGuess::test_errors": 1.3456809520721436, + "tests/test_configuration.py::TestInitialGuess::test_guess_from_other": 1.3564915657043457, + "tests/test_configuration.py::TestInitialGuess::test_guess_from_surface": 1.705718994140625, + "tests/test_configuration.py::TestInitialGuess::test_guess_from_surface2": 1.705718994140625, + "tests/test_configuration.py::TestInitialGuess::test_guess_from_points": 3.1299737691879272, + "tests/test_configuration.py::TestInitialGuess::test_NFP_error": 0.9642298221588135, + "tests/test_configuration.py::TestInitialGuess::test_guess_from_file": 2.598916530609131, + "tests/test_configuration.py::TestGetSurfaces::test_get_rho_surface": 1.1722404956817627, + "tests/test_configuration.py::TestGetSurfaces::test_get_zeta_surface": 1.0646436214447021, + "tests/test_configuration.py::TestGetSurfaces::test_get_theta_surface": 0.8025240898132324, + "tests/test_configuration.py::TestGetSurfaces::test_asserts": 0.7387478351593018, + "tests/test_configuration.py::test_magnetic_axis": 3.3196523189544678, + "tests/test_configuration.py::test_is_nested": 2.3451576232910156, + "tests/test_configuration.py::test_is_nested_theta": 1.8744008541107178, + "tests/test_configuration.py::test_get_profile": 4.964652061462402, + "tests/test_configuration.py::test_kinetic_errors": 1.9296765327453613, + "tests/test_constrain_current.py::TestConstrainCurrent::test_compute_rotational_transform": 22.117167949676514, + "tests/test_curves.py::TestRZCurve::test_length": 1.2188292741775513, + "tests/test_curves.py::TestRZCurve::test_curvature": 1.0212721824645996, + "tests/test_curves.py::TestRZCurve::test_torsion": 0.9370831251144409, + "tests/test_curves.py::TestRZCurve::test_frenet": 1.167402982711792, + "tests/test_curves.py::TestRZCurve::test_coords": 0.873279333114624, + "tests/test_curves.py::TestRZCurve::test_misc": 1.248878836631775, + "tests/test_curves.py::TestRZCurve::test_asserts": 0.7387478351593018, + "tests/test_curves.py::TestXYZCurve::test_length": 1.2188292741775513, + "tests/test_curves.py::TestXYZCurve::test_curvature": 1.0212721824645996, + "tests/test_curves.py::TestXYZCurve::test_torsion": 0.9370831251144409, + "tests/test_curves.py::TestXYZCurve::test_frenet": 1.167402982711792, + "tests/test_curves.py::TestXYZCurve::test_coords": 0.873279333114624, + "tests/test_curves.py::TestXYZCurve::test_misc": 1.248878836631775, + "tests/test_curves.py::TestXYZCurve::test_asserts": 0.7387478351593018, + "tests/test_curves.py::TestPlanarCurve::test_length": 1.2188292741775513, + "tests/test_curves.py::TestPlanarCurve::test_curvature": 1.0212721824645996, + "tests/test_curves.py::TestPlanarCurve::test_torsion": 0.9370831251144409, + "tests/test_curves.py::TestPlanarCurve::test_frenet": 1.167402982711792, + "tests/test_curves.py::TestPlanarCurve::test_coords": 0.873279333114624, + "tests/test_curves.py::TestPlanarCurve::test_misc": 1.248878836631775, + "tests/test_curves.py::TestPlanarCurve::test_asserts": 0.7387478351593018, + "tests/test_derivatives.py::TestDerivative::test_finite_diff_vec": 0.7251818180084229, + "tests/test_derivatives.py::TestDerivative::test_finite_diff_scalar": 0.7568480968475342, + "tests/test_derivatives.py::TestDerivative::test_auto_diff": 0.8526492118835449, + "tests/test_derivatives.py::TestDerivative::test_compare_AD_FD": 0.7734799385070801, + "tests/test_derivatives.py::TestDerivative::test_fd_hessian": 0.6189804077148438, + "tests/test_derivatives.py::TestDerivative::test_block_jacobian": 0.8143317699432373, + "tests/test_derivatives.py::TestJVP::test_autodiff_jvp": 0.7789533138275146, + "tests/test_derivatives.py::TestJVP::test_finitediff_jvp": 0.7164802551269531, + "tests/test_derivatives.py::TestJVP::test_autodiff_jvp2": 0.7789533138275146, + "tests/test_derivatives.py::TestJVP::test_finitediff_jvp2": 0.7164802551269531, + "tests/test_derivatives.py::TestJVP::test_autodiff_jvp3": 0.7789533138275146, + "tests/test_derivatives.py::TestJVP::test_finitediff_jvp3": 0.6344552040100098, + "tests/test_equilibrium.py::test_compute_geometry": 1.9436662197113037, + "tests/test_equilibrium.py::test_compute_theta_coords": 5.6960673332214355, + "tests/test_equilibrium.py::test_compute_flux_coords": 20.213435173034668, + "tests/test_equilibrium.py::test_map_coordinates": 14.131819248199463, + "tests/test_equilibrium.py::test_to_sfl": 26.418137550354004, + "tests/test_equilibrium.py::test_continuation_resolution": 156.08914399147034, + "tests/test_equilibrium.py::test_grid_resolution_warning": 290.5435914993286, + "tests/test_equilibrium.py::test_eq_change_grid_resolution": 1.3629605770111084, + "tests/test_equilibrium.py::test_resolution": 4.879020810127258, + "tests/test_equilibrium.py::test_equilibrium_from_near_axis": 19.78379797935486, + "tests/test_equilibrium.py::test_poincare_solve_not_implemented": 1.0482544898986816, + "tests/test_equilibrium.py::test_equilibriafamily_constructor": 2.873791217803955, + "tests/test_equilibrium.py::test_change_NFP": 7.288805723190308, + "tests/test_examples.py::test_SOLOVEV_vacuum": 2.2789478302001953, + "tests/test_examples.py::test_SOLOVEV_results": 6.3239336013793945, + "tests/test_examples.py::test_DSHAPE_results": 9.376911878585815, + "tests/test_examples.py::test_DSHAPE_current_results": 9.261709928512573, + "tests/test_examples.py::test_HELIOTRON_results": 10.087924718856812, + "tests/test_examples.py::test_HELIOTRON_vac_results": 11.681270122528076, + "tests/test_examples.py::test_precise_QH_results": 29.177587032318115, + "tests/test_examples.py::test_HELIOTRON_vac2_results": 41.4894198179245, + "tests/test_examples.py::test_force_balance_grids": 155.66855549812317, + "tests/test_examples.py::test_solve_bounds": 25.855547785758972, + "tests/test_examples.py::test_1d_optimization": 45.99489974975586, + "tests/test_examples.py::test_1d_optimization_old": 45.99489974975586, + "tests/test_examples.py::test_qh_optimization1": 2177.9836943149567, + "tests/test_examples.py::test_qh_optimization2": 1525.166443824768, + "tests/test_examples.py::test_qh_optimization3": 1084.8827364444733, + "tests/test_examples.py::test_ATF_results": 828.3503400087357, + "tests/test_examples.py::test_ESTELL_results": 1949.1876405477524, + "tests/test_examples.py::test_simsopt_QH_comparison": 723.4929859638214, + "tests/test_examples.py::test_NAE_QSC_solve": 149.5543862581253, + "tests/test_examples.py::test_NAE_QIC_solve": 299.23267793655396, + "tests/test_examples.py::TestGetExample::test_missing_example": 0.3255997896194458, + "tests/test_examples.py::TestGetExample::test_example_get_eq": 1.617514967918396, + "tests/test_examples.py::TestGetExample::test_example_get_eqf": 1.617514967918396, + "tests/test_examples.py::TestGetExample::test_example_get_boundary": 4.021717548370361, + "tests/test_examples.py::TestGetExample::test_example_get_pressure": 3.003194570541382, + "tests/test_examples.py::TestGetExample::test_example_get_iota": 3.9420523643493652, + "tests/test_examples.py::TestGetExample::test_example_get_current": 3.4969444274902344, + "tests/test_geometry.py::test_rotation_matrix": 0.7729271650314331, + "tests/test_geometry.py::test_xyz2rpz": 0.7970137596130371, + "tests/test_geometry.py::test_rpz2xyz": 0.6938657760620117, + "tests/test_grid.py::TestGrid::test_custom_grid": 0.674670934677124, + "tests/test_grid.py::TestGrid::test_linear_grid": 0.6298344135284424, + "tests/test_grid.py::TestGrid::test_linear_grid_spacing_consistency": 0.6298344135284424, + "tests/test_grid.py::TestGrid::test_linear_grid_symmetric_nodes_consistency": 0.6298344135284424, + "tests/test_grid.py::TestGrid::test_linear_grid_spacing_two_nodes": 0.6298344135284424, + "tests/test_grid.py::TestGrid::test_spacing_when_duplicate_node_is_removed": 0.3456343412399292, + "tests/test_grid.py::TestGrid::test_node_spacing_non_sym": 0.5532927513122559, + "tests/test_grid.py::TestGrid::test_symmetry_spacing_basic": 0.346652626991272, + "tests/test_grid.py::TestGrid::test_node_spacing_sym": 0.5870494842529297, + "tests/test_grid.py::TestGrid::test_concentric_grid": 0.6478164196014404, + "tests/test_grid.py::TestGrid::test_quadrature_grid": 0.6671996116638184, + "tests/test_grid.py::TestGrid::test_concentric_grid_high_res": 0.6478164196014404, + "tests/test_grid.py::TestGrid::test_quad_grid_volume_integration": 1.406738519668579, + "tests/test_grid.py::TestGrid::test_repr": 0.415041446685791, + "tests/test_grid.py::TestGrid::test_change_resolution": 0.15073871612548828, + "tests/test_grid.py::TestGrid::test_enforce_symmetry_sum": 1.4409854412078857, + "tests/test_grid.py::TestGrid::test_enforce_symmetry": 1.6080760955810547, + "tests/test_grid.py::TestGrid::test_symmetry_surface_average_1": 6.71723997592926, + "tests/test_grid.py::TestGrid::test_symmetry_surface_average_2": 3.8190581798553467, + "tests/test_grid.py::TestGrid::test_symmetry_volume_integral": 0.39383578300476074, + "tests/test_grid.py::test_find_most_rational_surfaces": 0.6310467720031738, + "tests/test_grid.py::test_find_least_rational_surfaces": 2.2816789150238037, + "tests/test_input_output.py::test_vmec_input": 0.7020907402038574, + "tests/test_input_output.py::test_write_desc_input_Nones": 0.3594777584075928, + "tests/test_input_output.py::test_near_axis_input_files": 6.730593204498291, + "tests/test_input_output.py::test_vmec_input_surface_threshold": 4.727794408798218, + "tests/test_input_output.py::TestInputReader::test_no_input_file": 0.6845892667770386, + "tests/test_input_output.py::TestInputReader::test_nonexistant_input_file": 0.6784034967422485, + "tests/test_input_output.py::TestInputReader::test_min_input": 0.6427890062332153, + "tests/test_input_output.py::TestInputReader::test_np_environ": 0.6391646862030029, + "tests/test_input_output.py::TestInputReader::test_quiet_verbose": 0.6901319026947021, + "tests/test_input_output.py::TestInputReader::test_vacuum_objective_with_iota_yields_current": 0.48584890365600586, + "tests/test_input_output.py::test_writer_given_filename": 0.6769628524780273, + "tests/test_input_output.py::test_writer_given_file": 0.6777760982513428, + "tests/test_input_output.py::test_writer_close_on_delete": 0.6699178218841553, + "tests/test_input_output.py::test_writer_write_dict": 0.6447567939758301, + "tests/test_input_output.py::test_writer_write_list": 0.6857888698577881, + "tests/test_input_output.py::test_writer_write_obj": 0.6838473081588745, + "tests/test_input_output.py::test_reader_given_filename": 0.678086519241333, + "tests/test_input_output.py::test_reader_given_file": 0.6793563365936279, + "tests/test_input_output.py::test_reader_read_obj": 0.679969310760498, + "tests/test_input_output.py::test_pickle_io": 1.3660407066345215, + "tests/test_input_output.py::test_ascii_io": 6.870228290557861, + "tests/test_input_output.py::test_copy": 1.1949867010116577, + "tests/test_input_output.py::test_save_none": 1.2435132265090942, + "tests/test_input_output.py::test_load_eq_without_current": 1.809807300567627, + "tests/test_interpolate.py::TestInterp1D::test_interp1d": 2.6422271728515625, + "tests/test_interpolate.py::TestInterp1D::test_interp1d_extrap_periodic": 2.2251296043395996, + "tests/test_interpolate.py::TestInterp1D::test_interp1d_monotonic": 1.8299287557601929, + "tests/test_interpolate.py::TestInterp2D::test_interp2d": 2.0778234004974365, + "tests/test_interpolate.py::TestInterp3D::test_interp3d": 2.5942535400390625, + "tests/test_linear_objectives.py::test_LambdaGauge_sym": 1.0124235153198242, + "tests/test_linear_objectives.py::test_LambdaGauge_asym": 1.276787281036377, + "tests/test_linear_objectives.py::test_bc_on_interior_surfaces": 22.0314724445343, + "tests/test_linear_objectives.py::test_constrain_bdry_with_only_one_mode": 0.8122732639312744, + "tests/test_linear_objectives.py::test_constrain_asserts": 49.25658893585205, + "tests/test_linear_objectives.py::test_fixed_mode_solve": 23.21229350566864, + "tests/test_linear_objectives.py::test_fixed_modes_solve": 17.56595468521118, + "tests/test_linear_objectives.py::test_fixed_axis_and_theta_SFL_solve": 16.71259582042694, + "tests/test_linear_objectives.py::test_factorize_linear_constraints_asserts": 2.9949564933776855, + "tests/test_linear_objectives.py::test_build_init": 3.613085985183716, + "tests/test_linear_objectives.py::test_kinetic_constraints": 1.579378604888916, + "tests/test_linear_objectives.py::test_correct_indexing_passed_modes": 24.015464782714844, + "tests/test_linear_objectives.py::test_correct_indexing_passed_modes_and_passed_target": 23.561565041542053, + "tests/test_linear_objectives.py::test_correct_indexing_passed_modes_axis": 10.262390851974487, + "tests/test_linear_objectives.py::test_correct_indexing_passed_modes_and_passed_target_axis": 15.298805952072144, + "tests/test_linear_objectives.py::test_FixBoundary_with_single_weight": 1.0754834413528442, + "tests/test_linear_objectives.py::test_FixBoundary_passed_target_no_passed_modes_error": 0.5215559005737305, + "tests/test_linear_objectives.py::test_FixAxis_passed_target_no_passed_modes_error": 0.6616849899291992, + "tests/test_linear_objectives.py::test_FixMode_passed_target_no_passed_modes_error": 0.5265893936157227, + "tests/test_linear_objectives.py::test_FixSumModes_passed_target_too_long": 0.36019039154052734, + "tests/test_linear_objectives.py::test_FixMode_False_or_None_modes": 0.35930633544921875, + "tests/test_linear_objectives.py::test_FixSumModes_False_or_None_modes": 0.3607978820800781, + "tests/test_linear_objectives.py::test_FixAxis_util_correct_objectives": 0.3655357360839844, + "tests/test_magnetic_fields.py::TestMagneticFields::test_basic_fields": 0.9740085601806641, + "tests/test_magnetic_fields.py::TestMagneticFields::test_scalar_field": 1.149132251739502, + "tests/test_magnetic_fields.py::TestMagneticFields::test_spline_field": 6.306258201599121, + "tests/test_magnetic_fields.py::TestMagneticFields::test_spline_field_axisym": 2.356407880783081, + "tests/test_magnetic_fields.py::TestMagneticFields::test_field_line_integrate": 2.4446654319763184, + "tests/test_objective_funs.py::TestObjectiveFunction::test_generic": 3.971553087234497, + "tests/test_objective_funs.py::TestObjectiveFunction::test_objective_from_user": 1.045462965965271, + "tests/test_objective_funs.py::TestObjectiveFunction::test_volume": 1.670881986618042, + "tests/test_objective_funs.py::TestObjectiveFunction::test_aspect_ratio": 3.188887119293213, + "tests/test_objective_funs.py::TestObjectiveFunction::test_elongation": 4.361514568328857, + "tests/test_objective_funs.py::TestObjectiveFunction::test_energy": 3.293406128883362, + "tests/test_objective_funs.py::TestObjectiveFunction::test_target_iota": 1.8545842170715332, + "tests/test_objective_funs.py::TestObjectiveFunction::test_toroidal_current": 3.9505090713500977, + "tests/test_objective_funs.py::TestObjectiveFunction::test_qa_boozer": 9.19603419303894, + "tests/test_objective_funs.py::TestObjectiveFunction::test_qh_boozer": 10.426319360733032, + "tests/test_objective_funs.py::TestObjectiveFunction::test_qs_twoterm": 9.440323829650879, + "tests/test_objective_funs.py::TestObjectiveFunction::test_qs_tripleproduct": 3.9321413040161133, + "tests/test_objective_funs.py::TestObjectiveFunction::test_isodynamicity": 1.9491896629333496, + "tests/test_objective_funs.py::TestObjectiveFunction::test_qs_boozer_grids": 2.60112202167511, + "tests/test_objective_funs.py::TestObjectiveFunction::test_mercier_stability": 28.899383544921875, + "tests/test_objective_funs.py::TestObjectiveFunction::test_magnetic_well": 8.674297094345093, + "tests/test_objective_funs.py::test_derivative_modes": 65.33874678611755, + "tests/test_objective_funs.py::test_rejit": 1.0335636138916016, + "tests/test_objective_funs.py::test_generic_compute": 1.504560947418213, + "tests/test_objective_funs.py::test_getter_setter": 0.6585021018981934, + "tests/test_objective_funs.py::test_bounds_format": 0.5785126686096191, + "tests/test_objective_funs.py::test_target_profiles": 4.193389654159546, + "tests/test_objective_funs.py::test_plasma_vessel_distance": 8.535668134689331, + "tests/test_objective_funs.py::test_mean_curvature": 11.42268705368042, + "tests/test_objective_funs.py::test_principal_curvature": 6.662958383560181, + "tests/test_objective_funs.py::test_field_scale_length": 41.40760099887848, + "tests/test_objective_funs.py::test_profile_objective_print": 4.369129657745361, + "tests/test_objective_funs.py::test_plasma_vessel_distance_print": 8.535668134689331, + "tests/test_objective_funs.py::test_rebuild": 63.19959998130798, + "tests/test_objective_funs.py::test_jvp_scaled": 4.356067419052124, + "tests/test_objective_funs.py::test_objective_target_bounds": 1.8331291675567627, + "tests/test_objective_funs.py::test_jax_softmax_and_softmin": 1.0549657344818115, + "tests/test_optimizer.py::TestFmin::test_convex_full_hess_dogleg": 2.526404619216919, + "tests/test_optimizer.py::TestFmin::test_convex_full_hess_subspace": 2.8654987812042236, + "tests/test_optimizer.py::TestFmin::test_convex_full_hess_exact": 2.479990243911743, + "tests/test_optimizer.py::TestFmin::test_rosenbrock_bfgs_dogleg": 1.7849326133728027, + "tests/test_optimizer.py::TestFmin::test_rosenbrock_bfgs_subspace": 2.16491436958313, + "tests/test_optimizer.py::TestFmin::test_rosenbrock_bfgs_exact": 0.9446674585342407, + "tests/test_optimizer.py::TestSGD::test_sgd_convex": 1.8555312156677246, + "tests/test_optimizer.py::TestLSQTR::test_lsqtr_exact": 2.2272286415100098, + "tests/test_optimizer.py::test_no_iterations": 1.8963100910186768, + "tests/test_optimizer.py::test_overstepping": 77.34604501724243, + "tests/test_optimizer.py::test_maxiter_1_and_0_solve": 44.85545372962952, + "tests/test_optimizer.py::test_scipy_fail_message": 22.373021602630615, + "tests/test_optimizer.py::test_not_implemented_error": 0.47948431968688965, + "tests/test_optimizer.py::test_wrappers": 15.040279388427734, + "tests/test_optimizer.py::test_all_optimizers": 41.606842041015625, + "tests/test_optimizer.py::test_scipy_constrained_solve": 277.8078351020813, + "tests/test_optimizer.py::test_solve_with_x_scale": 37.2519291639328, + "tests/test_optimizer.py::test_bounded_optimization": 5.217513084411621, + "tests/test_perturbations.py::test_perturbation_orders": 953.4179646968842, + "tests/test_perturbations.py::test_perturb_with_float_without_error": 4.8092429637908936, + "tests/test_perturbations.py::test_optimal_perturb": 65.33948040008545, + "tests/test_plotting.py::test_kwarg_warning": 1.3703835010528564, + "tests/test_plotting.py::test_1d_p": 2.3615925312042236, + "tests/test_plotting.py::test_1d_fsa_consistency": 24.824483036994934, + "tests/test_plotting.py::test_1d_dpdr": 2.201986074447632, + "tests/test_plotting.py::test_1d_iota": 3.1074817180633545, + "tests/test_plotting.py::test_1d_iota_radial": 5.149364233016968, + "tests/test_plotting.py::test_1d_logpsi": 1.8761942386627197, + "tests/test_plotting.py::test_2d_logF": 6.402953386306763, + "tests/test_plotting.py::test_2d_g_tz": 3.1659910678863525, + "tests/test_plotting.py::test_2d_g_rz": 4.875414133071899, + "tests/test_plotting.py::test_2d_lambda": 2.5986695289611816, + "tests/test_plotting.py::test_3d_B": 4.344858169555664, + "tests/test_plotting.py::test_3d_J": 5.620574951171875, + "tests/test_plotting.py::test_3d_tz": 5.750120162963867, + "tests/test_plotting.py::test_3d_rz": 4.065810203552246, + "tests/test_plotting.py::test_3d_rt": 4.8052815198898315, + "tests/test_plotting.py::test_fsa_I": 5.484919428825378, + "tests/test_plotting.py::test_fsa_G": 4.416098594665527, + "tests/test_plotting.py::test_fsa_F_normalized": 5.8995115756988525, + "tests/test_plotting.py::test_section_J": 6.3657331466674805, + "tests/test_plotting.py::test_section_Z": 4.5892980098724365, + "tests/test_plotting.py::test_section_R": 2.22560715675354, + "tests/test_plotting.py::test_section_F": 5.307340860366821, + "tests/test_plotting.py::test_section_F_normalized_vac": 4.596460819244385, + "tests/test_plotting.py::test_section_logF": 4.5653135776519775, + "tests/test_plotting.py::test_plot_surfaces": 10.047749519348145, + "tests/test_plotting.py::test_plot_surfaces_no_theta": 2.538058280944824, + "tests/test_plotting.py::test_plot_boundary": 5.097471356391907, + "tests/test_plotting.py::test_plot_boundaries": 6.346785306930542, + "tests/test_plotting.py::test_plot_comparison": 12.538764119148254, + "tests/test_plotting.py::test_plot_comparison_no_theta": 3.9259798526763916, + "tests/test_plotting.py::test_plot_con_basis": 2.3857457637786865, + "tests/test_plotting.py::test_plot_cov_basis": 2.3011581897735596, + "tests/test_plotting.py::test_plot_magnetic_tension": 4.121660947799683, + "tests/test_plotting.py::test_plot_magnetic_pressure": 3.4924914836883545, + "tests/test_plotting.py::test_plot_gradpsi": 2.1703832149505615, + "tests/test_plotting.py::test_plot_normF_2d": 4.971156120300293, + "tests/test_plotting.py::test_plot_normF_section": 3.7530224323272705, + "tests/test_plotting.py::test_plot_coefficients": 2.3922486305236816, + "tests/test_plotting.py::test_plot_logo": 2.0202622413635254, + "tests/test_plotting.py::TestPlotGrid::test_plot_grid_linear": 0.9127442836761475, + "tests/test_plotting.py::TestPlotGrid::test_plot_grid_quad": 0.9276149272918701, + "tests/test_plotting.py::TestPlotGrid::test_plot_grid_jacobi": 0.9906930923461914, + "tests/test_plotting.py::TestPlotGrid::test_plot_grid_cheb1": 0.9803032875061035, + "tests/test_plotting.py::TestPlotGrid::test_plot_grid_cheb2": 0.9678679704666138, + "tests/test_plotting.py::TestPlotGrid::test_plot_grid_ocs": 0.8971970081329346, + "tests/test_plotting.py::TestPlotBasis::test_plot_basis_powerseries": 0.9137201309204102, + "tests/test_plotting.py::TestPlotBasis::test_plot_basis_fourierseries": 1.0473346710205078, + "tests/test_plotting.py::TestPlotBasis::test_plot_basis_doublefourierseries": 7.4358683824539185, + "tests/test_plotting.py::TestPlotBasis::test_plot_basis_fourierzernike": 24.747427105903625, + "tests/test_plotting.py::TestPlotFieldLines::test_find_idx": 0.847517728805542, + "tests/test_plotting.py::TestPlotFieldLines::test_plot_field_line": 8.131266117095947, + "tests/test_plotting.py::TestPlotFieldLines::test_plot_field_lines": 12.099355578422546, + "tests/test_plotting.py::test_plot_boozer_modes": 12.544284343719482, + "tests/test_plotting.py::test_plot_boozer_surface": 6.270490884780884, + "tests/test_plotting.py::test_plot_qs_error": 39.44042158126831, + "tests/test_plotting.py::test_plot_coils": 4.225110769271851, + "tests/test_plotting.py::test_plot_b_mag": 11.594449162483215, + "tests/test_plotting.py::test_plot_surfaces_HELIOTRON": 10.438359498977661, + "tests/test_profiles.py::TestProfiles::test_same_result": 82.2510439157486, + "tests/test_profiles.py::TestProfiles::test_close_values": 7.7879040241241455, + "tests/test_profiles.py::TestProfiles::test_repr": 0.415041446685791, + "tests/test_profiles.py::TestProfiles::test_get_set": 1.786001205444336, + "tests/test_profiles.py::TestProfiles::test_auto_sym": 0.770451545715332, + "tests/test_profiles.py::TestProfiles::test_sum_profiles": 3.679048776626587, + "tests/test_profiles.py::TestProfiles::test_product_profiles": 1.9519731998443604, + "tests/test_profiles.py::TestProfiles::test_product_profiles_derivative": 1.9519731998443604, + "tests/test_profiles.py::TestProfiles::test_scaled_profiles": 0.9374949932098389, + "tests/test_profiles.py::TestProfiles::test_profile_errors": 1.9069312810897827, + "tests/test_profiles.py::TestProfiles::test_profile_conversion": 2.3668887615203857, + "tests/test_profiles.py::TestProfiles::test_default_profiles": 1.7826738357543945, + "tests/test_profiles.py::TestProfiles::test_solve_with_combined": 28.72600507736206, + "tests/test_profiles.py::TestProfiles::test_kinetic_pressure": 2.191779136657715, + "tests/test_stability_funs.py::test_mercier_vacuum": 4.502842307090759, + "tests/test_stability_funs.py::test_compute_d_shear": 13.590898275375366, + "tests/test_stability_funs.py::test_compute_d_current": 15.9405517578125, + "tests/test_stability_funs.py::test_compute_d_well": 23.603630542755127, + "tests/test_stability_funs.py::test_compute_d_geodesic": 18.99722194671631, + "tests/test_stability_funs.py::test_compute_d_mercier": 18.758171796798706, + "tests/test_stability_funs.py::test_compute_magnetic_well": 13.469860553741455, + "tests/test_stability_funs.py::test_mercier_print": 5.0646820068359375, + "tests/test_stability_funs.py::test_magwell_print": 6.498149871826172, + "tests/test_surfaces.py::TestFourierRZToroidalSurface::test_area": 3.246496081352234, + "tests/test_surfaces.py::TestFourierRZToroidalSurface::test_normal": 1.4772305488586426, + "tests/test_surfaces.py::TestFourierRZToroidalSurface::test_misc": 1.248878836631775, + "tests/test_surfaces.py::TestFourierRZToroidalSurface::test_from_input_file": 3.929783344268799, + "tests/test_surfaces.py::TestFourierRZToroidalSurface::test_from_near_axis": 1.233553409576416, + "tests/test_surfaces.py::TestFourierRZToroidalSurface::test_curvature": 1.0212721824645996, + "tests/test_surfaces.py::TestZernikeRZToroidalSection::test_area": 3.246496081352234, + "tests/test_surfaces.py::TestZernikeRZToroidalSection::test_normal": 1.4772305488586426, + "tests/test_surfaces.py::TestZernikeRZToroidalSection::test_misc": 1.248878836631775, + "tests/test_surfaces.py::TestZernikeRZToroidalSection::test_curvature": 1.0212721824645996, + "tests/test_surfaces.py::test_surface_orientation": 2.6663854122161865, + "tests/test_transform.py::TestTransform::test_eq": 1.1583225727081299, + "tests/test_transform.py::TestTransform::test_transform_order_error": 0.8315334320068359, + "tests/test_transform.py::TestTransform::test_profile": 0.9312019348144531, + "tests/test_transform.py::TestTransform::test_surface": 1.6691875457763672, + "tests/test_transform.py::TestTransform::test_volume": 1.670881986618042, + "tests/test_transform.py::TestTransform::test_set_grid": 1.1346402168273926, + "tests/test_transform.py::TestTransform::test_set_basis": 1.1718149185180664, + "tests/test_transform.py::TestTransform::test_fft": 1.367253065109253, + "tests/test_transform.py::TestTransform::test_direct_fft_equal": 5.504265308380127, + "tests/test_transform.py::TestTransform::test_project": 3.4143770933151245, + "tests/test_transform.py::TestTransform::test_fft_warnings": 1.367253065109253, + "tests/test_transform.py::TestTransform::test_direct2_warnings": 1.4736188650131226, + "tests/test_transform.py::TestTransform::test_fit_direct1": 2.491840362548828, + "tests/test_transform.py::TestTransform::test_fit_direct2": 1.5647196769714355, + "tests/test_transform.py::TestTransform::test_fit_fft": 1.7684881687164307, + "tests/test_transform.py::TestTransform::test_empty_grid": 1.4022634029388428, + "tests/test_transform.py::TestTransform::test_Z_projection": 3.716538190841675, + "tests/test_utils.py::test_isalmostequal": 0.6772017478942871, + "tests/test_utils.py::test_islinspaced": 0.6764607429504395, + "tests/test_vmec.py::TestVMECIO::test_ptolemy_identity_fwd": 0.8442978858947754, + "tests/test_vmec.py::TestVMECIO::test_ptolemy_identity_fwd_sin_series": 0.7731931209564209, + "tests/test_vmec.py::TestVMECIO::test_ptolemy_identity_rev": 0.8971633911132812, + "tests/test_vmec.py::TestVMECIO::test_ptolemy_identity_rev_sin_sym": 0.7842483520507812, + "tests/test_vmec.py::TestVMECIO::test_ptolemy_identities_inverse": 0.7787743806838989, + "tests/test_vmec.py::TestVMECIO::test_ptolemy_linear_transform": 1.0929808616638184, + "tests/test_vmec.py::TestVMECIO::test_fourier_to_zernike": 1.564780831336975, + "tests/test_vmec.py::TestVMECIO::test_zernike_to_fourier": 1.6053714752197266, + "tests/test_vmec.py::test_load_then_save": 45.55219221115112, + "tests/test_vmec.py::test_vmec_save_asym": 30.782756328582764, + "tests/test_vmec.py::test_vmec_save_1": 1.1307034492492676, + "tests/test_vmec.py::test_vmec_save_2": 1.2249751091003418, + "tests/test_vmec.py::test_plot_vmec_comparison": 7.043433904647827, + "tests/test_vmec.py::test_vmec_boundary_subspace": 1.366995096206665 }