struphy 2.6.0__tar.gz → 3.0.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {struphy-2.6.0/src/struphy.egg-info → struphy-3.0.1}/PKG-INFO +5 -3
- {struphy-2.6.0 → struphy-3.0.1}/pyproject.toml +5 -14
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/bsplines/bsplines.py +1 -1
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/bsplines/tests/test_bsplines_kernels.py +2 -2
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/bsplines/tests/test_eval_spline_mpi.py +1 -1
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/conftest.py +8 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/console/compile.py +0 -1
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/console/params.py +1 -1
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/console/profile.py +1 -1
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/console/test.py +45 -24
- struphy-3.0.1/src/struphy/console/tests/test_console.py +158 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/diagnostics/diagn_tools.py +3 -3
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/examples/_draw_parallel.py +1 -1
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/feec/basis_projection_ops.py +17 -17
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/feec/linear_operators.py +9 -9
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/feec/mass.py +18 -19
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/feec/preconditioner.py +14 -14
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/feec/projectors.py +39 -39
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/feec/psydac_derham.py +41 -33
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/feec/tests/test_basis_ops.py +4 -289
- struphy-3.0.1/src/struphy/feec/tests/test_derham.py +73 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/feec/tests/test_eval_field.py +2 -2
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/feec/tests/test_field_init.py +4 -4
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/feec/tests/test_l2_projectors.py +1 -1
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/feec/tests/test_local_projectors.py +2 -2
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/feec/tests/test_lowdim_nel_is_1.py +3 -3
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/feec/tests/test_mass_matrices.py +6 -150
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/feec/tests/test_toarray_struphy.py +1 -1
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/feec/tests/test_tosparse_struphy.py +2 -2
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/feec/tests/xx_test_preconds.py +3 -3
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/feec/utilities.py +11 -15
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/feec/utilities_local_projectors.py +3 -3
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/feec/variational_utilities.py +5 -5
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/fields_background/coil_fields/base.py +1 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/fields_background/equils.py +39 -10
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/fields_background/generic.py +4 -2
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/fields_background/projected_equils.py +2 -2
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/geometry/utilities.py +2 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/initial/eigenfunctions.py +1 -1
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/initial/perturbations.py +25 -20
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/initial/tests/test_init_perturbations.py +1 -1
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/initial/utilities.py +7 -8
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/io/options.py +1 -1
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/io/output_handling.py +44 -43
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/io/setup.py +1 -1
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/kinetic_background/tests/test_maxwellians.py +4 -4
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/linear_algebra/saddle_point.py +8 -8
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/linear_algebra/schur_solver.py +17 -17
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/linear_algebra/tests/test_saddle_point_propagator.py +2 -2
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/linear_algebra/tests/test_saddlepoint_massmatrices.py +3 -3
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/linear_algebra/tests/test_stencil_dot_kernels.py +6 -6
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/linear_algebra/tests/test_stencil_transpose_kernels.py +6 -6
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/main.py +34 -37
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/models/base.py +114 -124
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/models/fluid.py +128 -3
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/models/hybrid.py +1 -1
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/models/kinetic.py +1 -1
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/models/species.py +1 -1
- struphy-3.0.1/src/struphy/models/tests/default_params/test_models.py +67 -0
- struphy-2.6.0/src/struphy/models/tests/test_models.py → struphy-3.0.1/src/struphy/models/tests/utils_testing.py +31 -69
- {struphy-2.6.0/src/struphy/models/tests → struphy-3.0.1/src/struphy/models/tests/verification}/test_verif_EulerSPH.py +5 -3
- {struphy-2.6.0/src/struphy/models/tests → struphy-3.0.1/src/struphy/models/tests/verification}/test_verif_LinearMHD.py +5 -4
- {struphy-2.6.0/src/struphy/models/tests → struphy-3.0.1/src/struphy/models/tests/verification}/test_verif_Maxwell.py +8 -5
- {struphy-2.6.0/src/struphy/models/tests → struphy-3.0.1/src/struphy/models/tests/verification}/test_verif_Poisson.py +5 -3
- {struphy-2.6.0/src/struphy/models/tests → struphy-3.0.1/src/struphy/models/tests/verification}/test_verif_VlasovAmpereOneSpecies.py +5 -3
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/models/toy.py +1 -1
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/models/variables.py +3 -3
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/ode/solvers.py +2 -2
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/ode/tests/test_ode_feec.py +3 -3
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/pic/accumulation/filter.py +1 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/pic/accumulation/particles_to_grid.py +3 -3
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/pic/base.py +153 -29
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/pic/pushing/eval_kernels_gc.py +3 -1
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/pic/pushing/pusher.py +1 -1
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/pic/tests/test_accum_vec_H1.py +6 -3
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/pic/tests/test_binning.py +8 -8
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/pic/tests/test_draw_parallel.py +1 -1
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/pic/tests/test_mat_vec_filler.py +3 -3
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/pic/tests/test_pushers.py +29 -243
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/pic/tests/test_sorting.py +1 -1
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/pic/tests/test_sph.py +436 -13
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/pic/tests/test_tesselation.py +1 -1
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/pic/utilities.py +2 -2
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/polar/basic.py +4 -4
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/polar/extraction_operators.py +2 -8
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/polar/linear_operators.py +3 -3
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/polar/tests/test_polar.py +2 -54
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/post_processing/cprofile_analyser.py +5 -5
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/post_processing/likwid/roofline_plotter.py +2 -2
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/post_processing/orbits/orbits_tools.py +5 -3
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/post_processing/post_processing_tools.py +202 -255
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/post_processing/profile_struphy.py +1 -1
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/profiling/profiling.py +1 -1
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/propagators/base.py +2 -2
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/propagators/propagators_coupling.py +5 -5
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/propagators/propagators_fields.py +28 -25
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/propagators/propagators_markers.py +53 -157
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/propagators/tests/test_gyrokinetic_poisson.py +1 -1
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/propagators/tests/test_poisson.py +1 -1
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/utils/clone_config.py +2 -2
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/utils/test_clone_config.py +2 -2
- {struphy-2.6.0 → struphy-3.0.1/src/struphy.egg-info}/PKG-INFO +5 -3
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy.egg-info/SOURCES.txt +9 -118
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy.egg-info/requires.txt +4 -2
- struphy-2.6.0/src/struphy/__init__.py +0 -77
- struphy-2.6.0/src/struphy/console/tests/test_console.py +0 -328
- struphy-2.6.0/src/struphy/diagnostics/continuous_spectra.py +0 -368
- struphy-2.6.0/src/struphy/eigenvalue_solvers/kernels_2d.py +0 -182
- struphy-2.6.0/src/struphy/eigenvalue_solvers/kernels_3d.py +0 -234
- struphy-2.6.0/src/struphy/eigenvalue_solvers/kernels_projectors_global.py +0 -714
- struphy-2.6.0/src/struphy/eigenvalue_solvers/kernels_projectors_global_mhd.py +0 -1436
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/MHD_eigenvalues_cylinder_1D.py +0 -749
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/control_variates/control_variate.py +0 -787
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/control_variates/kernels_control_variate.py +0 -188
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/control_variates/kinetic_extended/fB_massless_control_variate.py +0 -444
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/control_variates/kinetic_extended/fB_massless_kernels_control_variate.py +0 -719
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/control_variates/kinetic_extended/fnB_massless_control_variate.py +0 -672
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/control_variates/kinetic_extended/fnB_massless_cv_kernel_2.py +0 -87
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/control_variates/kinetic_extended/fnB_massless_kernels_control_variate.py +0 -766
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/control_variates/kinetic_extended/massless_control_variate.py +0 -595
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/control_variates/kinetic_extended/massless_cvker.py +0 -257
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/control_variates/kinetic_extended/massless_kernels_control_variate.py +0 -1140
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/emw_operators.py +0 -226
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/inner_products_1d.py +0 -112
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/inner_products_2d.py +0 -338
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/inner_products_3d.py +0 -360
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/l2_error_1d.py +0 -112
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/l2_error_2d.py +0 -590
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/l2_error_3d.py +0 -622
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/mass_matrices_3d_pre.py +0 -393
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/massless_operators/fB_arrays.py +0 -815
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/massless_operators/fB_bb_kernel.py +0 -457
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/massless_operators/fB_bv_kernel.py +0 -788
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/massless_operators/fB_massless_linear_operators.py +0 -2621
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/massless_operators/fB_vv_kernel.py +0 -824
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/mhd_operators_MF.py +0 -3205
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/projectors_local/pro_local/kernels_projectors_local.py +0 -371
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/projectors_local/pro_local/kernels_projectors_local_mhd.py +0 -598
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/projectors_local/pro_local/mhd_operators_3d_local.py +0 -4905
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/projectors_local/pro_local/projectors_local.py +0 -1648
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/projectors_local/shape_pro_local/shape_L2_projector_kernel.py +0 -2315
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/projectors_local/shape_pro_local/shape_function_projectors_L2.py +0 -979
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/projectors_local/shape_pro_local/shape_function_projectors_local.py +0 -1148
- struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/projectors_local/shape_pro_local/shape_local_projector_kernel.py +0 -3327
- struphy-2.6.0/src/struphy/eigenvalue_solvers/mass_matrices_1d.py +0 -256
- struphy-2.6.0/src/struphy/eigenvalue_solvers/mass_matrices_2d.py +0 -534
- struphy-2.6.0/src/struphy/eigenvalue_solvers/mass_matrices_3d.py +0 -581
- struphy-2.6.0/src/struphy/eigenvalue_solvers/mhd_axisymmetric_main.py +0 -267
- struphy-2.6.0/src/struphy/eigenvalue_solvers/mhd_axisymmetric_pproc.py +0 -73
- struphy-2.6.0/src/struphy/eigenvalue_solvers/mhd_operators.py +0 -1184
- struphy-2.6.0/src/struphy/eigenvalue_solvers/mhd_operators_core.py +0 -2009
- struphy-2.6.0/src/struphy/eigenvalue_solvers/projectors_global.py +0 -2215
- struphy-2.6.0/src/struphy/eigenvalue_solvers/spline_space.py +0 -3284
- struphy-2.6.0/src/struphy/feec/tests/test_derham.py +0 -262
- struphy-2.6.0/src/struphy/io/batch/batch_cobra.sh +0 -33
- struphy-2.6.0/src/struphy/io/batch/p_016.sh +0 -42
- struphy-2.6.0/src/struphy/io/batch/p_032.sh +0 -41
- struphy-2.6.0/src/struphy/io/batch/p_064.sh +0 -41
- struphy-2.6.0/src/struphy/io/batch/p_128.sh +0 -41
- struphy-2.6.0/src/struphy/io/batch/p_256.sh +0 -41
- struphy-2.6.0/src/struphy/io/batch/p_512.sh +0 -41
- struphy-2.6.0/src/struphy/io/inp/longer_examples/params_TAE_tokamak.yml +0 -89
- struphy-2.6.0/src/struphy/io/inp/longer_examples/params_hybridmhdvlasovcc.yml +0 -131
- struphy-2.6.0/src/struphy/io/inp/longer_examples/params_hybridmhdvlasovpc.yml +0 -125
- struphy-2.6.0/src/struphy/io/inp/longer_examples/params_linearextendedmhd.yml +0 -89
- struphy-2.6.0/src/struphy/io/inp/longer_examples/params_linvlasovmaxwell_landau.yml +0 -144
- struphy-2.6.0/src/struphy/io/inp/longer_examples/params_linvlasovmaxwell_streaming_weibel.yml +0 -124
- struphy-2.6.0/src/struphy/io/inp/longer_examples/params_linvlasovmaxwell_weibel.yml +0 -133
- struphy-2.6.0/src/struphy/io/inp/parameters.yml +0 -118
- struphy-2.6.0/src/struphy/io/inp/params_Maxwell.py +0 -63
- struphy-2.6.0/src/struphy/io/inp/params_Maxwell_lw.py +0 -66
- struphy-2.6.0/src/struphy/io/inp/tutorials/params_02.yml +0 -132
- struphy-2.6.0/src/struphy/io/inp/tutorials/params_03.yml +0 -86
- struphy-2.6.0/src/struphy/io/inp/tutorials/params_04a.yml +0 -47
- struphy-2.6.0/src/struphy/io/inp/tutorials/params_04b.yml +0 -71
- struphy-2.6.0/src/struphy/io/inp/tutorials/params_04c.yml +0 -131
- struphy-2.6.0/src/struphy/io/inp/tutorials/params_05a.yml +0 -74
- struphy-2.6.0/src/struphy/io/inp/tutorials/params_05b.yml +0 -74
- struphy-2.6.0/src/struphy/io/inp/tutorials/params_05c.yml +0 -77
- struphy-2.6.0/src/struphy/io/inp/tutorials/params_05d.yml +0 -77
- struphy-2.6.0/src/struphy/io/inp/tutorials/params_05e.yml +0 -77
- struphy-2.6.0/src/struphy/io/inp/tutorials/params_05f.yml +0 -77
- struphy-2.6.0/src/struphy/io/inp/tutorials/params_12a.yml +0 -74
- struphy-2.6.0/src/struphy/io/inp/tutorials/params_12b.yml +0 -76
- struphy-2.6.0/src/struphy/io/inp/verification/IsothermalEulerSPH_soundwave.yml +0 -46
- struphy-2.6.0/src/struphy/io/inp/verification/LinearVlasovAmpereOneSpecies_weakLandau.yml +0 -68
- struphy-2.6.0/src/struphy/io/inp/verification/Maxwell_coaxial.py +0 -60
- struphy-2.6.0/src/struphy/io/inp/verification/Maxwell_coaxial.yml +0 -73
- struphy-2.6.0/src/struphy/io/inp/verification/VlasovAmpereOneSpecies_weakLandau.yml +0 -67
- struphy-2.6.0/src/struphy/models/tests/test_xxpproc.py +0 -69
- struphy-2.6.0/src/struphy/models/tests/util.py +0 -426
- struphy-2.6.0/src/struphy/models/tests/verification.py +0 -373
- struphy-2.6.0/src/struphy/pic/tests/test_accumulation.py +0 -691
- struphy-2.6.0/src/struphy/pic/tests/test_pic_legacy_files/accumulation.py +0 -544
- struphy-2.6.0/src/struphy/pic/tests/test_pic_legacy_files/accumulation_kernels_3d.py +0 -1492
- struphy-2.6.0/src/struphy/pic/tests/test_pic_legacy_files/mappings_3d.py +0 -823
- struphy-2.6.0/src/struphy/pic/tests/test_pic_legacy_files/mappings_3d_fast.py +0 -736
- struphy-2.6.0/src/struphy/pic/tests/test_pic_legacy_files/pusher.py +0 -442
- struphy-2.6.0/src/struphy/pic/tests/test_pic_legacy_files/pusher_pos.py +0 -3463
- struphy-2.6.0/src/struphy/pic/tests/test_pic_legacy_files/pusher_vel_2d.py +0 -791
- struphy-2.6.0/src/struphy/pic/tests/test_pic_legacy_files/pusher_vel_3d.py +0 -1622
- struphy-2.6.0/src/struphy/pic/tests/test_pic_legacy_files/spline_evaluation_2d.py +0 -470
- struphy-2.6.0/src/struphy/pic/tests/test_pic_legacy_files/spline_evaluation_3d.py +0 -1443
- struphy-2.6.0/src/struphy/polar/__init__.py +0 -0
- struphy-2.6.0/src/struphy/polar/tests/__init__.py +0 -0
- struphy-2.6.0/src/struphy/polar/tests/test_legacy_polar_splines.py +0 -169
- struphy-2.6.0/src/struphy/post_processing/__init__.py +0 -0
- struphy-2.6.0/src/struphy/post_processing/likwid/__init__.py +0 -0
- struphy-2.6.0/src/struphy/post_processing/orbits/__init__.py +0 -0
- struphy-2.6.0/src/struphy/post_processing/pproc_struphy.py +0 -257
- struphy-2.6.0/src/struphy/post_processing/tests/__init__.py +0 -0
- struphy-2.6.0/src/struphy/profiling/__init__.py +0 -0
- struphy-2.6.0/src/struphy/propagators/tests/__init__.py +0 -0
- struphy-2.6.0/src/struphy/psydac-2.6.0.dev0-py3-none-any.whl +0 -0
- struphy-2.6.0/src/struphy/topology/__init__.py +0 -0
- struphy-2.6.0/src/struphy/utils/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/LICENSE +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/README.md +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/setup.cfg +0 -0
- {struphy-2.6.0/src/struphy/bsplines → struphy-3.0.1/src/struphy}/__init__.py +0 -0
- {struphy-2.6.0/src/struphy/bsplines/tests → struphy-3.0.1/src/struphy/bsplines}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/bsplines/bsplines_kernels.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/bsplines/evaluation_kernels_1d.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/bsplines/evaluation_kernels_2d.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/bsplines/evaluation_kernels_3d.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/bsplines/shapefunc_kernels.py +0 -0
- {struphy-2.6.0/src/struphy/console → struphy-3.0.1/src/struphy/bsplines/tests}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/compile_struphy.mk +0 -0
- {struphy-2.6.0/src/struphy/diagnostics → struphy-3.0.1/src/struphy/console}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/console/format.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/console/likwid.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/console/main.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/console/parsers.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/dependencies.py +0 -0
- {struphy-2.6.0/src/struphy/diagnostics/paraview → struphy-3.0.1/src/struphy/diagnostics}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/diagnostics/console_diagn.py +0 -0
- {struphy-2.6.0/src/struphy/dispersion_relations → struphy-3.0.1/src/struphy/diagnostics/paraview}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/diagnostics/paraview/mesh_creator.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/diagnostics/paraview/vtk_writer.py +0 -0
- {struphy-2.6.0/src/struphy/eigenvalue_solvers → struphy-3.0.1/src/struphy/dispersion_relations}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/dispersion_relations/analytic.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/dispersion_relations/base.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/dispersion_relations/utilities.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/eigenvalue_solvers/derivatives.py +0 -0
- {struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy → struphy-3.0.1/src/struphy/examples/restelli2018}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/examples/restelli2018/callables.py +0 -0
- {struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/control_variates → struphy-3.0.1/src/struphy/feec}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/feec/banded_to_stencil_kernels.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/feec/basis_projection_kernels.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/feec/local_projectors_kernels.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/feec/mass_kernels.py +0 -0
- {struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/control_variates/kinetic_extended → struphy-3.0.1/src/struphy/feec/tests}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/feec/utilities_kernels.py +0 -0
- {struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/massless_operators → struphy-3.0.1/src/struphy/fields_background}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/fields_background/base.py +0 -0
- {struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/projectors_local → struphy-3.0.1/src/struphy/fields_background/coil_fields}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/fields_background/coil_fields/coil_fields.py +0 -0
- {struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/projectors_local/pro_local → struphy-3.0.1/src/struphy/fields_background/mhd_equil}/__init__.py +0 -0
- {struphy-2.6.0/src/struphy/eigenvalue_solvers/legacy/projectors_local/shape_pro_local → struphy-3.0.1/src/struphy/fields_background/mhd_equil/eqdsk}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/fields_background/mhd_equil/eqdsk/data/AUGNLED_g031213.00830.high +0 -0
- {struphy-2.6.0/src/struphy/eigenvalue_solvers/tests → struphy-3.0.1/src/struphy/fields_background/mhd_equil/eqdsk/data}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/fields_background/mhd_equil/eqdsk/readeqdsk.py +0 -0
- {struphy-2.6.0/src/struphy/examples/restelli2018 → struphy-3.0.1/src/struphy/fields_background/mhd_equil/gvec}/__init__.py +0 -0
- {struphy-2.6.0/src/struphy/feec → struphy-3.0.1/src/struphy/fields_background/mhd_equil/gvec/output}/__init__.py +0 -0
- {struphy-2.6.0/src/struphy/feec/tests → struphy-3.0.1/src/struphy/fields_background/mhd_equil/gvec/output/vtk}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/fields_background/mhd_equil/gvec/run_01/CIRCTOK_State_0000_00000000.dat +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/fields_background/mhd_equil/gvec/run_01/CIRCTOK_State_0000_00001000.dat +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/fields_background/mhd_equil/gvec/run_01/parameter.ini +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/fields_background/mhd_equil/gvec/run_02/W7X_State_0000_00000000.dat +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/fields_background/mhd_equil/gvec/run_02/W7X_State_0000_00000100.dat +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/fields_background/mhd_equil/gvec/run_02/parameter-w7x.ini +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/fields_background/mhd_equil/gvec/run_03/NEO-SPITZER_State_0000_00000000.dat +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/fields_background/mhd_equil/gvec/run_03/NEO-SPITZER_State_0000_00003307.dat +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/fields_background/mhd_equil/gvec/run_03/Neo-spitzer-mirror23-well-opt-1-AR10-1.nc +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/fields_background/mhd_equil/gvec/run_03/parameter-fig8.ini +0 -0
- {struphy-2.6.0/src/struphy/fields_background → struphy-3.0.1/src/struphy/fields_background/mhd_equil/vmec}/__init__.py +0 -0
- {struphy-2.6.0/src/struphy/fields_background/coil_fields → struphy-3.0.1/src/struphy/fields_background/tests}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/fields_background/tests/test_desc_equil.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/fields_background/tests/test_generic_equils.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/fields_background/tests/test_mhd_equils.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/fields_background/tests/test_numerical_mhd_equil.py +0 -0
- {struphy-2.6.0/src/struphy/fields_background/mhd_equil → struphy-3.0.1/src/struphy/geometry}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/geometry/base.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/geometry/domains.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/geometry/evaluation_kernels.py +0 -0
- {struphy-2.6.0/src/struphy/fields_background/mhd_equil/eqdsk → struphy-3.0.1/src/struphy/geometry/map_coef}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/geometry/mappings_kernels.py +0 -0
- {struphy-2.6.0/src/struphy/fields_background/mhd_equil/eqdsk/data → struphy-3.0.1/src/struphy/geometry/tests}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/geometry/tests/test_domain.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/geometry/transform_kernels.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/geometry/utilities_kernels.py +0 -0
- {struphy-2.6.0/src/struphy/fields_background/mhd_equil/gvec → struphy-3.0.1/src/struphy/initial}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/initial/base.py +0 -0
- {struphy-2.6.0/src/struphy/fields_background/mhd_equil/gvec/output → struphy-3.0.1/src/struphy/initial/tests}/__init__.py +0 -0
- {struphy-2.6.0/src/struphy/fields_background/mhd_equil/gvec/output/vtk → struphy-3.0.1/src/struphy/io}/__init__.py +0 -0
- {struphy-2.6.0/src/struphy/fields_background/mhd_equil/vmec → struphy-3.0.1/src/struphy/kernel_arguments}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/kernel_arguments/local_projectors_args_kernels.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/kernel_arguments/pusher_args_kernels.py +0 -0
- {struphy-2.6.0/src/struphy/fields_background/tests → struphy-3.0.1/src/struphy/kinetic_background}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/kinetic_background/base.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/kinetic_background/maxwellians.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/kinetic_background/moment_functions.py +0 -0
- {struphy-2.6.0/src/struphy/geometry → struphy-3.0.1/src/struphy/kinetic_background/tests}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/kinetic_background/tests/test_base.py +0 -0
- {struphy-2.6.0/src/struphy/geometry/map_coef → struphy-3.0.1/src/struphy/linear_algebra}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/linear_algebra/linalg_kernels.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/linear_algebra/linalg_kron.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/linear_algebra/solver.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/linear_algebra/stencil_dot_kernels.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/linear_algebra/stencil_transpose_kernels.py +0 -0
- {struphy-2.6.0/src/struphy/geometry → struphy-3.0.1/src/struphy/linear_algebra}/tests/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/models/__init__.py +0 -0
- {struphy-2.6.0/src/struphy/initial → struphy-3.0.1/src/struphy/models/tests}/__init__.py +0 -0
- {struphy-2.6.0/src/struphy/initial/tests → struphy-3.0.1/src/struphy/models/tests/default_params}/__init__.py +0 -0
- {struphy-2.6.0/src/struphy/io → struphy-3.0.1/src/struphy/models/tests/verification}/__init__.py +0 -0
- {struphy-2.6.0/src/struphy/io/inp → struphy-3.0.1/src/struphy/ode}/__init__.py +0 -0
- {struphy-2.6.0/src/struphy/io/inp/verification → struphy-3.0.1/src/struphy/ode/tests}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/ode/utils.py +0 -0
- {struphy-2.6.0/src/struphy/io/out → struphy-3.0.1/src/struphy/physics}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/physics/physics.py +0 -0
- {struphy-2.6.0/src/struphy/kernel_arguments → struphy-3.0.1/src/struphy/pic}/__init__.py +0 -0
- {struphy-2.6.0/src/struphy/kinetic_background → struphy-3.0.1/src/struphy/pic/accumulation}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/pic/accumulation/accum_kernels.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/pic/accumulation/accum_kernels_gc.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/pic/accumulation/filler_kernels.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/pic/accumulation/filter_kernels.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/pic/accumulation/particle_to_mat_kernels.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/pic/particles.py +0 -0
- {struphy-2.6.0/src/struphy/kinetic_background/tests → struphy-3.0.1/src/struphy/pic/pushing}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/pic/pushing/pusher_kernels.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/pic/pushing/pusher_kernels_gc.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/pic/pushing/pusher_utilities_kernels.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/pic/sampling_kernels.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/pic/sobol_seq.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/pic/sorting_kernels.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/pic/sph_eval_kernels.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/pic/sph_smoothing_kernels.py +0 -0
- {struphy-2.6.0/src/struphy/linear_algebra → struphy-3.0.1/src/struphy/pic/tests}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/pic/utilities_kernels.py +0 -0
- {struphy-2.6.0/src/struphy/linear_algebra/tests → struphy-3.0.1/src/struphy/polar}/__init__.py +0 -0
- {struphy-2.6.0/src/struphy/models → struphy-3.0.1/src/struphy/polar}/tests/__init__.py +0 -0
- {struphy-2.6.0/src/struphy/ode → struphy-3.0.1/src/struphy/post_processing}/__init__.py +0 -0
- {struphy-2.6.0/src/struphy/ode/tests → struphy-3.0.1/src/struphy/post_processing/likwid}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/post_processing/likwid/hardware_dicts.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/post_processing/likwid/likwid_parser.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/post_processing/likwid/maxplotlylib.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/post_processing/likwid/plot_likwidproject.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/post_processing/likwid/plot_time_traces.py +0 -0
- {struphy-2.6.0/src/struphy/physics → struphy-3.0.1/src/struphy/post_processing/orbits}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/post_processing/orbits/orbits_kernels.py +0 -0
- {struphy-2.6.0/src/struphy/pic → struphy-3.0.1/src/struphy/post_processing/tests}/__init__.py +0 -0
- {struphy-2.6.0/src/struphy/pic/accumulation → struphy-3.0.1/src/struphy/profiling}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/propagators/__init__.py +0 -0
- {struphy-2.6.0/src/struphy/pic/pushing → struphy-3.0.1/src/struphy/propagators/tests}/__init__.py +0 -0
- {struphy-2.6.0/src/struphy/pic/tests → struphy-3.0.1/src/struphy/topology}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/topology/grids.py +0 -0
- {struphy-2.6.0/src/struphy/pic/tests/test_pic_legacy_files → struphy-3.0.1/src/struphy/utils}/__init__.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/utils/cupy_vs_numpy.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/utils/pyccel.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy/utils/utils.py +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy.egg-info/dependency_links.txt +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy.egg-info/entry_points.txt +0 -0
- {struphy-2.6.0 → struphy-3.0.1}/src/struphy.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: struphy
|
|
3
|
-
Version:
|
|
3
|
+
Version: 3.0.1
|
|
4
4
|
Summary: Multi-model plasma physics package
|
|
5
5
|
Author: Max Planck Institute for Plasma Physics
|
|
6
6
|
Author-email: stefan.possanner@ipp.mpg.de, max.lindqvist@ipp.mpg.de, eric.sonnendruecker@ipp.mpg.de
|
|
@@ -32,7 +32,8 @@ Description-Content-Type: text/markdown
|
|
|
32
32
|
License-File: LICENSE
|
|
33
33
|
Requires-Dist: numpy<=2.2.6
|
|
34
34
|
Requires-Dist: cunumpy<=0.1
|
|
35
|
-
Requires-Dist: pyccel<=2.0
|
|
35
|
+
Requires-Dist: pyccel<=2.1.0,>=2.0
|
|
36
|
+
Requires-Dist: feectools<=0.1.0
|
|
36
37
|
Requires-Dist: scipy<=1.15.3
|
|
37
38
|
Requires-Dist: h5py<=3.14.0
|
|
38
39
|
Requires-Dist: matplotlib<=3.10.5
|
|
@@ -40,8 +41,9 @@ Requires-Dist: pyyaml<=6.0.3
|
|
|
40
41
|
Requires-Dist: vtk<=9.5.2
|
|
41
42
|
Requires-Dist: tqdm<=4.67.1
|
|
42
43
|
Requires-Dist: argcomplete<=3.6.3
|
|
43
|
-
Requires-Dist: pytest<=9.0.
|
|
44
|
+
Requires-Dist: pytest<=9.0.2
|
|
44
45
|
Requires-Dist: pytest-mpi<=0.6
|
|
46
|
+
Requires-Dist: pytest-testmon<=2.2.0
|
|
45
47
|
Requires-Dist: line_profiler<=5.0.0
|
|
46
48
|
Provides-Extra: phys
|
|
47
49
|
Requires-Dist: gvec<=1.2.0,>=1.1.0; extra == "phys"
|
|
@@ -6,7 +6,7 @@ build-backend = "setuptools.build_meta"
|
|
|
6
6
|
|
|
7
7
|
[project]
|
|
8
8
|
name = "struphy"
|
|
9
|
-
version = "
|
|
9
|
+
version = "3.0.1"
|
|
10
10
|
readme = "README.md"
|
|
11
11
|
requires-python = ">=3.10"
|
|
12
12
|
authors = [
|
|
@@ -25,7 +25,8 @@ classifiers = [
|
|
|
25
25
|
dependencies = [
|
|
26
26
|
"numpy<=2.2.6",
|
|
27
27
|
"cunumpy<=0.1",
|
|
28
|
-
"pyccel<=2.0
|
|
28
|
+
"pyccel<=2.1.0, >=2.0",
|
|
29
|
+
"feectools<=0.1.0",
|
|
29
30
|
"scipy<=1.15.3",
|
|
30
31
|
"h5py<=3.14.0",
|
|
31
32
|
"matplotlib<=3.10.5",
|
|
@@ -33,8 +34,9 @@ dependencies = [
|
|
|
33
34
|
"vtk<=9.5.2",
|
|
34
35
|
"tqdm<=4.67.1",
|
|
35
36
|
"argcomplete<=3.6.3",
|
|
36
|
-
"pytest<=9.0.
|
|
37
|
+
"pytest<=9.0.2",
|
|
37
38
|
"pytest-mpi<=0.6",
|
|
39
|
+
"pytest-testmon<=2.2.0",
|
|
38
40
|
"line_profiler<=5.0.0",
|
|
39
41
|
]
|
|
40
42
|
|
|
@@ -120,19 +122,8 @@ kinetic-diagnostics = "struphy.diagnostics.console_diagn:main"
|
|
|
120
122
|
"run_03/*.ini",
|
|
121
123
|
"run_03/*.nc",
|
|
122
124
|
]
|
|
123
|
-
"struphy.io" = [
|
|
124
|
-
"batch/*.sh",
|
|
125
|
-
]
|
|
126
|
-
"struphy.io.inp" = [
|
|
127
|
-
"parameters.yml",
|
|
128
|
-
"tests/*.yml",
|
|
129
|
-
"tutorials/*.yml",
|
|
130
|
-
"longer_examples/*.yml",
|
|
131
|
-
"verification/*.yml",
|
|
132
|
-
]
|
|
133
125
|
struphy = [
|
|
134
126
|
"compile_struphy.mk",
|
|
135
|
-
"psydac-2.6.0.dev0-py3-none-any.whl",
|
|
136
127
|
]
|
|
137
128
|
|
|
138
129
|
[tool.autopep8]
|
|
@@ -534,7 +534,7 @@ def elements_spans(knots, degree):
|
|
|
534
534
|
Examples
|
|
535
535
|
--------
|
|
536
536
|
>>> import numpy as np
|
|
537
|
-
>>> from
|
|
537
|
+
>>> from feectools.core.bsplines import make_knots, elements_spans
|
|
538
538
|
|
|
539
539
|
>>> p = 3 ; n = 8
|
|
540
540
|
>>> grid = xp.arange( n-p+1 )
|
|
@@ -2,7 +2,7 @@ import time
|
|
|
2
2
|
|
|
3
3
|
import cunumpy as xp
|
|
4
4
|
import pytest
|
|
5
|
-
from
|
|
5
|
+
from feectools.ddm.mpi import mpi as MPI
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
@pytest.mark.parametrize("Nel", [[8, 9, 10]])
|
|
@@ -14,7 +14,7 @@ def test_bsplines_span_and_basis(Nel, p, spl_kind):
|
|
|
14
14
|
Print timings.
|
|
15
15
|
"""
|
|
16
16
|
|
|
17
|
-
import
|
|
17
|
+
import feectools.core.bsplines_kernels as bsp_psy
|
|
18
18
|
|
|
19
19
|
import struphy.bsplines.bsplines_kernels as bsp
|
|
20
20
|
from struphy.feec.psydac_derham import Derham
|
|
@@ -1,3 +1,11 @@
|
|
|
1
|
+
import pytest
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
def pytest_unconfigure(config):
|
|
5
|
+
if hasattr(config, "testmon_data"):
|
|
6
|
+
config.testmon_data.db.con.close()
|
|
7
|
+
|
|
8
|
+
|
|
1
9
|
def pytest_addoption(parser):
|
|
2
10
|
parser.addoption("--with-desc", action="store_true")
|
|
3
11
|
parser.addoption("--vrbose", action="store_true")
|
|
@@ -110,7 +110,7 @@ def struphy_profile(dirs, replace, all, n_lines, print_callers, savefig):
|
|
|
110
110
|
)
|
|
111
111
|
print("-" * 154)
|
|
112
112
|
for position, key in enumerate(dicts[0].keys()):
|
|
113
|
-
if list_of_funcs
|
|
113
|
+
if list_of_funcs is None:
|
|
114
114
|
for dict, sim_name, n, dim in zip(dicts, sim_names, nproc, Nel):
|
|
115
115
|
string = f"{sim_name}".ljust(20) + f"{n}".ljust(7) + f"{position:2d}".ljust(5) + str(key.ljust(70))
|
|
116
116
|
for value in dict[key].values():
|
|
@@ -1,5 +1,10 @@
|
|
|
1
|
+
import os
|
|
2
|
+
|
|
3
|
+
import struphy
|
|
1
4
|
from struphy.utils.utils import subp_run
|
|
2
5
|
|
|
6
|
+
LIBPATH = struphy.__path__[0]
|
|
7
|
+
|
|
3
8
|
|
|
4
9
|
def struphy_test(
|
|
5
10
|
group: str,
|
|
@@ -35,22 +40,36 @@ def struphy_test(
|
|
|
35
40
|
"""
|
|
36
41
|
|
|
37
42
|
if "unit" in group:
|
|
43
|
+
list_of_tests = [
|
|
44
|
+
f"{LIBPATH}/bsplines/tests/",
|
|
45
|
+
f"{LIBPATH}/console/tests/",
|
|
46
|
+
f"{LIBPATH}/feec/tests/",
|
|
47
|
+
f"{LIBPATH}/fields_background/tests/",
|
|
48
|
+
f"{LIBPATH}/geometry/tests/",
|
|
49
|
+
f"{LIBPATH}/initial/tests/",
|
|
50
|
+
f"{LIBPATH}/kinetic_background/tests/",
|
|
51
|
+
f"{LIBPATH}/linear_algebra/tests/",
|
|
52
|
+
f"{LIBPATH}/ode/tests/",
|
|
53
|
+
f"{LIBPATH}/pic/tests/",
|
|
54
|
+
f"{LIBPATH}/polar/tests/",
|
|
55
|
+
f"{LIBPATH}/post_processing/tests/",
|
|
56
|
+
f"{LIBPATH}/propagators/tests/",
|
|
57
|
+
]
|
|
58
|
+
|
|
38
59
|
if mpi > 1:
|
|
39
60
|
cmd = [
|
|
40
61
|
"mpirun",
|
|
41
62
|
"-n",
|
|
42
63
|
str(mpi),
|
|
43
64
|
"pytest",
|
|
44
|
-
"
|
|
45
|
-
"not _models and not _tutorial and not pproc and not _verif_",
|
|
65
|
+
"--testmon",
|
|
46
66
|
"--with-mpi",
|
|
47
|
-
]
|
|
67
|
+
] + list_of_tests
|
|
48
68
|
else:
|
|
49
69
|
cmd = [
|
|
50
70
|
"pytest",
|
|
51
|
-
"
|
|
52
|
-
|
|
53
|
-
]
|
|
71
|
+
"--testmon",
|
|
72
|
+
] + list_of_tests
|
|
54
73
|
|
|
55
74
|
if with_desc:
|
|
56
75
|
cmd += ["--with-desc"]
|
|
@@ -62,6 +81,10 @@ def struphy_test(
|
|
|
62
81
|
subp_run(cmd)
|
|
63
82
|
|
|
64
83
|
elif group in {"models", "fluid", "kinetic", "hybrid", "toy"}:
|
|
84
|
+
list_of_tests = [
|
|
85
|
+
f"{LIBPATH}/models/tests/default_params/",
|
|
86
|
+
]
|
|
87
|
+
|
|
65
88
|
if mpi > 1:
|
|
66
89
|
cmd = [
|
|
67
90
|
"mpirun",
|
|
@@ -69,22 +92,18 @@ def struphy_test(
|
|
|
69
92
|
"-n",
|
|
70
93
|
str(mpi),
|
|
71
94
|
"pytest",
|
|
72
|
-
"-k",
|
|
73
|
-
"_models",
|
|
74
95
|
"-m",
|
|
75
96
|
group,
|
|
76
|
-
"-
|
|
97
|
+
"--testmon-forceselect",
|
|
77
98
|
"--with-mpi",
|
|
78
|
-
]
|
|
99
|
+
] + list_of_tests
|
|
79
100
|
else:
|
|
80
101
|
cmd = [
|
|
81
102
|
"pytest",
|
|
82
|
-
"-k",
|
|
83
|
-
"_models",
|
|
84
103
|
"-m",
|
|
85
104
|
group,
|
|
86
|
-
"-
|
|
87
|
-
]
|
|
105
|
+
"--testmon-forceselect",
|
|
106
|
+
] + list_of_tests
|
|
88
107
|
|
|
89
108
|
if vrbose:
|
|
90
109
|
cmd += ["--vrbose"]
|
|
@@ -92,9 +111,14 @@ def struphy_test(
|
|
|
92
111
|
cmd += ["--nclones", f"{nclones}"]
|
|
93
112
|
if show_plots:
|
|
94
113
|
cmd += ["--show-plots"]
|
|
114
|
+
|
|
95
115
|
subp_run(cmd)
|
|
96
116
|
|
|
97
117
|
elif "verification" in group:
|
|
118
|
+
list_of_tests = [
|
|
119
|
+
f"{LIBPATH}/models/tests/verification/",
|
|
120
|
+
]
|
|
121
|
+
|
|
98
122
|
if mpi > 1:
|
|
99
123
|
cmd = [
|
|
100
124
|
"mpirun",
|
|
@@ -102,18 +126,14 @@ def struphy_test(
|
|
|
102
126
|
"-n",
|
|
103
127
|
str(mpi),
|
|
104
128
|
"pytest",
|
|
105
|
-
"
|
|
106
|
-
"_verif_",
|
|
107
|
-
"-s",
|
|
129
|
+
"--testmon",
|
|
108
130
|
"--with-mpi",
|
|
109
|
-
]
|
|
131
|
+
] + list_of_tests
|
|
110
132
|
else:
|
|
111
133
|
cmd = [
|
|
112
134
|
"pytest",
|
|
113
|
-
"
|
|
114
|
-
|
|
115
|
-
"-s",
|
|
116
|
-
]
|
|
135
|
+
"--testmon",
|
|
136
|
+
] + list_of_tests
|
|
117
137
|
|
|
118
138
|
if vrbose:
|
|
119
139
|
cmd += ["--vrbose"]
|
|
@@ -121,6 +141,7 @@ def struphy_test(
|
|
|
121
141
|
cmd += ["--nclones", f"{nclones}"]
|
|
122
142
|
if show_plots:
|
|
123
143
|
cmd += ["--show-plots"]
|
|
144
|
+
|
|
124
145
|
subp_run(cmd)
|
|
125
146
|
|
|
126
147
|
else:
|
|
@@ -130,10 +151,9 @@ def struphy_test(
|
|
|
130
151
|
"-n",
|
|
131
152
|
str(mpi),
|
|
132
153
|
"pytest",
|
|
133
|
-
"-k",
|
|
134
|
-
"_models",
|
|
135
154
|
"-m",
|
|
136
155
|
"single",
|
|
156
|
+
"--testmon-forceselect",
|
|
137
157
|
"-s",
|
|
138
158
|
"--with-mpi",
|
|
139
159
|
"--model-name",
|
|
@@ -145,4 +165,5 @@ def struphy_test(
|
|
|
145
165
|
cmd += ["--nclones", f"{nclones}"]
|
|
146
166
|
if show_plots:
|
|
147
167
|
cmd += ["--show-plots"]
|
|
168
|
+
|
|
148
169
|
subp_run(cmd)
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
import os
|
|
2
|
+
import pickle
|
|
3
|
+
import sys
|
|
4
|
+
from unittest import mock
|
|
5
|
+
from unittest.mock import patch
|
|
6
|
+
|
|
7
|
+
import pytest
|
|
8
|
+
|
|
9
|
+
import struphy as struphy_lib
|
|
10
|
+
from struphy.console.compile import struphy_compile
|
|
11
|
+
from struphy.console.main import struphy
|
|
12
|
+
from struphy.console.params import struphy_params
|
|
13
|
+
from struphy.utils.utils import read_state, subp_run
|
|
14
|
+
|
|
15
|
+
libpath = struphy_lib.__path__[0]
|
|
16
|
+
state = read_state()
|
|
17
|
+
|
|
18
|
+
# Create models_list if it doesn't exist
|
|
19
|
+
if not os.path.isfile(os.path.join(libpath, "models", "models_list")):
|
|
20
|
+
cmd = ["struphy", "--refresh-models"]
|
|
21
|
+
subp_run(cmd)
|
|
22
|
+
|
|
23
|
+
with open(os.path.join(libpath, "models", "models_list"), "rb") as fp:
|
|
24
|
+
struphy_models = pickle.load(fp)
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
def is_sublist(main_list, sub_list):
|
|
28
|
+
"""
|
|
29
|
+
Check if sub_list is a sublist of main_list.
|
|
30
|
+
"""
|
|
31
|
+
sub_len = len(sub_list)
|
|
32
|
+
return any(main_list[i : i + sub_len] == sub_list for i in range(len(main_list) - sub_len + 1))
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
def split_command(command):
|
|
36
|
+
"""
|
|
37
|
+
Split a command string into a list of arguments.
|
|
38
|
+
"""
|
|
39
|
+
# only works if there are no real spaces in the element.
|
|
40
|
+
# Could be improved by not splitting if the space is '\ ' with regex
|
|
41
|
+
spl = []
|
|
42
|
+
for element in command:
|
|
43
|
+
spl.extend(element.split())
|
|
44
|
+
return spl
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
@pytest.mark.mpi_skip
|
|
48
|
+
@pytest.mark.parametrize(
|
|
49
|
+
"args",
|
|
50
|
+
[
|
|
51
|
+
# Test cases for 'compile' sub-command with options
|
|
52
|
+
["compile"],
|
|
53
|
+
["compile", "-y"],
|
|
54
|
+
["compile", "--language", "fortran"],
|
|
55
|
+
["compile", "--compiler", "intel"],
|
|
56
|
+
["compile", "--omp-pic"],
|
|
57
|
+
["compile", "--verbose"],
|
|
58
|
+
["compile", "--delete"],
|
|
59
|
+
# Test cases for 'params' sub-command
|
|
60
|
+
["params", "Maxwell"],
|
|
61
|
+
["params", "Vlasov"],
|
|
62
|
+
# ["params", "Maxwell", "-f", "params_Maxwell.yml"],
|
|
63
|
+
# Test cases for 'profile' sub-command
|
|
64
|
+
["profile", "sim_1"],
|
|
65
|
+
["profile", "sim_2", "--replace"],
|
|
66
|
+
["profile", "sim_3", "--n-lines", "10"],
|
|
67
|
+
["profile", "sim_1", "--savefig", "profile_output.png"],
|
|
68
|
+
# Test cases for 'test' sub-command
|
|
69
|
+
["test", "models"],
|
|
70
|
+
["test", "unit"],
|
|
71
|
+
["test", "Maxwell"],
|
|
72
|
+
["test", "hybrid", "--mpi", "8"],
|
|
73
|
+
],
|
|
74
|
+
)
|
|
75
|
+
def test_main(args):
|
|
76
|
+
# Mock the func call (don't execute it)
|
|
77
|
+
with (
|
|
78
|
+
patch("struphy.console.compile.struphy_compile") as mock_compile,
|
|
79
|
+
patch("struphy.console.params.struphy_params") as mock_params,
|
|
80
|
+
patch("struphy.console.profile.struphy_profile") as mock_profile,
|
|
81
|
+
patch("struphy.console.test.struphy_test") as mock_test,
|
|
82
|
+
):
|
|
83
|
+
funcs = {
|
|
84
|
+
"compile": mock_compile,
|
|
85
|
+
"params": mock_params,
|
|
86
|
+
"profile": mock_profile,
|
|
87
|
+
"test": mock_test,
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
# Set sys args
|
|
91
|
+
sys.argv = ["struphy"] + args
|
|
92
|
+
|
|
93
|
+
# Call struphy
|
|
94
|
+
try:
|
|
95
|
+
struphy()
|
|
96
|
+
except SystemExit:
|
|
97
|
+
pass # Ignore the exit in tests
|
|
98
|
+
|
|
99
|
+
for func_name, func in funcs.items():
|
|
100
|
+
if args[0] == func_name:
|
|
101
|
+
func.assert_called_once()
|
|
102
|
+
else:
|
|
103
|
+
func.assert_not_called()
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
def run_struphy(args):
|
|
107
|
+
with mock.patch.object(sys, "argv", ["struphy"] + args):
|
|
108
|
+
struphy()
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
@pytest.mark.mpi_skip
|
|
112
|
+
@pytest.mark.parametrize(
|
|
113
|
+
"args_expected",
|
|
114
|
+
[
|
|
115
|
+
[["--version"], [""]],
|
|
116
|
+
[["--short-help"], ["available commands"]],
|
|
117
|
+
[["--fluid"], ["Fluid models"]],
|
|
118
|
+
[["--kinetic"], ["Kinetic models"]],
|
|
119
|
+
[["--hybrid"], ["Hybrid models"]],
|
|
120
|
+
[["--toy"], ["Toy models"]],
|
|
121
|
+
[["--refresh-models"], ["Collecting available models"]],
|
|
122
|
+
],
|
|
123
|
+
)
|
|
124
|
+
def test_main_options(args_expected, capsys):
|
|
125
|
+
args = args_expected[0]
|
|
126
|
+
|
|
127
|
+
with pytest.raises(SystemExit):
|
|
128
|
+
run_struphy(args)
|
|
129
|
+
|
|
130
|
+
# Capture the output
|
|
131
|
+
captured = capsys.readouterr()
|
|
132
|
+
|
|
133
|
+
# Assert that output was printed
|
|
134
|
+
assert captured.out != ""
|
|
135
|
+
|
|
136
|
+
for expected in args_expected[1]:
|
|
137
|
+
assert expected in captured.out
|
|
138
|
+
|
|
139
|
+
|
|
140
|
+
@pytest.mark.mpi_skip
|
|
141
|
+
@pytest.mark.parametrize("model", ["Maxwell"])
|
|
142
|
+
@pytest.mark.parametrize("yes", [True])
|
|
143
|
+
def test_struphy_params(model, yes):
|
|
144
|
+
struphy_params(model, yes=yes)
|
|
145
|
+
|
|
146
|
+
|
|
147
|
+
if __name__ == "__main__":
|
|
148
|
+
# Set test parameters
|
|
149
|
+
model = "Maxwell"
|
|
150
|
+
input_abs = os.path.join(libpath, "io/inp/parameters.yml")
|
|
151
|
+
output_abs = os.path.join(libpath, "io/out/sim_1")
|
|
152
|
+
batch_abs = os.path.join(libpath, "io/batch/batch_cobra.sh")
|
|
153
|
+
runtime = 300
|
|
154
|
+
save_step = 300
|
|
155
|
+
restart = True
|
|
156
|
+
cprofile = False
|
|
157
|
+
likwid = False
|
|
158
|
+
mpi = 2
|
|
@@ -120,19 +120,19 @@ def power_spectrum_2d(
|
|
|
120
120
|
temp[n, :, :, :] = snapshot[component]
|
|
121
121
|
|
|
122
122
|
# Extract 2d data (t, eta) for fft
|
|
123
|
-
if slice_at[0]
|
|
123
|
+
if slice_at[0] is None:
|
|
124
124
|
data = temp[:, :, slice_at[1], slice_at[2]]
|
|
125
125
|
grid = grids[0]
|
|
126
126
|
if grids_mapped is not None:
|
|
127
127
|
grid = grids_mapped[0][:, slice_at[1], slice_at[2]]
|
|
128
128
|
|
|
129
|
-
elif slice_at[1]
|
|
129
|
+
elif slice_at[1] is None:
|
|
130
130
|
data = temp[:, slice_at[0], :, slice_at[2]]
|
|
131
131
|
grid = grids[1]
|
|
132
132
|
if grids_mapped is not None:
|
|
133
133
|
grid = grids_mapped[1][slice_at[0], :, slice_at[2]]
|
|
134
134
|
|
|
135
|
-
elif slice_at[2]
|
|
135
|
+
elif slice_at[2] is None:
|
|
136
136
|
data = temp[:, slice_at[0], slice_at[1], :]
|
|
137
137
|
grid = grids[2].flatten()
|
|
138
138
|
if grids_mapped is not None:
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import cunumpy as xp
|
|
2
|
-
from
|
|
3
|
-
from
|
|
4
|
-
from
|
|
5
|
-
from
|
|
6
|
-
from
|
|
7
|
-
from
|
|
8
|
-
from
|
|
2
|
+
from feectools.api.settings import PSYDAC_BACKEND_GPYCCEL
|
|
3
|
+
from feectools.ddm.mpi import mpi as MPI
|
|
4
|
+
from feectools.fem.basic import FemSpace
|
|
5
|
+
from feectools.fem.tensor import TensorFemSpace
|
|
6
|
+
from feectools.linalg.basic import IdentityOperator, LinearOperator, Vector
|
|
7
|
+
from feectools.linalg.block import BlockLinearOperator, BlockVector, BlockVectorSpace
|
|
8
|
+
from feectools.linalg.stencil import StencilMatrix, StencilVector, StencilVectorSpace
|
|
9
9
|
|
|
10
10
|
from struphy.feec import basis_projection_kernels
|
|
11
11
|
from struphy.feec.linear_operators import BoundaryOperator, LinOpWithTransp
|
|
@@ -950,7 +950,7 @@ class BasisProjectionOperatorLocal(LinOpWithTransp):
|
|
|
950
950
|
P : struphy.feec.projectors.CommutingProjectorLocal
|
|
951
951
|
Local commuting projector mapping into TensorFemSpace/VectorFemSpace W = P.space (codomain of operator).
|
|
952
952
|
|
|
953
|
-
V :
|
|
953
|
+
V : feectools.fem.basic.FemSpace
|
|
954
954
|
Finite element spline space (domain, input space).
|
|
955
955
|
|
|
956
956
|
weights : list
|
|
@@ -1158,15 +1158,15 @@ class BasisProjectionOperatorLocal(LinOpWithTransp):
|
|
|
1158
1158
|
|
|
1159
1159
|
Parameters
|
|
1160
1160
|
----------
|
|
1161
|
-
v :
|
|
1161
|
+
v : feectools.linalg.basic.Vector
|
|
1162
1162
|
Vector the operator shall be applied to.
|
|
1163
1163
|
|
|
1164
|
-
out :
|
|
1164
|
+
out : feectools.linalg.basic.Vector, optional
|
|
1165
1165
|
If given, the output will be written in-place into this vector.
|
|
1166
1166
|
|
|
1167
1167
|
Returns
|
|
1168
1168
|
-------
|
|
1169
|
-
out :
|
|
1169
|
+
out : feectools.linalg.basic.Vector
|
|
1170
1170
|
The output (codomain) vector.
|
|
1171
1171
|
"""
|
|
1172
1172
|
|
|
@@ -1609,7 +1609,7 @@ class BasisProjectionOperator(LinOpWithTransp):
|
|
|
1609
1609
|
P : struphy.feec.projectors.Projector
|
|
1610
1610
|
Global commuting projector mapping into TensorFemSpace/VectorFemSpace W = P.space (codomain of operator).
|
|
1611
1611
|
|
|
1612
|
-
V :
|
|
1612
|
+
V : feectools.fem.basic.FemSpace
|
|
1613
1613
|
Finite element spline space (domain, input space).
|
|
1614
1614
|
|
|
1615
1615
|
weights : list
|
|
@@ -1804,10 +1804,10 @@ class BasisProjectionOperator(LinOpWithTransp):
|
|
|
1804
1804
|
|
|
1805
1805
|
Parameters
|
|
1806
1806
|
----------
|
|
1807
|
-
v :
|
|
1807
|
+
v : feectools.linalg.basic.Vector
|
|
1808
1808
|
Vector the operator shall be applied to.
|
|
1809
1809
|
|
|
1810
|
-
out :
|
|
1810
|
+
out : feectools.linalg.basic.Vector, optional
|
|
1811
1811
|
If given, the output will be written in-place into this vector.
|
|
1812
1812
|
|
|
1813
1813
|
tol : float, optional
|
|
@@ -1821,7 +1821,7 @@ class BasisProjectionOperator(LinOpWithTransp):
|
|
|
1821
1821
|
|
|
1822
1822
|
Returns
|
|
1823
1823
|
-------
|
|
1824
|
-
out :
|
|
1824
|
+
out : feectools.linalg.basic.Vector
|
|
1825
1825
|
The output (codomain) vector.
|
|
1826
1826
|
"""
|
|
1827
1827
|
|
|
@@ -2161,7 +2161,7 @@ def prepare_projection_of_basis(V1d, W1d, starts_out, ends_out, n_quad=None, pol
|
|
|
2161
2161
|
|
|
2162
2162
|
class CoordinateProjector(LinearOperator):
|
|
2163
2163
|
r"""
|
|
2164
|
-
Class of projectors on one component of a :class:`~
|
|
2164
|
+
Class of projectors on one component of a :class:`~feectools.linalg.block.BlockVectorSpace`.
|
|
2165
2165
|
Represent the projection on the :math:`\mu`-th component :
|
|
2166
2166
|
|
|
2167
2167
|
.. math::
|
|
@@ -2265,7 +2265,7 @@ class CoordinateProjector(LinearOperator):
|
|
|
2265
2265
|
|
|
2266
2266
|
class CoordinateInclusion(LinearOperator):
|
|
2267
2267
|
r"""
|
|
2268
|
-
Class of inclusion operator from one component of a :class:`~
|
|
2268
|
+
Class of inclusion operator from one component of a :class:`~feectools.linalg.block.BlockVectorSpace`.
|
|
2269
2269
|
Represent the canonical inclusion on the :math:`\mu`-th component :
|
|
2270
2270
|
|
|
2271
2271
|
.. math::
|
|
@@ -2,11 +2,11 @@ import itertools
|
|
|
2
2
|
from abc import abstractmethod
|
|
3
3
|
|
|
4
4
|
import cunumpy as xp
|
|
5
|
-
from
|
|
6
|
-
from
|
|
7
|
-
from
|
|
8
|
-
from
|
|
9
|
-
from
|
|
5
|
+
from feectools.ddm.mpi import MockComm
|
|
6
|
+
from feectools.ddm.mpi import mpi as MPI
|
|
7
|
+
from feectools.linalg.basic import LinearOperator, Vector, VectorSpace
|
|
8
|
+
from feectools.linalg.block import BlockVectorSpace
|
|
9
|
+
from feectools.linalg.stencil import StencilVectorSpace
|
|
10
10
|
from scipy import sparse
|
|
11
11
|
|
|
12
12
|
from struphy.feec.utilities import apply_essential_bc_to_array
|
|
@@ -303,7 +303,7 @@ class BoundaryOperator(LinOpWithTransp):
|
|
|
303
303
|
|
|
304
304
|
Parameters
|
|
305
305
|
----------
|
|
306
|
-
vector_space :
|
|
306
|
+
vector_space : feectools.linalg.basic.VectorSpace
|
|
307
307
|
The vector space associated to the operator.
|
|
308
308
|
|
|
309
309
|
space_id : str
|
|
@@ -476,15 +476,15 @@ class BoundaryOperator(LinOpWithTransp):
|
|
|
476
476
|
|
|
477
477
|
Parameters
|
|
478
478
|
----------
|
|
479
|
-
v :
|
|
479
|
+
v : feectools.linalg.basic.Vector
|
|
480
480
|
The input (domain) vector.
|
|
481
481
|
|
|
482
|
-
out :
|
|
482
|
+
out : feectools.linalg.basic.Vector, optional
|
|
483
483
|
If given, the output will be written in-place into this vector.
|
|
484
484
|
|
|
485
485
|
Returns
|
|
486
486
|
-------
|
|
487
|
-
out :
|
|
487
|
+
out : feectools.linalg.basic.Vector
|
|
488
488
|
The output (codomain) vector.
|
|
489
489
|
"""
|
|
490
490
|
|