struphy 2.3.2__tar.gz → 2.3.3__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.3.2/src/struphy.egg-info → struphy-2.3.3}/PKG-INFO +7 -1
- {struphy-2.3.2 → struphy-2.3.3}/pyproject.toml +35 -2
- {struphy-2.3.2 → struphy-2.3.3}/setup.cfg +3 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/bsplines/bsplines_kernels.py +15 -11
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/console/compile.py +3 -3
- struphy-2.3.3/src/struphy/console/format.py +778 -0
- struphy-2.3.3/src/struphy/console/main.py +1079 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/console/pproc.py +18 -6
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/console/profile.py +3 -5
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/console/run.py +13 -4
- struphy-2.3.3/src/struphy/console/test.py +384 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/console/units.py +4 -5
- struphy-2.3.3/src/struphy/diagnostics/console_diagn.py +280 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/diagnostics/continuous_spectra.py +5 -6
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/diagnostics/diagn_tools.py +367 -125
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/kernels_2d.py +8 -3
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/mhd_axisymmetric_main.py +4 -5
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/mhd_axisymmetric_pproc.py +4 -5
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/examples/_draw_parallel.py +21 -11
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/feec/mass.py +889 -49
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/feec/psydac_derham.py +375 -216
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/feec/tests/test_field_init.py +529 -271
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/feec/tests/test_l2_projectors.py +45 -45
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/feec/tests/test_mass_matrices.py +137 -2
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/fields_background/mhd_equil/base.py +97 -45
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/fields_background/mhd_equil/equils.py +391 -250
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/geometry/base.py +277 -136
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/geometry/domains.py +136 -72
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/geometry/utilities.py +42 -35
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/initial/eigenfunctions.py +3 -4
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/initial/perturbations.py +98 -70
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/initial/utilities.py +3 -3
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/inp/parameters.yml +11 -7
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/inp/tutorials/params_02.yml +13 -4
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/inp/tutorials/params_05a.yml +3 -6
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/inp/tutorials/params_05b.yml +3 -6
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/inp/tutorials/params_05c.yml +3 -10
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/inp/tutorials/params_05d.yml +3 -10
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/inp/tutorials/params_05e.yml +3 -10
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/inp/tutorials/params_05f.yml +3 -10
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/inp/tutorials/params_12a.yml +3 -6
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/inp/tutorials/params_12b.yml +3 -6
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/setup.py +1 -1
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/kinetic_background/base.py +11 -9
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/kinetic_background/maxwellians.py +211 -117
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/main.py +36 -4
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/models/base.py +357 -196
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/models/fluid.py +7 -28
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/models/hybrid.py +419 -369
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/models/kinetic.py +206 -127
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/models/tests/test_hybrid_models.py +4 -4
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/models/toy.py +182 -148
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/accumulation/accum_kernels.py +583 -467
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/accumulation/particles_to_grid.py +125 -99
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/base.py +935 -318
- struphy-2.3.3/src/struphy/pic/particles.py +773 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/pushing/eval_kernels_gc.py +197 -161
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/pushing/pusher.py +103 -80
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/pushing/pusher_args_kernels.py +56 -53
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/pushing/pusher_kernels.py +764 -516
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/pushing/pusher_kernels_gc.py +915 -737
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/pushing/pusher_utilities_kernels.py +117 -142
- struphy-2.3.3/src/struphy/pic/sorting_kernels.py +85 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/tests/test_accum_vec_H1.py +66 -34
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/tests/test_accumulation.py +238 -126
- struphy-2.3.3/src/struphy/pic/tests/test_binning.py +1071 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/tests/test_draw_parallel.py +41 -28
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/tests/test_pushers.py +344 -199
- struphy-2.3.3/src/struphy/pic/tests/test_sorting.py +80 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/utilities_kernels.py +319 -182
- struphy-2.3.3/src/struphy/post_processing/orbits/orbits_kernels.py +68 -0
- struphy-2.3.3/src/struphy/post_processing/orbits/orbits_tools.py +223 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/post_processing/post_processing_tools.py +219 -111
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/post_processing/pproc_struphy.py +53 -7
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/propagators/base.py +54 -43
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/propagators/propagators_coupling.py +788 -533
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/propagators/propagators_fields.py +1927 -1241
- struphy-2.3.3/src/struphy/propagators/propagators_markers.py +1366 -0
- struphy-2.3.3/src/struphy/tutorials/tests/test_tutorials.py +175 -0
- struphy-2.3.3/src/struphy/utils/utils.py +77 -0
- {struphy-2.3.2 → struphy-2.3.3/src/struphy.egg-info}/PKG-INFO +7 -1
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy.egg-info/SOURCES.txt +9 -9
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy.egg-info/requires.txt +6 -0
- struphy-2.3.2/src/struphy/console/main.py +0 -770
- struphy-2.3.2/src/struphy/console/test.py +0 -367
- struphy-2.3.2/src/struphy/diagnostics/console_diagn.py +0 -217
- struphy-2.3.2/src/struphy/pic/particles.py +0 -551
- struphy-2.3.2/src/struphy/pic/tests/test_binning.py +0 -638
- struphy-2.3.2/src/struphy/propagators/propagators_markers.py +0 -1175
- struphy-2.3.2/src/struphy/tutorials/longer_examples/TAE_tokamak.py +0 -252
- struphy-2.3.2/src/struphy/tutorials/longer_examples/linearextendedmhd.py +0 -217
- struphy-2.3.2/src/struphy/tutorials/longer_examples/linearmhdvlasov_cc.py +0 -142
- struphy-2.3.2/src/struphy/tutorials/longer_examples/linearmhdvlasov_pc.py +0 -142
- struphy-2.3.2/src/struphy/tutorials/tests/__init__.py +0 -0
- struphy-2.3.2/src/struphy/tutorials/tests/test_tutorials.py +0 -143
- struphy-2.3.2/src/struphy/tutorials/utilities.py +0 -12
- {struphy-2.3.2 → struphy-2.3.3}/LICENSE +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/README.md +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/bsplines/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/bsplines/bsplines.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/bsplines/evaluation_kernels_1d.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/bsplines/evaluation_kernels_2d.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/bsplines/evaluation_kernels_3d.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/bsplines/shapefunc_kernels.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/bsplines/tests/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/bsplines/tests/test_bsplines_kernels.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/bsplines/tests/test_eval_spline_mpi.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/compile_struphy.mk +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/conftest.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/console/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/console/params.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/dependencies.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/diagnostics/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/diagnostics/paraview/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/diagnostics/paraview/mesh_creator.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/diagnostics/paraview/vtk_writer.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/dispersion_relations/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/dispersion_relations/analytic.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/dispersion_relations/base.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/dispersion_relations/utilities.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/derivatives.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/kernels_3d.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/kernels_projectors_global.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/kernels_projectors_global_mhd.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/MHD_eigenvalues_cylinder_1D.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/control_variates/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/control_variates/control_variate.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/control_variates/kernels_control_variate.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/control_variates/kinetic_extended/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/control_variates/kinetic_extended/fB_massless_control_variate.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/control_variates/kinetic_extended/fB_massless_kernels_control_variate.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/control_variates/kinetic_extended/fnB_massless_control_variate.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/control_variates/kinetic_extended/fnB_massless_cv_kernel_2.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/control_variates/kinetic_extended/fnB_massless_kernels_control_variate.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/control_variates/kinetic_extended/massless_control_variate.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/control_variates/kinetic_extended/massless_cvker.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/control_variates/kinetic_extended/massless_kernels_control_variate.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/emw_operators.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/inner_products_1d.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/inner_products_2d.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/inner_products_3d.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/l2_error_1d.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/l2_error_2d.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/l2_error_3d.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/mass_matrices_3d_pre.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/massless_operators/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/massless_operators/fB_arrays.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/massless_operators/fB_bb_kernel.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/massless_operators/fB_bv_kernel.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/massless_operators/fB_massless_linear_operators.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/massless_operators/fB_vv_kernel.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/mhd_operators_MF.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/projectors_local/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/projectors_local/pro_local/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/projectors_local/pro_local/kernels_projectors_local.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/projectors_local/pro_local/kernels_projectors_local_mhd.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/projectors_local/pro_local/mhd_operators_3d_local.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/projectors_local/pro_local/projectors_local.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/projectors_local/shape_pro_local/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/projectors_local/shape_pro_local/shape_L2_projector_kernel.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/projectors_local/shape_pro_local/shape_function_projectors_L2.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/projectors_local/shape_pro_local/shape_function_projectors_local.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/legacy/projectors_local/shape_pro_local/shape_local_projector_kernel.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/mass_matrices_1d.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/mass_matrices_2d.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/mass_matrices_3d.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/mhd_operators.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/mhd_operators_core.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/projectors_global.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/spline_space.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/eigenvalue_solvers/tests/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/feec/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/feec/banded_to_stencil_kernels.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/feec/basis_projection_kernels.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/feec/basis_projection_ops.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/feec/linear_operators.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/feec/mass_kernels.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/feec/preconditioner.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/feec/projectors.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/feec/tests/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/feec/tests/test_basis_ops.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/feec/tests/test_derham.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/feec/tests/test_eval_field.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/feec/tests/test_local_projectors.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/feec/tests/test_lowdim_nel_is_1.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/feec/tests/test_toarray_struphy.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/feec/tests/test_tosparse_struphy.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/feec/tests/xx_test_preconds.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/feec/utilities.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/feec/utilities_kernels.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/feec/variational_utilities.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/fields_background/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/fields_background/braginskii_equil/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/fields_background/braginskii_equil/base.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/fields_background/braginskii_equil/equils.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/fields_background/mhd_equil/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/fields_background/mhd_equil/eqdsk/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/fields_background/mhd_equil/eqdsk/data/AUGNLED_g031213.00830.high +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/fields_background/mhd_equil/eqdsk/data/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/fields_background/mhd_equil/eqdsk/readeqdsk.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/fields_background/mhd_equil/gvec/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/fields_background/mhd_equil/gvec/ellipstell_v2/newBC_E1D6_M6N6/GVEC_ELLIPSTELL_V2_State_0000_00200000.dat +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/fields_background/mhd_equil/gvec/ellipstell_v2/newBC_E1D6_M6N6/parameter.ini +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/fields_background/mhd_equil/gvec/ellipstell_v2/newBC_E4D6_M6N6/GVEC_ELLIPSTELL_V2_State_0000_00200000.dat +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/fields_background/mhd_equil/gvec/ellipstell_v2/newBC_E4D6_M6N6/parameter.ini +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/fields_background/mhd_equil/gvec/ellipstell_v2/oldBC_E40D5M6N6/GVEC_ELLIPSTELL_V2_State_0000_00200000.dat +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/fields_background/mhd_equil/gvec/ellipstell_v2/oldBC_E40D5M6N6/parameter.ini +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/fields_background/mhd_equil/gvec/output/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/fields_background/mhd_equil/gvec/output/vtk/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/fields_background/mhd_equil/projected_equils.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/fields_background/mhd_equil/vmec/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/fields_background/tests/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/fields_background/tests/test_desc_equil.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/fields_background/tests/test_gvec_equil.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/fields_background/tests/test_mhd_equils.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/fields_background/tests/test_numerical_mhd_equil.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/geometry/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/geometry/evaluation_kernels.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/geometry/map_coef/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/geometry/mappings_kernels.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/geometry/tests/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/geometry/tests/test_domain.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/geometry/transform_kernels.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/geometry/utilities_kernels.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/initial/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/initial/tests/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/initial/tests/test_init_perturbations.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/batch/batch_cobra.sh +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/batch/p_016.sh +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/batch/p_032.sh +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/batch/p_064.sh +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/batch/p_128.sh +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/batch/p_256.sh +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/batch/p_512.sh +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/inp/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/inp/longer_examples/params_TAE_tokamak.yml +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/inp/longer_examples/params_hybridmhdvlasovcc.yml +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/inp/longer_examples/params_hybridmhdvlasovpc.yml +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/inp/longer_examples/params_linearextendedmhd.yml +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/inp/longer_examples/params_linvlasovmaxwell_landau.yml +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/inp/longer_examples/params_linvlasovmaxwell_streaming_weibel.yml +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/inp/longer_examples/params_linvlasovmaxwell_weibel.yml +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/inp/tutorials/params_03.yml +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/inp/tutorials/params_04a.yml +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/inp/tutorials/params_04b.yml +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/inp/tutorials/params_04c.yml +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/out/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/io/output_handling.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/kinetic_background/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/kinetic_background/tests/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/kinetic_background/tests/test_base.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/kinetic_background/tests/test_maxwellians.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/linear_algebra/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/linear_algebra/linalg_kernels.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/linear_algebra/linalg_kron.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/linear_algebra/schur_solver.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/linear_algebra/stencil_dot_kernels.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/linear_algebra/stencil_transpose_kernels.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/linear_algebra/tests/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/linear_algebra/tests/test_stencil_dot_kernels.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/linear_algebra/tests/test_stencil_transpose_kernels.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/models/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/models/tests/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/models/tests/test_fluid_models.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/models/tests/test_kinetic_models.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/models/tests/test_toy_models.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/models/tests/test_xxpproc.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/models/tests/util.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/accumulation/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/accumulation/accum_kernels_gc.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/accumulation/filler_kernels.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/accumulation/filter_kernels.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/accumulation/particle_to_mat_kernels.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/pushing/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/sampling_kernels.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/sobol_seq.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/tests/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/tests/test_mat_vec_filler.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/tests/test_pic_legacy_files/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/tests/test_pic_legacy_files/accumulation.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/tests/test_pic_legacy_files/accumulation_kernels_3d.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/tests/test_pic_legacy_files/mappings_3d.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/tests/test_pic_legacy_files/mappings_3d_fast.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/tests/test_pic_legacy_files/pusher.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/tests/test_pic_legacy_files/pusher_pos.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/tests/test_pic_legacy_files/pusher_vel_2d.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/tests/test_pic_legacy_files/pusher_vel_3d.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/tests/test_pic_legacy_files/spline_evaluation_2d.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/tests/test_pic_legacy_files/spline_evaluation_3d.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/pic/utilities.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/polar/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/polar/basic.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/polar/extraction_operators.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/polar/linear_operators.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/polar/tests/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/polar/tests/test_legacy_polar_splines.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/polar/tests/test_polar.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/post_processing/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/post_processing/cprofile_analyser.py +0 -0
- {struphy-2.3.2/src/struphy/post_processing/tests → struphy-2.3.3/src/struphy/post_processing/orbits}/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/post_processing/profile_struphy.py +0 -0
- {struphy-2.3.2/src/struphy/profiling → struphy-2.3.3/src/struphy/post_processing/tests}/__init__.py +0 -0
- {struphy-2.3.2/src/struphy/propagators → struphy-2.3.3/src/struphy/profiling}/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/profiling/profiling.py +0 -0
- {struphy-2.3.2/src/struphy/propagators/tests → struphy-2.3.3/src/struphy/propagators}/__init__.py +0 -0
- {struphy-2.3.2/src/struphy/tutorials → struphy-2.3.3/src/struphy/propagators/tests}/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/propagators/tests/test_gyrokinetic_poisson.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/propagators/tests/test_poisson.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy/psydac-0.1.13-py3-none-any.whl +0 -0
- {struphy-2.3.2/src/struphy/tutorials/longer_examples → struphy-2.3.3/src/struphy/utils}/__init__.py +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy.egg-info/dependency_links.txt +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy.egg-info/entry_points.txt +0 -0
- {struphy-2.3.2 → struphy-2.3.3}/src/struphy.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: struphy
|
|
3
|
-
Version: 2.3.
|
|
3
|
+
Version: 2.3.3
|
|
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, eric.sonnendruecker@ipp.mpg.de
|
|
@@ -31,12 +31,16 @@ Requires-Python: <3.12,>=3.10
|
|
|
31
31
|
Description-Content-Type: text/markdown
|
|
32
32
|
License-File: LICENSE
|
|
33
33
|
Requires-Dist: PyYAML==6.0.1
|
|
34
|
+
Requires-Dist: add-trailing-comma==3.1.0
|
|
34
35
|
Requires-Dist: argcomplete==3.4.0
|
|
36
|
+
Requires-Dist: autopep8==2.3.1
|
|
35
37
|
Requires-Dist: desc-opt==0.12.0
|
|
36
38
|
Requires-Dist: docutils==0.21.2
|
|
39
|
+
Requires-Dist: flake8==7.1.1
|
|
37
40
|
Requires-Dist: gvec-to-python==1.2.2
|
|
38
41
|
Requires-Dist: h5py==3.11.0
|
|
39
42
|
Requires-Dist: ipyparallel==8.8.0
|
|
43
|
+
Requires-Dist: isort==5.13.2
|
|
40
44
|
Requires-Dist: lxml_html_clean==0.1.1
|
|
41
45
|
Requires-Dist: m2r2==0.3.3.post2
|
|
42
46
|
Requires-Dist: matplotlib==3.9.0
|
|
@@ -47,8 +51,10 @@ Requires-Dist: nbsphinx==0.9.4
|
|
|
47
51
|
Requires-Dist: netCDF4==1.6.5
|
|
48
52
|
Requires-Dist: notebook==7.2.1
|
|
49
53
|
Requires-Dist: numpy==1.24.4
|
|
54
|
+
Requires-Dist: pre_commit==4.0.1
|
|
50
55
|
Requires-Dist: pyccel==1.12.1
|
|
51
56
|
Requires-Dist: pydata-sphinx-theme==0.15.3
|
|
57
|
+
Requires-Dist: pylint==3.3.1
|
|
52
58
|
Requires-Dist: pytest==8.2.2
|
|
53
59
|
Requires-Dist: pytest-monitor==1.6.6
|
|
54
60
|
Requires-Dist: pytest-mpi==0.6
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "struphy"
|
|
7
|
-
version = "2.3.
|
|
7
|
+
version = "2.3.3"
|
|
8
8
|
readme = "README.md"
|
|
9
9
|
requires-python = ">=3.10, <3.12"
|
|
10
10
|
license = {file = "LICENSE"}
|
|
@@ -20,12 +20,16 @@ classifiers = [
|
|
|
20
20
|
]
|
|
21
21
|
dependencies = [
|
|
22
22
|
'PyYAML==6.0.1',
|
|
23
|
+
'add-trailing-comma==3.1.0',
|
|
23
24
|
'argcomplete==3.4.0',
|
|
25
|
+
'autopep8==2.3.1',
|
|
24
26
|
'desc-opt==0.12.0',
|
|
25
27
|
'docutils==0.21.2',
|
|
28
|
+
'flake8==7.1.1',
|
|
26
29
|
'gvec-to-python==1.2.2',
|
|
27
30
|
'h5py==3.11.0',
|
|
28
31
|
'ipyparallel==8.8.0',
|
|
32
|
+
'isort==5.13.2',
|
|
29
33
|
'lxml_html_clean==0.1.1',
|
|
30
34
|
'm2r2==0.3.3.post2',
|
|
31
35
|
'matplotlib==3.9.0',
|
|
@@ -36,8 +40,10 @@ dependencies = [
|
|
|
36
40
|
'netCDF4==1.6.5',
|
|
37
41
|
'notebook==7.2.1',
|
|
38
42
|
'numpy==1.24.4',
|
|
43
|
+
'pre_commit==4.0.1',
|
|
39
44
|
'pyccel==1.12.1',
|
|
40
45
|
'pydata-sphinx-theme==0.15.3',
|
|
46
|
+
'pylint==3.3.1',
|
|
41
47
|
'pytest==8.2.2',
|
|
42
48
|
'pytest-monitor==1.6.6',
|
|
43
49
|
'pytest-mpi==0.6',
|
|
@@ -83,4 +89,31 @@ struphy = "struphy.console.main:struphy"
|
|
|
83
89
|
|
|
84
90
|
struphy = ['compile_struphy.mk',
|
|
85
91
|
'psydac-0.1.13-py3-none-any.whl',
|
|
86
|
-
]
|
|
92
|
+
]
|
|
93
|
+
|
|
94
|
+
[tool.autopep8]
|
|
95
|
+
# Add specific settings for autopep8
|
|
96
|
+
max_line_length = 120
|
|
97
|
+
ignore = ["E221,E226,E203,E265,E731,E711"]
|
|
98
|
+
# Descriptions of error codes: https://www.flake8rules.com/
|
|
99
|
+
# E201 – Whitespace after (, [ or {
|
|
100
|
+
# E202 – Whitespace before (, [ or {
|
|
101
|
+
# E221 – Multiple spaces before operator
|
|
102
|
+
# E226 – Missing whitespace around arithmetic operators
|
|
103
|
+
# E265 - Block comment should start with '# '
|
|
104
|
+
# E266 – Too many leading # for block comment
|
|
105
|
+
# E731 – Do not assign a lambda expression
|
|
106
|
+
# E203 – Whitespace before : (used in slicing)
|
|
107
|
+
# E711 - Ignore enforcing 'is not None' over '!= None'
|
|
108
|
+
|
|
109
|
+
[tool.isort]
|
|
110
|
+
# Configuration for isort
|
|
111
|
+
profile = "black" # Using the Black profile to match formatting styles
|
|
112
|
+
line_length = 120
|
|
113
|
+
multi_line_output = 3 # Control how isort wraps imports
|
|
114
|
+
include_trailing_comma = true
|
|
115
|
+
force_grid_wrap = 0
|
|
116
|
+
combine_as_imports = true
|
|
117
|
+
|
|
118
|
+
[tool.pylint]
|
|
119
|
+
max-line-length=120
|
|
@@ -3,9 +3,8 @@
|
|
|
3
3
|
"""
|
|
4
4
|
Basic functions for point-wise B-spline evaluation
|
|
5
5
|
"""
|
|
6
|
-
from pyccel.decorators import pure, stack_array
|
|
7
|
-
|
|
8
6
|
from numpy import empty, zeros
|
|
7
|
+
from pyccel.decorators import pure, stack_array
|
|
9
8
|
|
|
10
9
|
|
|
11
10
|
@pure
|
|
@@ -256,8 +255,9 @@ def basis_funs_all_ders(knots: 'float[:]', degree: int, eta: float, span: int, l
|
|
|
256
255
|
d = a[s2, 0] * ndu[rk, pk]
|
|
257
256
|
j1 = 1 if (rk > -1) else -rk
|
|
258
257
|
j2 = k-1 if (r-1 <= pk) else degree-r
|
|
259
|
-
a[s2, j1:j2+1] = (
|
|
260
|
-
|
|
258
|
+
a[s2, j1:j2+1] = (
|
|
259
|
+
a[s1, j1:j2+1] - a[s1, j1-1:j2]
|
|
260
|
+
) * ndu[pk+1, rk+j1:rk+j2+1]
|
|
261
261
|
for l in range(j2 + 1 - j1):
|
|
262
262
|
d += a[s2, j1 + l] * ndu[rk + j1 + l, pk]
|
|
263
263
|
#d += dot(a[s2, j1:j2+1], ndu[rk+j1:rk+j2+1, pk])
|
|
@@ -375,8 +375,10 @@ def d_splines_slim(tn: 'float[:]', pn: 'int', eta: 'float', span: 'int', values:
|
|
|
375
375
|
|
|
376
376
|
# compute D-splines values by scaling
|
|
377
377
|
for il in range(pd + 1):
|
|
378
|
-
values[pd - il] = pn/(
|
|
379
|
-
|
|
378
|
+
values[pd - il] = pn/(
|
|
379
|
+
tn[span - il + pn] -
|
|
380
|
+
tn[span - il]
|
|
381
|
+
) * b_values[pd - il]
|
|
380
382
|
|
|
381
383
|
|
|
382
384
|
@pure
|
|
@@ -427,8 +429,10 @@ def b_d_splines_slim(tn: 'float[:]', pn: 'int', eta: 'float', span: 'int', bn: '
|
|
|
427
429
|
if j == pn-1:
|
|
428
430
|
# compute D-splines values by scaling B-splines of degree pn-1
|
|
429
431
|
for il in range(pd + 1):
|
|
430
|
-
bd[pd - il] = pn/(
|
|
431
|
-
|
|
432
|
+
bd[pd - il] = pn/(
|
|
433
|
+
tn[span - il + pn] -
|
|
434
|
+
tn[span - il]
|
|
435
|
+
) * bn[pd - il]
|
|
432
436
|
|
|
433
437
|
for r in range(j + 1):
|
|
434
438
|
temp = bn[r]/(right[r] + left[j - r])
|
|
@@ -656,7 +660,7 @@ def b_spl_1st_der_slim(t: 'float[:]', p: 'int', eta: 'float', span: 'int', value
|
|
|
656
660
|
def piecewise(p: 'int', delta: 'float', eta: 'float') -> 'float':
|
|
657
661
|
r"""
|
|
658
662
|
evaluate a hat function (B-spline) centered at eta0 (the center of the support) at eta1, i.e.
|
|
659
|
-
|
|
663
|
+
|
|
660
664
|
.. math::
|
|
661
665
|
1.0 / delta * S((eta1 - eta0)/ delta)
|
|
662
666
|
|
|
@@ -753,7 +757,7 @@ def piecewise_der(p: 'int', delta: 'float', eta: 'float') -> 'float':
|
|
|
753
757
|
def convolution(p: 'int', grids: 'float[:]', eta: 'float') -> 'float':
|
|
754
758
|
r"""
|
|
755
759
|
evaluate a hat function (B-spline) at eta, i.e.
|
|
756
|
-
|
|
760
|
+
|
|
757
761
|
.. math::
|
|
758
762
|
1.0 / delta * S(eta/ delta)
|
|
759
763
|
|
|
@@ -808,7 +812,7 @@ def convolution(p: 'int', grids: 'float[:]', eta: 'float') -> 'float':
|
|
|
808
812
|
def convolution_der(p: 'int', grids: 'float[:]', eta: 'float') -> 'float':
|
|
809
813
|
r"""
|
|
810
814
|
evaluate the derivative of a hat function (B-spline) at eta, i.e.
|
|
811
|
-
|
|
815
|
+
|
|
812
816
|
.. math::
|
|
813
817
|
1.0 / delta^2 * S'(eta/ delta)
|
|
814
818
|
|
|
@@ -39,6 +39,7 @@ def struphy_compile(language, compiler, omp_pic, omp_feec, delete, status, verbo
|
|
|
39
39
|
import pyccel
|
|
40
40
|
import yaml
|
|
41
41
|
import sysconfig
|
|
42
|
+
import struphy.utils.utils as utils
|
|
42
43
|
import struphy.dependencies as depmod
|
|
43
44
|
|
|
44
45
|
libpath = struphy.__path__[0]
|
|
@@ -49,9 +50,8 @@ def struphy_compile(language, compiler, omp_pic, omp_feec, delete, status, verbo
|
|
|
49
50
|
raise NameError(
|
|
50
51
|
f'Stuphy installation path MUST NOT contain blank spaces. Please rename "{libpath}".')
|
|
51
52
|
|
|
52
|
-
# struphy state
|
|
53
|
-
|
|
54
|
-
state = yaml.load(f, Loader=yaml.FullLoader)
|
|
53
|
+
# Read struphy state file
|
|
54
|
+
state = utils.read_state()
|
|
55
55
|
|
|
56
56
|
# collect kernels
|
|
57
57
|
if 'kernels' not in state:
|