fiqus 2026.1.0__py3-none-any.whl → 2026.1.2__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.
Files changed (42) hide show
  1. fiqus/MainFiQuS.py +1 -8
  2. fiqus/data/DataConductor.py +4 -8
  3. fiqus/data/DataFiQuSMultipole.py +358 -167
  4. fiqus/data/DataModelCommon.py +30 -15
  5. fiqus/data/DataMultipole.py +33 -10
  6. fiqus/data/DataWindingsCCT.py +37 -37
  7. fiqus/data/RegionsModelFiQuS.py +1 -1
  8. fiqus/geom_generators/GeometryMultipole.py +751 -54
  9. fiqus/getdp_runners/RunGetdpMultipole.py +181 -31
  10. fiqus/mains/MainMultipole.py +109 -17
  11. fiqus/mesh_generators/MeshCCT.py +209 -209
  12. fiqus/mesh_generators/MeshMultipole.py +938 -263
  13. fiqus/parsers/ParserCOND.py +2 -1
  14. fiqus/parsers/ParserDAT.py +16 -16
  15. fiqus/parsers/ParserGetDPOnSection.py +212 -212
  16. fiqus/parsers/ParserGetDPTimeTable.py +134 -134
  17. fiqus/parsers/ParserMSH.py +53 -53
  18. fiqus/parsers/ParserRES.py +142 -142
  19. fiqus/plotters/PlotPythonCCT.py +133 -133
  20. fiqus/plotters/PlotPythonMultipole.py +18 -18
  21. fiqus/post_processors/PostProcessMultipole.py +16 -6
  22. fiqus/pre_processors/PreProcessCCT.py +175 -175
  23. fiqus/pro_assemblers/ProAssembler.py +3 -3
  24. fiqus/pro_material_functions/ironBHcurves.pro +246 -246
  25. fiqus/pro_templates/combined/CC_Module.pro +1213 -0
  26. fiqus/pro_templates/combined/ConductorAC_template.pro +1025 -0
  27. fiqus/pro_templates/combined/Multipole_template.pro +2738 -1338
  28. fiqus/pro_templates/combined/TSA_materials.pro +102 -2
  29. fiqus/pro_templates/combined/materials.pro +54 -3
  30. fiqus/utils/Utils.py +18 -25
  31. fiqus/utils/update_data_settings.py +1 -1
  32. {fiqus-2026.1.0.dist-info → fiqus-2026.1.2.dist-info}/METADATA +64 -68
  33. {fiqus-2026.1.0.dist-info → fiqus-2026.1.2.dist-info}/RECORD +42 -40
  34. {fiqus-2026.1.0.dist-info → fiqus-2026.1.2.dist-info}/WHEEL +1 -1
  35. tests/test_geometry_generators.py +29 -32
  36. tests/test_mesh_generators.py +35 -34
  37. tests/test_solvers.py +32 -31
  38. tests/utils/fiqus_test_classes.py +396 -147
  39. tests/utils/generate_reference_files_ConductorAC.py +57 -57
  40. tests/utils/helpers.py +76 -1
  41. {fiqus-2026.1.0.dist-info → fiqus-2026.1.2.dist-info}/LICENSE.txt +0 -0
  42. {fiqus-2026.1.0.dist-info → fiqus-2026.1.2.dist-info}/top_level.txt +0 -0
fiqus/MainFiQuS.py CHANGED
@@ -103,12 +103,7 @@ class MainFiQuS:
103
103
  self.file_name = os.path.basename(input_file_path)[:-5]
104
104
  if not self.fdm.magnet.geometry.geom_file_path:
105
105
  self.fdm.magnet.geometry.geom_file_path = f"{input_file_path[:-5]}.geom"
106
- self.main_magnet = MainMultipole(
107
- fdm=self.fdm,
108
- rgd_path=self.fdm.magnet.geometry.geom_file_path,
109
- verbose=verbose,
110
- )
111
-
106
+ self.main_magnet = MainMultipole(fdm=self.fdm,rgd_path=self.fdm.magnet.geometry.geom_file_path,verbose=verbose, inputs_folder_path=pathlib.Path(input_file_path).parent)
112
107
  else:
113
108
  raise ValueError(
114
109
  f"FiQuS does not support magnet type: {self.fdm.magnet.type}!"
@@ -397,8 +392,6 @@ class MainFiQuS:
397
392
  self.summary["solution_time"] = (
398
393
  self.main_magnet.solve_and_postprocess_getdp(gui=self.main_magnet.fdm.run.launch_gui)
399
394
  )
400
- elif self.fdm.run.type == "postprocess_veusz":
401
- self.main_magnet.post_process_veusz(gui=self.main_magnet.fdm.run.launch_gui)
402
395
  elif self.fdm.run.type == "post_process_getdp_only":
403
396
  self.main_magnet.post_process_getdp(gui=self.main_magnet.fdm.run.launch_gui)
404
397
  elif self.fdm.run.type == "post_process_python_only":
@@ -321,7 +321,7 @@ class Round(BaseModel):
321
321
  k_material_superconductor: Optional[Union[str, float]] = Field(default=None, description="Thermal conductivity of the superconductor.")
322
322
  Cv_material_superconductor: Optional[Union[str, float]] = Field(default=None, description="Material function for specific heat of the superconductor.")
323
323
  # -- Stabilizer parameters -- #
324
- material_stabilizer: Optional[str] = Field(default=None, description="Material of the stabilizer.")
324
+ #material_stabilizer: Optional[str] = Field(default=None, description="Material of the stabilizer.")
325
325
  rho_material_stabilizer: Optional[Union[str, float]] = Field(default=None, description="Material function for resistivity of the stabilizer. Constant resistivity can be given as float.")
326
326
  rho_material_holes: Optional[Union[str, float]] = Field(default=None, description="Material function for resistivity of the holes in the filaments."
327
327
  "Constant resistivity can be given as float, material name as a string or None or 0.0 to use 'air' in the holes.")
@@ -362,18 +362,14 @@ class Rectangular(BaseModel):
362
362
  k_material_superconductor: Optional[Union[str, float]] = Field(default=None, description="Thermal conductivity of the superconductor.")
363
363
  Cv_material_superconductor: Optional[Union[str, float]] = Field(default=None, description="Material function for specific heat of the superconductor.")
364
364
  # -- Stabilizer parameters -- #
365
- material_stabilizer: Optional[str] = Field(default=None, description="Material of the stabilizer.")
365
+ #material_stabilizer: Optional[str] = Field(default=None, description="Material of the stabilizer.") #TODO this should be removed as is substituted by rho, k and Cv
366
+ k_material_stabilizer: Optional[Union[str, float]] = Field(default=None, description="Thermal conductivity of the stabilizer.")
367
+ Cv_material_stabilizer: Optional[Union[str, float]] = Field(default=None, description="Material function for specific heat of the stabilizer.")
366
368
  rho_material_stabilizer: Optional[Union[str, float]] = Field(default=None, description="Material function for resistivity of the stabilizer. Constant resistivity can be given as float.")
367
369
  RRR: Optional[Union[float, List[float]]] = Field(default=None, description="Residual resistivity ratio of the stabilizer. If a list of RRR is provided it needs to match in length the number of matrix regions in the geometry (typically 3)")
368
370
  T_ref_RRR_high: Optional[float] = Field(default=None, description="Upper reference temperature for RRR measurements.")
369
371
  T_ref_RRR_low: Optional[float] = Field(default=None, description="Lower reference temperature for RRR measurements.")
370
- k_material_stabilizer: Optional[Union[str, float]] = Field(default=None, description="Thermal conductivity of the stabilizer.")
371
- Cv_material_stabilizer: Optional[Union[str, float]] = Field(default=None, description="Material function for specific heat of the stabilizer.")
372
- number_of_filaments: Optional[int] = None
373
372
 
374
- # superconductor: MaterialSuperconductor = MaterialSuperconductor()
375
- # stabilizer: MaterialStabilizer = MaterialStabilizer()
376
-
377
373
  class Copper_thickness(BaseModel):
378
374
  left: Optional[float] = Field(default=None, description="On the left side.")
379
375
  right: Optional[float] = Field(default=None, description="On the right side.")