radia 1.3.1__tar.gz → 1.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.
Files changed (207) hide show
  1. {radia-1.3.1 → radia-1.3.3}/COPYRIGHT.txt +15 -15
  2. {radia-1.3.1/src/radia.egg-info → radia-1.3.3}/PKG-INFO +16 -16
  3. {radia-1.3.1 → radia-1.3.3}/README.md +344 -344
  4. {radia-1.3.1 → radia-1.3.3}/docs/API_EXTENSIONS.md +689 -689
  5. {radia-1.3.1 → radia-1.3.3}/docs/API_REFERENCE.md +967 -967
  6. {radia-1.3.1 → radia-1.3.3}/docs/CF_BACKGROUND_FIELD_IMPLEMENTATION.md +423 -423
  7. {radia-1.3.1 → radia-1.3.3}/docs/HMATRIX_BENCHMARKS_RESULTS.md +219 -219
  8. {radia-1.3.1 → radia-1.3.3}/docs/HMATRIX_ENHANCEMENT_PROPOSAL_2025.md +600 -600
  9. {radia-1.3.1 → radia-1.3.3}/docs/HMATRIX_IMPLEMENTATION_HISTORY.md +377 -377
  10. {radia-1.3.1 → radia-1.3.3}/docs/HMATRIX_SERIALIZATION.md +358 -358
  11. {radia-1.3.1 → radia-1.3.3}/docs/HMATRIX_USER_GUIDE.md +643 -559
  12. {radia-1.3.1 → radia-1.3.3}/docs/MATERIAL_API_IMPLEMENTATION.md +290 -290
  13. {radia-1.3.1 → radia-1.3.3}/docs/ML_PARAMETER_TUNING.md +328 -328
  14. {radia-1.3.1 → radia-1.3.3}/docs/NGSOLVE_CF_BACKGROUND_FIELD_DESIGN.md +665 -665
  15. {radia-1.3.1 → radia-1.3.3}/docs/NGSOLVE_INTEGRATION.md +286 -259
  16. {radia-1.3.1 → radia-1.3.3}/docs/NGSOLVE_USAGE_GUIDE.md +284 -248
  17. {radia-1.3.1 → radia-1.3.3}/docs/README.md +5 -0
  18. {radia-1.3.1 → radia-1.3.3}/docs/hmatrix_field_design.md +249 -249
  19. {radia-1.3.1 → radia-1.3.3}/docs/scripts/README.md +89 -89
  20. {radia-1.3.1 → radia-1.3.3}/examples/NGSolve_Integration/HMATRIX_ANALYSIS.md +208 -208
  21. {radia-1.3.1 → radia-1.3.3}/examples/NGSolve_Integration/HMATRIX_FIELD_EVALUATION_ISSUE.md +275 -275
  22. {radia-1.3.1 → radia-1.3.3}/examples/NGSolve_Integration/H_MATRIX_PARALLEL_OPTIMIZATION.md +417 -417
  23. {radia-1.3.1 → radia-1.3.3}/examples/NGSolve_Integration/NGBEM_ANALYSIS.md +460 -460
  24. {radia-1.3.1 → radia-1.3.3}/examples/NGSolve_Integration/NGSOLVE_SET_VS_INTERPOLATE.md +594 -594
  25. {radia-1.3.1 → radia-1.3.3}/examples/NGSolve_Integration/PROPOSAL_VECTORIZED_API.md +170 -170
  26. {radia-1.3.1 → radia-1.3.3}/examples/NGSolve_Integration/README.md +552 -365
  27. {radia-1.3.1 → radia-1.3.3}/examples/NGSolve_Integration/SET_VS_INTERPOLATE_SIMPLE.md +602 -602
  28. {radia-1.3.1 → radia-1.3.3}/examples/NGSolve_Integration/SOLVER_OPTIMIZATION_PROPOSAL.md +530 -530
  29. {radia-1.3.1 → radia-1.3.3}/examples/NGSolve_Integration/benchmark_gridfunction_set.py +282 -282
  30. {radia-1.3.1 → radia-1.3.3}/examples/NGSolve_Integration/demo_batch_evaluation.py +2 -2
  31. {radia-1.3.1 → radia-1.3.3}/examples/NGSolve_Integration/demo_field_types.py +197 -197
  32. {radia-1.3.1 → radia-1.3.3}/examples/NGSolve_Integration/example_hmatrix_cache_usage.py +249 -249
  33. {radia-1.3.1 → radia-1.3.3}/examples/NGSolve_Integration/test_batch_evaluation.py +143 -143
  34. {radia-1.3.1 → radia-1.3.3}/examples/NGSolve_Integration/test_batch_fld.py +138 -138
  35. {radia-1.3.1 → radia-1.3.3}/examples/NGSolve_Integration/test_coordinate_transform.py +252 -252
  36. {radia-1.3.1 → radia-1.3.3}/examples/NGSolve_Integration/test_gridfunction_simple.py +72 -72
  37. {radia-1.3.1 → radia-1.3.3}/examples/NGSolve_Integration/test_mesh_convergence.py +156 -156
  38. {radia-1.3.1 → radia-1.3.3}/examples/NGSolve_Integration/test_set_vs_interpolate.py +158 -158
  39. {radia-1.3.1 → radia-1.3.3}/examples/NGSolve_Integration/verify_curl_A_equals_B.py +352 -352
  40. {radia-1.3.1 → radia-1.3.3}/examples/NGSolve_Integration/visualize_field.py +267 -267
  41. {radia-1.3.1 → radia-1.3.3}/examples/README.md +504 -504
  42. {radia-1.3.1 → radia-1.3.3}/examples/background_fields/README.md +1 -1
  43. {radia-1.3.1 → radia-1.3.3}/examples/complex_coil_geometry/README.md +374 -374
  44. {radia-1.3.1 → radia-1.3.3}/examples/complex_coil_geometry/coil_model.py +159 -159
  45. {radia-1.3.1 → radia-1.3.3}/examples/complex_coil_geometry/field_map.py +272 -272
  46. {radia-1.3.1 → radia-1.3.3}/examples/complex_coil_geometry/visualize_coils.py +156 -156
  47. {radia-1.3.1 → radia-1.3.3}/examples/electromagnet/README.md +436 -436
  48. {radia-1.3.1 → radia-1.3.3}/examples/electromagnet/magnet.py +232 -232
  49. {radia-1.3.1 → radia-1.3.3}/examples/electromagnet/racetrack_coil_model.py +187 -187
  50. {radia-1.3.1 → radia-1.3.3}/examples/electromagnet/yoke_model.py +252 -252
  51. {radia-1.3.1 → radia-1.3.3}/examples/simple_problems/arc_current_dual_magnets.py +82 -82
  52. {radia-1.3.1 → radia-1.3.3}/examples/simple_problems/arc_current_with_magnet.py +78 -78
  53. {radia-1.3.1 → radia-1.3.3}/examples/simple_problems/chamfered_pole_piece.py +141 -141
  54. {radia-1.3.1 → radia-1.3.3}/examples/simple_problems/compare_magpylib.py +260 -260
  55. {radia-1.3.1 → radia-1.3.3}/examples/simple_problems/cubic_polyhedron_magnet.py +140 -140
  56. {radia-1.3.1 → radia-1.3.3}/examples/simple_problems/hmatrix_update_magnetization.py +108 -108
  57. {radia-1.3.1 → radia-1.3.3}/examples/smco_magnet_array/README.md +282 -282
  58. {radia-1.3.1 → radia-1.3.3}/examples/smco_magnet_array/smco_array.py +404 -404
  59. {radia-1.3.1 → radia-1.3.3}/examples/solver_benchmarks/BENCHMARK_RESULTS.md +213 -213
  60. {radia-1.3.1 → radia-1.3.3}/examples/solver_benchmarks/HMATRIX_FIELD_DESIGN.md +852 -852
  61. {radia-1.3.1 → radia-1.3.3}/examples/solver_benchmarks/HMATRIX_FIELD_DESIGN_SIMPLIFIED.md +859 -859
  62. {radia-1.3.1 → radia-1.3.3}/examples/solver_benchmarks/PHASE2B_REEVALUATION.md +179 -179
  63. {radia-1.3.1 → radia-1.3.3}/examples/solver_benchmarks/README.md +313 -313
  64. {radia-1.3.1 → radia-1.3.3}/examples/solver_benchmarks/SCALING_RESULTS.md +233 -233
  65. {radia-1.3.1 → radia-1.3.3}/examples/solver_benchmarks/benchmark_field_evaluation.py +252 -252
  66. {radia-1.3.1 → radia-1.3.3}/examples/solver_benchmarks/benchmark_hmatrix_field.py +120 -120
  67. {radia-1.3.1 → radia-1.3.3}/examples/solver_benchmarks/benchmark_hmatrix_scaling_exact.py +312 -312
  68. {radia-1.3.1 → radia-1.3.3}/examples/solver_benchmarks/benchmark_large_scale_comparison.py +532 -532
  69. {radia-1.3.1 → radia-1.3.3}/examples/solver_benchmarks/benchmark_linear_material.py +178 -178
  70. {radia-1.3.1 → radia-1.3.3}/examples/solver_benchmarks/benchmark_matrix_construction.py +161 -161
  71. {radia-1.3.1 → radia-1.3.3}/examples/solver_benchmarks/benchmark_parallel_construction.py +221 -221
  72. {radia-1.3.1 → radia-1.3.3}/examples/solver_benchmarks/benchmark_solver.py +252 -248
  73. {radia-1.3.1 → radia-1.3.3}/examples/solver_benchmarks/benchmark_solver_comparison.py +425 -425
  74. {radia-1.3.1 → radia-1.3.3}/examples/solver_benchmarks/benchmark_solver_methods.py +264 -264
  75. {radia-1.3.1 → radia-1.3.3}/examples/solver_benchmarks/benchmark_solver_scaling.py +250 -250
  76. {radia-1.3.1 → radia-1.3.3}/examples/solver_benchmarks/benchmark_solver_scaling_extended.py +277 -277
  77. {radia-1.3.1 → radia-1.3.3}/examples/solver_benchmarks/plot_benchmark_results.py +224 -224
  78. {radia-1.3.1 → radia-1.3.3}/examples/solver_benchmarks/run_all_benchmarks.py +110 -110
  79. {radia-1.3.1 → radia-1.3.3}/examples/solver_benchmarks/run_all_hmatrix_benchmarks.py +114 -114
  80. {radia-1.3.1 → radia-1.3.3}/examples/solver_benchmarks/verify_field_accuracy.py +206 -206
  81. {radia-1.3.1 → radia-1.3.3}/pyproject.toml +1 -1
  82. {radia-1.3.1 → radia-1.3.3}/src/python/rad_ngsolve.pyd +0 -0
  83. {radia-1.3.1 → radia-1.3.3/src/radia.egg-info}/PKG-INFO +16 -16
  84. {radia-1.3.1 → radia-1.3.3}/src/radia.egg-info/SOURCES.txt +14 -8
  85. {radia-1.3.1 → radia-1.3.3}/tests/README.md +343 -343
  86. {radia-1.3.1 → radia-1.3.3}/tests/__init__.py +27 -27
  87. {radia-1.3.1 → radia-1.3.3}/tests/benchmark_hmatrix.py +303 -303
  88. {radia-1.3.1 → radia-1.3.3}/tests/benchmarks/benchmark_correct.py +243 -243
  89. {radia-1.3.1 → radia-1.3.3}/tests/benchmarks/benchmark_heavy.py +181 -181
  90. {radia-1.3.1 → radia-1.3.3}/tests/benchmarks/benchmark_openmp.py +248 -248
  91. {radia-1.3.1 → radia-1.3.3}/tests/benchmarks/benchmark_threads.py +141 -141
  92. {radia-1.3.1 → radia-1.3.3}/tests/conftest.py +62 -62
  93. {radia-1.3.1 → radia-1.3.3}/tests/hmatrix/test_phase2a_final.py +136 -136
  94. {radia-1.3.1 → radia-1.3.3}/tests/hmatrix/test_phase2a_hmatrix_reuse.py +181 -181
  95. {radia-1.3.1 → radia-1.3.3}/tests/hmatrix/test_phase2a_with_field.py +125 -125
  96. {radia-1.3.1 → radia-1.3.3}/tests/hmatrix/test_phase2b_geometry_detection.py +182 -182
  97. {radia-1.3.1 → radia-1.3.3}/tests/hmatrix/test_phase3_magnetization_update.py +207 -207
  98. {radia-1.3.1 → radia-1.3.3}/tests/hmatrix/test_phase3b_large_problem.py +243 -243
  99. {radia-1.3.1 → radia-1.3.3}/tests/hmatrix/test_phase3b_serialization.py +223 -223
  100. {radia-1.3.1 → radia-1.3.3}/tests/hmatrix/test_phase3b_solver_cache.py +235 -235
  101. {radia-1.3.1 → radia-1.3.3}/tests/hmatrix/test_serialize_step1_build.py +43 -43
  102. {radia-1.3.1 → radia-1.3.3}/tests/hmatrix/test_serialize_step2_load.py +44 -44
  103. {radia-1.3.1 → radia-1.3.3}/tests/hmatrix/test_verify_field_simple.py +93 -93
  104. {radia-1.3.1 → radia-1.3.3}/tests/profile_batch_performance.py +222 -222
  105. {radia-1.3.1 → radia-1.3.3}/tests/test_advanced.py +249 -249
  106. {radia-1.3.1 → radia-1.3.3}/tests/test_all_spaces.py +2 -2
  107. {radia-1.3.1 → radia-1.3.3}/tests/test_batch_evaluation.py +176 -176
  108. {radia-1.3.1 → radia-1.3.3}/tests/test_cf_direct.py +2 -2
  109. {radia-1.3.1 → radia-1.3.3}/tests/test_convergence_hdiv.py +3 -3
  110. {radia-1.3.1 → radia-1.3.3}/tests/test_curlA_equals_B.py +294 -294
  111. {radia-1.3.1 → radia-1.3.3}/tests/test_curl_A_detailed.py +3 -3
  112. {radia-1.3.1 → radia-1.3.3}/tests/test_far_field_accuracy.py +2 -2
  113. {radia-1.3.1 → radia-1.3.3}/tests/test_fast_preparecache.py +167 -167
  114. {radia-1.3.1 → radia-1.3.3}/tests/test_fast_simple.py +79 -79
  115. {radia-1.3.1 → radia-1.3.3}/tests/test_group_operations.py +239 -239
  116. {radia-1.3.1 → radia-1.3.3}/tests/test_hcurl_vs_hdiv.py +3 -3
  117. {radia-1.3.1 → radia-1.3.3}/tests/test_hmatrix_cache.py +256 -256
  118. {radia-1.3.1 → radia-1.3.3}/tests/test_hmatrix_cache_simple.py +188 -188
  119. {radia-1.3.1 → radia-1.3.3}/tests/test_l2_norm_debug.py +2 -2
  120. {radia-1.3.1 → radia-1.3.3}/tests/test_magpylib_comparison.py +255 -255
  121. {radia-1.3.1 → radia-1.3.3}/tests/test_materials.py +168 -168
  122. radia-1.3.3/tests/test_memory_allocation_tracking.py +70 -0
  123. {radia-1.3.1 → radia-1.3.3}/tests/test_minimal_cached.py +57 -57
  124. radia-1.3.3/tests/test_moving_magnet_memory.py +250 -0
  125. radia-1.3.3/tests/test_moving_magnet_memory_diagnosis.py +217 -0
  126. {radia-1.3.1 → radia-1.3.3}/tests/test_new_material_api.py +96 -96
  127. radia-1.3.3/tests/test_ngsolve_gridfunction_memory.py +121 -0
  128. radia-1.3.3/tests/test_ngsolve_reuse_gridfunction.py +91 -0
  129. {radia-1.3.1 → radia-1.3.3}/tests/test_order1.py +2 -2
  130. {radia-1.3.1 → radia-1.3.3}/tests/test_parallel_performance.py +201 -201
  131. {radia-1.3.1 → radia-1.3.3}/tests/test_preparecache_performance.py +111 -111
  132. radia-1.3.3/tests/test_process_memory.py +77 -0
  133. {radia-1.3.1 → radia-1.3.3}/tests/test_python_cached_field.py +200 -200
  134. {radia-1.3.1 → radia-1.3.3}/tests/test_rad_ngsolve.py +214 -214
  135. {radia-1.3.1 → radia-1.3.3}/tests/test_rad_ngsolve_diagnostic.py +2 -2
  136. {radia-1.3.1 → radia-1.3.3}/tests/test_rad_ngsolve_function.py +2 -2
  137. {radia-1.3.1 → radia-1.3.3}/tests/test_rad_ngsolve_hmatrix.py +226 -226
  138. {radia-1.3.1 → radia-1.3.3}/tests/test_radhmat.py +197 -197
  139. {radia-1.3.1 → radia-1.3.3}/tests/test_radia.py +226 -226
  140. radia-1.3.3/tests/test_radia_core_memory.py +110 -0
  141. radia-1.3.3/tests/test_radia_field_computation_memory.py +158 -0
  142. radia-1.3.3/tests/test_radia_ngsolve_longrun.py +120 -0
  143. radia-1.3.3/tests/test_radia_ngsolve_memory_leak.py +130 -0
  144. radia-1.3.3/tests/test_radia_ngsolve_with_cache.py +135 -0
  145. radia-1.3.3/tests/test_radia_only_memory.py +206 -0
  146. {radia-1.3.1 → radia-1.3.3}/tests/test_serialization.py +265 -265
  147. {radia-1.3.1 → radia-1.3.3}/tests/test_set_vs_interpolate.py +3 -3
  148. {radia-1.3.1 → radia-1.3.3}/tests/test_simple.py +78 -78
  149. radia-1.3.3/tests/test_simple_fld_leak.py +55 -0
  150. {radia-1.3.1 → radia-1.3.3}/tests/test_square_coil_analytical.py +243 -243
  151. {radia-1.3.1 → radia-1.3.3}/tests/test_transformations.py +302 -302
  152. {radia-1.3.1 → radia-1.3.3}/tests/test_type_cast.py +144 -144
  153. radia-1.3.3/tests/test_unit_conversion_verify.py +126 -0
  154. {radia-1.3.1 → radia-1.3.3}/tests/test_update_hmatrix_magnetization.py +86 -86
  155. {radia-1.3.1 → radia-1.3.3}/tests/test_utils.py +82 -82
  156. {radia-1.3.1 → radia-1.3.3}/tests/test_vector_potential.py +89 -89
  157. {radia-1.3.1 → radia-1.3.3}/tests/test_without_B_projection.py +3 -3
  158. {radia-1.3.1 → radia-1.3.3}/tests/test_without_gridfunction.py +2 -2
  159. {radia-1.3.1 → radia-1.3.3}/tests/verify_curl_A_equals_B.py +3 -3
  160. radia-1.3.1/docs/BATCH_EVALUATION_BOTTLENECK_FINAL_ANALYSIS.md +0 -214
  161. radia-1.3.1/docs/BATCH_EVALUATION_IMPLEMENTATION_COMPLETE.md +0 -278
  162. radia-1.3.1/docs/BATCH_EVALUATION_PROPOSAL.md +0 -218
  163. radia-1.3.1/docs/BATCH_IMPLEMENTATION_PLAN.md +0 -449
  164. radia-1.3.1/docs/HMATRIX_CACHE_IMPLEMENTATION.md +0 -354
  165. radia-1.3.1/docs/PREPARECACHE_OPTIMIZATION_PROPOSAL.md +0 -156
  166. radia-1.3.1/docs/PYTHON_CACHED_FIELD_SOLUTION.md +0 -263
  167. radia-1.3.1/src/python/rad_ngsolve_cached_wrapper.py +0 -36
  168. {radia-1.3.1 → radia-1.3.3}/LICENSE +0 -0
  169. {radia-1.3.1 → radia-1.3.3}/MANIFEST.in +0 -0
  170. {radia-1.3.1 → radia-1.3.3}/examples/NGSolve_Integration/export_radia_geometry.py +0 -0
  171. {radia-1.3.1 → radia-1.3.3}/examples/NGSolve_Integration/radia_field.pvsm +0 -0
  172. {radia-1.3.1 → radia-1.3.3}/examples/background_fields/Cubit2Nastran.py +0 -0
  173. {radia-1.3.1 → radia-1.3.3}/examples/background_fields/permeability_comparison.py +0 -0
  174. {radia-1.3.1 → radia-1.3.3}/examples/background_fields/quadrupole_analytical.py +0 -0
  175. {radia-1.3.1 → radia-1.3.3}/examples/background_fields/sphere_in_quadrupole.py +0 -0
  176. {radia-1.3.1 → radia-1.3.3}/examples/background_fields/sphere_nastran_analysis.py +0 -0
  177. {radia-1.3.1 → radia-1.3.3}/examples/background_fields/sphere_nastran_field_mu.pvsm +0 -0
  178. {radia-1.3.1 → radia-1.3.3}/examples/background_fields/sphere_nastran_geometry.vtk +0 -0
  179. {radia-1.3.1 → radia-1.3.3}/examples/complex_coil_geometry/coil_geometry.vtk +0 -0
  180. {radia-1.3.1 → radia-1.3.3}/examples/complex_coil_geometry/complex_coil.pvsm +0 -0
  181. {radia-1.3.1 → radia-1.3.3}/examples/complex_coil_geometry/field_map.vtk +0 -0
  182. {radia-1.3.1 → radia-1.3.3}/examples/electromagnet/electromagnet.pvsm +0 -0
  183. {radia-1.3.1 → radia-1.3.3}/examples/electromagnet/electromagnet.vtk +0 -0
  184. {radia-1.3.1 → radia-1.3.3}/examples/electromagnet/field_distribution.vtk +0 -0
  185. {radia-1.3.1 → radia-1.3.3}/examples/simple_problems/CONVERSION_NOTES.md +0 -0
  186. {radia-1.3.1 → radia-1.3.3}/examples/simple_problems/README.md +0 -0
  187. {radia-1.3.1 → radia-1.3.3}/examples/smco_magnet_array/smbo.pvsm +0 -0
  188. {radia-1.3.1 → radia-1.3.3}/examples/smco_magnet_array/smco_array.vtk +0 -0
  189. {radia-1.3.1 → radia-1.3.3}/examples/smco_magnet_array/smco_field_distribution.vtk +0 -0
  190. {radia-1.3.1 → radia-1.3.3}/setup.cfg +0 -0
  191. {radia-1.3.1 → radia-1.3.3}/setup.py +0 -0
  192. {radia-1.3.1 → radia-1.3.3}/src/python/__init__.py +0 -0
  193. {radia-1.3.1 → radia-1.3.3}/src/python/nastran_reader.py +0 -0
  194. {radia-1.3.1 → radia-1.3.3}/src/python/rad_ngsolve_fast.py +0 -0
  195. {radia-1.3.1 → radia-1.3.3}/src/python/radia.pyd +0 -0
  196. {radia-1.3.1 → radia-1.3.3}/src/python/radia_coil_builder.py +0 -0
  197. {radia-1.3.1 → radia-1.3.3}/src/python/radia_field_cached.py +0 -0
  198. {radia-1.3.1 → radia-1.3.3}/src/python/radia_ngsolve_field.py +0 -0
  199. {radia-1.3.1 → radia-1.3.3}/src/python/radia_pyvista_viewer.py +0 -0
  200. {radia-1.3.1 → radia-1.3.3}/src/python/radia_vtk_export.py +0 -0
  201. {radia-1.3.1 → radia-1.3.3}/src/radia.egg-info/dependency_links.txt +0 -0
  202. {radia-1.3.1 → radia-1.3.3}/src/radia.egg-info/not-zip-safe +0 -0
  203. {radia-1.3.1 → radia-1.3.3}/src/radia.egg-info/requires.txt +0 -0
  204. {radia-1.3.1 → radia-1.3.3}/src/radia.egg-info/top_level.txt +0 -0
  205. {radia-1.3.1 → radia-1.3.3}/tests/test_objbckg_simple.py +0 -0
  206. {radia-1.3.1 → radia-1.3.3}/tests/test_objbckgcf_alone.py +0 -0
  207. {radia-1.3.1 → radia-1.3.3}/tests/test_python_cached_simple.py +0 -0
@@ -1,16 +1,16 @@
1
-
2
- OPEN SOURCE LICENSE AGREEMENT
3
-
4
- Copyright © 1997 - 2018, European Synchrotron Radiation Facility
5
-
6
- The RADIA software is distributed subject to the following license conditions:
7
-
8
- Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
9
-
10
- 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
11
-
12
- 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
13
-
14
- DISCLAIMER: THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
15
-
1
+
2
+ OPEN SOURCE LICENSE AGREEMENT
3
+
4
+ Copyright © 1997 - 2018, European Synchrotron Radiation Facility
5
+
6
+ The RADIA software is distributed subject to the following license conditions:
7
+
8
+ Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
9
+
10
+ 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
11
+
12
+ 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
13
+
14
+ DISCLAIMER: THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
15
+
16
16
  The views and conclusions contained in the software and documentation are those of the authors and should not be interpreted as representing official policies, either expressed or implied, of the RADIA project.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: radia
3
- Version: 1.3.1
3
+ Version: 1.3.3
4
4
  Summary: Radia 3D Magnetostatics with NGSolve Integration and OpenMP Parallelization
5
5
  Home-page: https://github.com/ksugahar/Radia_NGSolve
6
6
  Author: Pascal Elleaume
@@ -88,12 +88,12 @@ pip install radia-ngsolve
88
88
  # 1. Build radia.pyd (core module)
89
89
  .\Build.ps1
90
90
 
91
- # 2. Build rad_ngsolve.pyd (optional, for NGSolve integration)
91
+ # 2. Build radia_ngsolve.pyd (optional, for NGSolve integration)
92
92
  .\Build_NGSolve.ps1
93
93
 
94
94
  # Outputs:
95
95
  # - dist/radia.pyd
96
- # - build/Release/rad_ngsolve.pyd
96
+ # - build/Release/radia_ngsolve.pyd
97
97
  ```
98
98
 
99
99
  See [README_BUILD.md](README_BUILD.md) for detailed build instructions.
@@ -117,12 +117,12 @@ print(f"Field: {field} T")
117
117
 
118
118
  ### NGSolve Integration
119
119
 
120
- The `rad_ngsolve` module provides a C++ CoefficientFunction interface for using Radia magnetic fields in NGSolve FEM analysis.
120
+ The `radia_ngsolve` module provides a C++ CoefficientFunction interface for using Radia magnetic fields in NGSolve FEM analysis.
121
121
 
122
122
  **Function Specification:**
123
123
 
124
124
  ```python
125
- rad_ngsolve.RadiaField(radia_obj, field_type='b')
125
+ radia_ngsolve.RadiaField(radia_obj, field_type='b')
126
126
  ```
127
127
 
128
128
  **Parameters:**
@@ -149,7 +149,7 @@ import ngsolve
149
149
  from ngsolve import Mesh, H1, GridFunction
150
150
 
151
151
  import radia as rad
152
- import rad_ngsolve
152
+ import radia_ngsolve
153
153
 
154
154
  # Create Radia magnet
155
155
  magnet = rad.ObjRecMag([0,0,0], [20,20,20], [0,0,1.2]) # mm units
@@ -157,10 +157,10 @@ rad.MatApl(magnet, rad.MatPM(1.2, 900000, [0,0,1])) # NdFeB permanent magnet
157
157
  rad.Solve(magnet, 0.0001, 10000)
158
158
 
159
159
  # Create NGSolve CoefficientFunction for different field types
160
- B_field = rad_ngsolve.RadiaField(magnet, 'b') # Flux density [T]
161
- H_field = rad_ngsolve.RadiaField(magnet, 'h') # Magnetic field [A/m]
162
- A_field = rad_ngsolve.RadiaField(magnet, 'a') # Vector potential [T·m]
163
- M_field = rad_ngsolve.RadiaField(magnet, 'm') # Magnetization [A/m]
160
+ B_field = radia_ngsolve.RadiaField(magnet, 'b') # Flux density [T]
161
+ H_field = radia_ngsolve.RadiaField(magnet, 'h') # Magnetic field [A/m]
162
+ A_field = radia_ngsolve.RadiaField(magnet, 'a') # Vector potential [T·m]
163
+ M_field = radia_ngsolve.RadiaField(magnet, 'm') # Magnetization [A/m]
164
164
 
165
165
  # Use in FEM analysis (NGSolve mesh in meters)
166
166
  gf = GridFunction(fes)
@@ -177,10 +177,10 @@ See [examples/Radia_to_NGSolve_CoefficientFunction/](examples/Radia_to_NGSolve_C
177
177
  - [docs/DIRECTORY_STRUCTURE.md](docs/DIRECTORY_STRUCTURE.md) - Project structure
178
178
 
179
179
  ### NGSolve Integration
180
- - [RAD_NGSOLVE_BUILD_SUCCESS.md](RAD_NGSOLVE_BUILD_SUCCESS.md) - Complete rad_ngsolve documentation
180
+ - [RAD_NGSOLVE_BUILD_SUCCESS.md](RAD_NGSOLVE_BUILD_SUCCESS.md) - Complete radia_ngsolve documentation
181
181
  - [examples/Radia_to_NGSolve_CoefficientFunction/README.md](examples/Radia_to_NGSolve_CoefficientFunction/README.md) - NGSolve examples overview
182
182
  - [examples/Radia_to_NGSolve_CoefficientFunction/EXAMPLES_GUIDE.md](examples/Radia_to_NGSolve_CoefficientFunction/EXAMPLES_GUIDE.md) - Detailed usage guide
183
- - [tests/test_rad_ngsolve.py](tests/test_rad_ngsolve.py) - Integration tests
183
+ - [tests/test_radia_ngsolve.py](tests/test_radia_ngsolve.py) - Integration tests
184
184
 
185
185
  ### Visualization
186
186
  - [docs/PYVISTA_VIEWER.md](examples/2024_02_03_振分電磁石/PYVISTA_VIEWER.md) - PyVista viewer guide
@@ -239,7 +239,7 @@ python tests/test_radia.py
239
239
  python tests/test_advanced.py
240
240
 
241
241
  # NGSolve integration test
242
- python tests/test_rad_ngsolve.py
242
+ python tests/test_radia_ngsolve.py
243
243
 
244
244
  # OpenMP performance test
245
245
  python tests/test_parallel_performance.py
@@ -248,7 +248,7 @@ python tests/test_parallel_performance.py
248
248
  pytest tests/
249
249
 
250
250
  # Run specific test suite
251
- pytest tests/test_rad_ngsolve.py -v
251
+ pytest tests/test_radia_ngsolve.py -v
252
252
  ```
253
253
 
254
254
  See [tests/README.md](tests/README.md) for detailed testing documentation.
@@ -296,7 +296,7 @@ export_geometry_to_vtk(mag, 'geometry.vtk')
296
296
  ### Runtime Requirements
297
297
  - Python 3.12
298
298
  - NumPy
299
- - NGSolve (optional, for FEM coupling via rad_ngsolve)
299
+ - NGSolve (optional, for FEM coupling via radia_ngsolve)
300
300
  - PyVista (optional, for 3D visualization)
301
301
 
302
302
  ## Changes from Original Radia
@@ -348,7 +348,7 @@ See:
348
348
 
349
349
  **This Fork**:
350
350
  - OpenMP parallelization
351
- - NGSolve C++ integration (rad_ngsolve)
351
+ - NGSolve C++ integration (radia_ngsolve)
352
352
  - Python 3.12 optimization
353
353
  - Build system modernization
354
354
  - PyVista integration