radia 1.3.8__py3-none-any.whl → 1.3.10__py3-none-any.whl

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.
radia/__init__.py CHANGED
@@ -2,7 +2,7 @@
2
2
  # This module re-exports all symbols from the C++ extension module (radia.pyd)
3
3
  # so that 'import radia' works correctly when installed via pip
4
4
 
5
- __version__ = "1.3.8"
5
+ __version__ = "1.3.10"
6
6
 
7
7
  # Import all symbols from the C++ extension module
8
8
  try:
@@ -15,4 +15,4 @@ except ImportError:
15
15
  raise ImportError(
16
16
  "Failed to import radia C++ extension module (radia.pyd). "
17
17
  "Ensure the package was built correctly with Build.ps1 before installation."
18
- ) from e
18
+ ) from e
radia/radia.pyd CHANGED
Binary file
radia/radia_ngsolve.pyd CHANGED
Binary file
@@ -53,8 +53,8 @@ Example
53
53
 
54
54
  import os
55
55
  import radia as rad
56
- from netgen_mesh_import import netgen_mesh_to_radia
57
- from radia_vtk_export import exportGeometryToVTK
56
+ from .netgen_mesh_import import netgen_mesh_to_radia
57
+ from .radia_vtk_export import exportGeometryToVTK
58
58
 
59
59
 
60
60
  def create_radia_from_mesh(mesh, material=None, units='m', combine=True,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: radia
3
- Version: 1.3.8
3
+ Version: 1.3.10
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
@@ -96,7 +96,7 @@ pip install radia-ngsolve
96
96
  # - build/Release/radia_ngsolve.pyd
97
97
  ```
98
98
 
99
- See [README_BUILD.md](README_BUILD.md) for detailed build instructions.
99
+ See [BUILD.md](BUILD.md) for detailed build instructions.
100
100
 
101
101
  ### Basic Usage
102
102
 
@@ -119,6 +119,21 @@ print(f"Field: {field} T")
119
119
 
120
120
  The `radia_ngsolve` module provides a C++ CoefficientFunction interface for using Radia magnetic fields in NGSolve FEM analysis.
121
121
 
122
+ **Requirements:**
123
+ - NGSolve must be installed separately: `pip install ngsolve`
124
+ - **IMPORTANT**: NGSolve must be imported **before** `radia_ngsolve`
125
+ - Current build is linked against **NGSolve 6.2.2406** (Windows Python 3.12)
126
+
127
+ **Installation:**
128
+
129
+ ```bash
130
+ # 1. Install NGSolve first
131
+ pip install ngsolve
132
+
133
+ # 2. Install Radia (includes radia_ngsolve.pyd)
134
+ pip install radia
135
+ ```
136
+
122
137
  **Function Specification:**
123
138
 
124
139
  ```python
@@ -144,12 +159,12 @@ radia_ngsolve.RadiaField(radia_obj, field_type='b')
144
159
  **Example:**
145
160
 
146
161
  ```python
147
- # IMPORTANT: Import ngsolve first
162
+ # IMPORTANT: Import ngsolve FIRST (required to load NGSolve DLLs)
148
163
  import ngsolve
149
- from ngsolve import Mesh, H1, GridFunction
164
+ from ngsolve import Mesh, H1, GridFunction, HDiv
150
165
 
151
166
  import radia as rad
152
- import radia_ngsolve
167
+ from radia import radia_ngsolve # or: import radia_ngsolve
153
168
 
154
169
  # Create Radia magnet
155
170
  magnet = rad.ObjRecMag([0,0,0], [20,20,20], [0,0,1.2]) # mm units
@@ -167,24 +182,27 @@ gf = GridFunction(fes)
167
182
  gf.Set(B_field) # Automatically converts mesh coordinates m → mm
168
183
  ```
169
184
 
170
- See [examples/Radia_to_NGSolve_CoefficientFunction/](examples/Radia_to_NGSolve_CoefficientFunction/) for complete examples.
185
+ See [examples/ngsolve_integration/](examples/ngsolve_integration/) for complete examples.
171
186
 
172
187
  ## Documentation
173
188
 
174
- ### Core
175
- - [README_BUILD.md](README_BUILD.md) - Build instructions
176
- - [docs/OPENMP_PERFORMANCE_REPORT.md](docs/OPENMP_PERFORMANCE_REPORT.md) - OpenMP benchmarks
177
- - [docs/DIRECTORY_STRUCTURE.md](docs/DIRECTORY_STRUCTURE.md) - Project structure
189
+ ### Build & Setup
190
+ - [BUILD.md](BUILD.md) - Build instructions (Windows, macOS, Linux)
191
+
192
+ ### User Guides
193
+ - [docs/API_REFERENCE.md](docs/API_REFERENCE.md) - Complete Python API reference
194
+ - [docs/SOLVER_METHODS.md](docs/SOLVER_METHODS.md) - Solver methods (LU, BiCGSTAB, H-matrix)
195
+ - [docs/HMATRIX_USER_GUIDE.md](docs/HMATRIX_USER_GUIDE.md) - H-matrix acceleration guide
178
196
 
179
197
  ### NGSolve Integration
180
- - [RAD_NGSOLVE_BUILD_SUCCESS.md](RAD_NGSOLVE_BUILD_SUCCESS.md) - Complete radia_ngsolve documentation
181
- - [examples/Radia_to_NGSolve_CoefficientFunction/README.md](examples/Radia_to_NGSolve_CoefficientFunction/README.md) - NGSolve examples overview
182
- - [examples/Radia_to_NGSolve_CoefficientFunction/EXAMPLES_GUIDE.md](examples/Radia_to_NGSolve_CoefficientFunction/EXAMPLES_GUIDE.md) - Detailed usage guide
183
- - [tests/test_radia_ngsolve.py](tests/test_radia_ngsolve.py) - Integration tests
198
+ - [docs/NGSOLVE_USAGE_GUIDE.md](docs/NGSOLVE_USAGE_GUIDE.md) - How to use Radia with NGSolve
199
+ - [docs/NGSOLVE_INTEGRATION.md](docs/NGSOLVE_INTEGRATION.md) - Integration overview
184
200
 
185
- ### Development
186
- - [docs/TAB_CONVERSION_REPORT.md](docs/TAB_CONVERSION_REPORT.md) - Code style conversion
187
- - [docs/CLAUDE.md](docs/CLAUDE.md) - Development notes
201
+ ### Examples
202
+ - [examples/ngsolve_integration/](examples/ngsolve_integration/) - NGSolve integration examples
203
+ - [examples/magpylib_integration/](examples/magpylib_integration/) - magpylib background field examples
204
+ - [examples/simple_problems/](examples/simple_problems/) - Basic magnet configurations
205
+ - [tests/README.md](tests/README.md) - Test suite documentation
188
206
 
189
207
  ## Performance
190
208
 
@@ -197,7 +215,7 @@ OpenMP parallelization results (8-core system):
197
215
  | 4 | 3.57 | 3.27x |
198
216
  | 8 | 4.33 | 2.70x |
199
217
 
200
- See [docs/OPENMP_PERFORMANCE_REPORT.md](docs/OPENMP_PERFORMANCE_REPORT.md) for details.
218
+ See [docs/SOLVER_METHODS.md](docs/SOLVER_METHODS.md) for solver performance details.
201
219
 
202
220
  ## Examples
203
221
 
@@ -205,12 +223,12 @@ Practical examples are available in the `examples/` directory:
205
223
 
206
224
 
207
225
  ### NGSolve Integration
208
- - `examples/Radia_to_NGSolve_CoefficientFunction/` - **Radia → NGSolve: Use Radia fields in FEM**
226
+ - `examples/ngsolve_integration/` - **Radia → NGSolve: Use Radia fields in FEM**
209
227
  - `demo_field_types.py` - All field types demonstration
210
228
  - `visualize_field.py` - Field visualization and comparison
211
229
  - `export_radia_geometry.py` - Export geometry to VTK
212
230
 
213
- - `examples/NGSolve_CoefficientFunction_to_Radia_BackgroundField/` - **NGSolve → Radia: Background fields**
231
+ - `examples/background_fields/` - **NGSolve → Radia: Background fields**
214
232
  - `test_sphere_in_quadrupole.py` - Magnetizable sphere in quadrupole field
215
233
  - Uses Python callbacks to define arbitrary background fields
216
234
 
@@ -434,7 +452,7 @@ See:
434
452
 
435
453
  This tool perfectly complements Radia_NGSolve by providing high-quality mesh generation:
436
454
 
437
- - **Nastran Format Export** - Compatible with Radia's `nastran_reader.py` module
455
+ - **Nastran Format Export** - Compatible with Radia's `nastran_mesh_import.py` module
438
456
  - **Multiple Format Support** - Gmsh, MEG, VTK, and Nastran exports
439
457
  - **2D/3D Meshing** - Supports complex 3D geometries
440
458
  - **Second-Order Elements** - High-accuracy mesh generation
@@ -442,10 +460,10 @@ This tool perfectly complements Radia_NGSolve by providing high-quality mesh gen
442
460
  **Workflow Example:**
443
461
  1. Create complex geometry in Coreform Cubit
444
462
  2. Export to Nastran format using `Coreform_Cubit_Mesh_Export`
445
- 3. Import into Radia using `nastran_reader.py`
463
+ 3. Import into Radia using `nastran_mesh_import.py`
446
464
  4. Couple with NGSolve for FEM analysis
447
465
 
448
- See [examples/NGSolve_CoefficientFunction_to_Radia_BackgroundField/](examples/NGSolve_CoefficientFunction_to_Radia_BackgroundField/) for Nastran mesh usage examples.
466
+ See [examples/background_fields/](examples/background_fields/) for Nastran mesh usage examples.
449
467
 
450
468
  ## Links
451
469
 
@@ -455,5 +473,5 @@ See [examples/NGSolve_CoefficientFunction_to_Radia_BackgroundField/](examples/NG
455
473
 
456
474
  ---
457
475
 
458
- **Version**: 1.3.4 (OpenMP + NGSolve Edition)
459
- **Last Updated**: 2025-11-30
476
+ **Version**: 1.3.9 (OpenMP + NGSolve Edition)
477
+ **Last Updated**: 2025-12-05
@@ -0,0 +1,17 @@
1
+ radia/__init__.py,sha256=1BJABJ1Xe_j4ZjOszUNxaGhpDF4MDV6EaxX2RcMJHTA,642
2
+ radia/nastran_mesh_import.py,sha256=CSoVhZCXa85lPiTF2hlspE2clBKOD7-_sCp1bxu_IK0,18147
3
+ radia/netgen_mesh_import.py,sha256=UopXk-5bbfj1j9_hyiq8jbjb4SQXnWaeuaC7TDf17wA,19872
4
+ radia/rad_ngsolve_fast.py,sha256=GkC7ruKy3MESHsO0iRSWsrgLU4-DPPgctOi6pPpsWg4,5675
5
+ radia/radia.pyd,sha256=9JOKXaZyAW9l4kPdo6wL_P9ebBu2UAWonzGWRgK_W5s,1727488
6
+ radia/radia_coil_builder.py,sha256=nQkiAbfhueNvvxUARHdPD0C68ImidHmUQv_q4RsImeY,11253
7
+ radia/radia_field_cached.py,sha256=Bjw3ecNe3u7AAXnLob5m_tjYIY7HwB9DpgFg9a-aP_8,9509
8
+ radia/radia_ngsolve.pyd,sha256=vm_2IVPKCO7Wsh91k18xelbFmoS88ATPWZyytt4xLak,563200
9
+ radia/radia_ngsolve_field.py,sha256=suJr4wacfYFKOkyV-5AQuHWnW5rtUMb0gSSjq8VRSXc,10166
10
+ radia/radia_ngsolve_utils.py,sha256=tFzPz8rsSi9TCGF2--92H9KFMuua9oAq8JLvw_XdoHs,8408
11
+ radia/radia_pyvista_viewer.py,sha256=JS33Mx4azGI7hUX0bzefc6zJfhv6qfRjM3Kl1bE9Mjs,4275
12
+ radia/radia_vtk_export.py,sha256=I8Vyyt9tky78Qw1xPru9f0Rii6QEmdEgTFjQtamyooc,6540
13
+ radia-1.3.10.dist-info/licenses/LICENSE,sha256=yaWxyzG9DpJ44dDNdGni4nukwiZ8pU-r_aW-1tYNAjk,4374
14
+ radia-1.3.10.dist-info/METADATA,sha256=a3s8y7BnHMedi8XnuFmyWZJrHbjB5QaUV9qr5RN4YbM,15846
15
+ radia-1.3.10.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
16
+ radia-1.3.10.dist-info/top_level.txt,sha256=kNDonE5X3Q2xnmOsWleQnGKQobuFsKM6Px5_Ta1I6x8,6
17
+ radia-1.3.10.dist-info/RECORD,,
@@ -1,17 +0,0 @@
1
- radia/__init__.py,sha256=uLypp5MzDRzMDo3baF1H4XBuoOWFM-UEvw2A8HMqUqk,642
2
- radia/nastran_mesh_import.py,sha256=CSoVhZCXa85lPiTF2hlspE2clBKOD7-_sCp1bxu_IK0,18147
3
- radia/netgen_mesh_import.py,sha256=UopXk-5bbfj1j9_hyiq8jbjb4SQXnWaeuaC7TDf17wA,19872
4
- radia/rad_ngsolve_fast.py,sha256=GkC7ruKy3MESHsO0iRSWsrgLU4-DPPgctOi6pPpsWg4,5675
5
- radia/radia.pyd,sha256=6CNhfoZk5c07LIfeqR6-OT-vT22Oxnc_K3PkTADfa90,1735680
6
- radia/radia_coil_builder.py,sha256=nQkiAbfhueNvvxUARHdPD0C68ImidHmUQv_q4RsImeY,11253
7
- radia/radia_field_cached.py,sha256=Bjw3ecNe3u7AAXnLob5m_tjYIY7HwB9DpgFg9a-aP_8,9509
8
- radia/radia_ngsolve.pyd,sha256=hmPQal8FEqt9Ia5NQ05Vw35RUW5jbWFGQ5PzwXJiLww,566272
9
- radia/radia_ngsolve_field.py,sha256=suJr4wacfYFKOkyV-5AQuHWnW5rtUMb0gSSjq8VRSXc,10166
10
- radia/radia_ngsolve_utils.py,sha256=xZCR9DOIKMwdEjmC28rOXVZiWFY5BQYH2VfopfuVBps,8406
11
- radia/radia_pyvista_viewer.py,sha256=JS33Mx4azGI7hUX0bzefc6zJfhv6qfRjM3Kl1bE9Mjs,4275
12
- radia/radia_vtk_export.py,sha256=I8Vyyt9tky78Qw1xPru9f0Rii6QEmdEgTFjQtamyooc,6540
13
- radia-1.3.8.dist-info/licenses/LICENSE,sha256=yaWxyzG9DpJ44dDNdGni4nukwiZ8pU-r_aW-1tYNAjk,4374
14
- radia-1.3.8.dist-info/METADATA,sha256=d2Wsmu4QeXQY2FlIUb8f6VzlkG6hg4aV6VIyRWz1fmU,15518
15
- radia-1.3.8.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
16
- radia-1.3.8.dist-info/top_level.txt,sha256=kNDonE5X3Q2xnmOsWleQnGKQobuFsKM6Px5_Ta1I6x8,6
17
- radia-1.3.8.dist-info/RECORD,,
File without changes