fiqus 2025.12.0__tar.gz → 2026.1.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.
- {fiqus-2025.12.0 → fiqus-2026.1.1}/PKG-INFO +61 -57
- {fiqus-2025.12.0 → fiqus-2026.1.1}/README.md +4 -8
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/MainFiQuS.py +4 -8
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/data/DataConductor.py +108 -11
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/data/DataFiQuS.py +2 -1
- fiqus-2026.1.1/fiqus/data/DataFiQuSConductorAC_CC.py +345 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/data/DataFiQuSConductorAC_Strand.py +3 -3
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/data/DataFiQuSMultipole.py +363 -165
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/data/DataModelCommon.py +30 -15
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/data/DataMultipole.py +33 -10
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/data/DataWindingsCCT.py +37 -37
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/data/RegionsModelFiQuS.py +1 -1
- fiqus-2026.1.1/fiqus/geom_generators/GeometryConductorAC_CC.py +1906 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/geom_generators/GeometryMultipole.py +751 -54
- fiqus-2026.1.1/fiqus/getdp_runners/RunGetdpConductorAC_CC.py +123 -0
- fiqus-2026.1.1/fiqus/getdp_runners/RunGetdpMultipole.py +320 -0
- fiqus-2026.1.1/fiqus/mains/MainConductorAC_CC.py +148 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/mains/MainMultipole.py +109 -17
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/mesh_generators/MeshCCT.py +209 -209
- fiqus-2026.1.1/fiqus/mesh_generators/MeshConductorAC_CC.py +1305 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/mesh_generators/MeshMultipole.py +938 -263
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/parsers/ParserCOND.py +2 -1
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/parsers/ParserDAT.py +16 -16
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/parsers/ParserGetDPOnSection.py +212 -212
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/parsers/ParserGetDPTimeTable.py +134 -134
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/parsers/ParserMSH.py +53 -53
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/parsers/ParserRES.py +142 -142
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/plotters/PlotPythonCCT.py +133 -133
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/plotters/PlotPythonMultipole.py +18 -18
- fiqus-2026.1.1/fiqus/post_processors/PostProcessAC_CC.py +65 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/post_processors/PostProcessMultipole.py +16 -6
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/pre_processors/PreProcessCCT.py +175 -175
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/pro_assemblers/ProAssembler.py +3 -3
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/pro_material_functions/ironBHcurves.pro +246 -246
- fiqus-2026.1.1/fiqus/pro_templates/combined/CAC_CC_template.pro +542 -0
- fiqus-2026.1.1/fiqus/pro_templates/combined/CC_Module.pro +1213 -0
- fiqus-2026.1.1/fiqus/pro_templates/combined/Multipole_template.pro +3216 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/pro_templates/combined/TSA_materials.pro +102 -2
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/pro_templates/combined/materials.pro +54 -3
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/utils/Utils.py +18 -25
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/utils/update_data_settings.py +1 -1
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus.egg-info/PKG-INFO +61 -57
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus.egg-info/SOURCES.txt +10 -2
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus.egg-info/requires.txt +22 -26
- {fiqus-2025.12.0 → fiqus-2026.1.1}/setup.py +26 -17
- {fiqus-2025.12.0 → fiqus-2026.1.1}/tests/test_geometry_generators.py +47 -30
- {fiqus-2025.12.0 → fiqus-2026.1.1}/tests/test_mesh_generators.py +69 -30
- {fiqus-2025.12.0 → fiqus-2026.1.1}/tests/test_solvers.py +67 -29
- {fiqus-2025.12.0 → fiqus-2026.1.1}/tests/utils/fiqus_test_classes.py +396 -147
- {fiqus-2025.12.0 → fiqus-2026.1.1}/tests/utils/generate_reference_files_ConductorAC.py +57 -57
- {fiqus-2025.12.0 → fiqus-2026.1.1}/tests/utils/helpers.py +76 -1
- fiqus-2025.12.0/fiqus/getdp_runners/RunGetdpMultipole.py +0 -170
- fiqus-2025.12.0/fiqus/pro_templates/combined/Multipole_template.pro +0 -1816
- {fiqus-2025.12.0 → fiqus-2026.1.1}/LICENSE.txt +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/__init__.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/data/DataFiQuSCCT.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/data/DataFiQuSConductor.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/data/DataFiQuSConductorAC_Rutherford.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/data/DataFiQuSHomogenizedConductor.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/data/DataFiQuSPancake3D.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/data/DataRoxieParser.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/data/DataSettings.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/data/__init__.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/geom_generators/GeometryCCT.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/geom_generators/GeometryConductorAC_Rutherford.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/geom_generators/GeometryConductorAC_Strand.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/geom_generators/GeometryConductorAC_Strand_RutherfordCopy.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/geom_generators/GeometryHomogenizedConductor.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/geom_generators/GeometryPancake3D.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/geom_generators/GeometryPancake3DUtils.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/geom_generators/__init__.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/getdp_runners/RunGetdpCCT.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/getdp_runners/RunGetdpConductorAC_Rutherford.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/getdp_runners/RunGetdpConductorAC_Strand.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/getdp_runners/RunGetdpHomogenizedConductor.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/getdp_runners/RunGetdpPancake3D.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/getdp_runners/__init__.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/mains/MainCCT.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/mains/MainConductorAC_Rutherford.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/mains/MainConductorAC_Strand.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/mains/MainHomogenizedConductor.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/mains/MainPancake3D.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/mains/__init__.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/mesh_generators/MeshConductorAC_Rutherford.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/mesh_generators/MeshConductorAC_Strand.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/mesh_generators/MeshConductorAC_Strand_RutherfordCopy.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/mesh_generators/MeshHomogenizedConductor.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/mesh_generators/MeshPancake3D.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/mesh_generators/__init__.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/parsers/ParserPOS.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/parsers/__init__.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/plotters/PlotPythonConductorAC.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/plotters/__init__.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/post_processors/PostProcessAC_Rutherford.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/post_processors/PostProcessCCT.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/post_processors/PostProcessConductorAC.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/post_processors/PostProcessHomogenizedConductor.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/post_processors/PostProcessPancake3D.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/post_processors/__init__.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/pre_processors/__init__.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/pro_assemblers/__init__.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/pro_templates/__init__.py +0 -0
- /fiqus-2025.12.0/fiqus/pro_templates/combined/ConductorACRutherford_template.pro → /fiqus-2026.1.1/fiqus/pro_templates/combined/CAC_Rutherford_template.pro +0 -0
- /fiqus-2025.12.0/fiqus/pro_templates/combined/ConductorAC_template.pro → /fiqus-2026.1.1/fiqus/pro_templates/combined/CAC_Strand_template.pro +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/pro_templates/combined/CCT_template.pro +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/pro_templates/combined/HomogenizedConductor_template.pro +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/pro_templates/combined/Pancake3D_template.pro +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/pro_templates/combined/__init__.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/pro_templates/separated/__init__.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus/utils/__init__.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus.egg-info/dependency_links.txt +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/fiqus.egg-info/top_level.txt +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/setup.cfg +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/tests/__init__.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/tests/test_FiQuS.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/tests/utils/__init__.py +0 -0
- {fiqus-2025.12.0 → fiqus-2026.1.1}/tests/utils/generate_reference_files_Pancake3D.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: fiqus
|
|
3
|
-
Version:
|
|
3
|
+
Version: 2026.1.1
|
|
4
4
|
Summary: Source code for STEAM FiQuS tool
|
|
5
5
|
Home-page: https://gitlab.cern.ch/steam/fiqus
|
|
6
6
|
Author: STEAM Team
|
|
@@ -10,52 +10,17 @@ Classifier: Programming Language :: Python :: 3.11
|
|
|
10
10
|
Requires-Python: >=3.11
|
|
11
11
|
Description-Content-Type: text/markdown
|
|
12
12
|
License-File: LICENSE.txt
|
|
13
|
-
Requires-Dist: gmsh
|
|
14
|
-
Requires-Dist: h5py
|
|
15
|
-
Requires-Dist: Jinja2
|
|
16
|
-
Requires-Dist: matplotlib
|
|
17
|
-
Requires-Dist: mplcursors
|
|
18
|
-
Requires-Dist: numpy
|
|
19
|
-
Requires-Dist: pandas
|
|
20
|
-
Requires-Dist: pydantic
|
|
21
|
-
Requires-Dist: ruamel.yaml
|
|
22
|
-
Requires-Dist:
|
|
23
|
-
Requires-Dist:
|
|
24
|
-
Requires-Dist: tqdm==4.66.2
|
|
25
|
-
Requires-Dist: typing_extensions==4.10.0
|
|
26
|
-
Provides-Extra: all
|
|
27
|
-
Requires-Dist: gmsh==4.13.1; extra == "all"
|
|
28
|
-
Requires-Dist: h5py==3.10.0; extra == "all"
|
|
29
|
-
Requires-Dist: Jinja2==3.1.3; extra == "all"
|
|
30
|
-
Requires-Dist: matplotlib==3.8.3; extra == "all"
|
|
31
|
-
Requires-Dist: mplcursors==0.5.3; extra == "all"
|
|
32
|
-
Requires-Dist: numpy==1.26.4; extra == "all"
|
|
33
|
-
Requires-Dist: pandas==2.2.1; extra == "all"
|
|
34
|
-
Requires-Dist: pydantic==2.6.4; extra == "all"
|
|
35
|
-
Requires-Dist: ruamel.yaml==0.18.6; extra == "all"
|
|
36
|
-
Requires-Dist: ruamel.yaml.clib==0.2.8; extra == "all"
|
|
37
|
-
Requires-Dist: scipy==1.14.1; extra == "all"
|
|
38
|
-
Requires-Dist: tqdm==4.66.2; extra == "all"
|
|
39
|
-
Requires-Dist: typing_extensions==4.10.0; extra == "all"
|
|
40
|
-
Requires-Dist: griffe==0.42.0; extra == "all"
|
|
41
|
-
Requires-Dist: markdown==3.5.2; extra == "all"
|
|
42
|
-
Requires-Dist: markdown-include==0.8.1; extra == "all"
|
|
43
|
-
Requires-Dist: mkdocs-git-revision-date-localized-plugin==1.2.4; extra == "all"
|
|
44
|
-
Requires-Dist: mkdocs-include-markdown-plugin==6.0.4; extra == "all"
|
|
45
|
-
Requires-Dist: mkdocs-material==9.5.13; extra == "all"
|
|
46
|
-
Requires-Dist: mkdocstrings-python==1.9.0; extra == "all"
|
|
47
|
-
Requires-Dist: mkdocs-autorefs==1.3.1; extra == "all"
|
|
48
|
-
Requires-Dist: coverage==7.4.4; extra == "all"
|
|
49
|
-
Requires-Dist: coverage-badge==1.1.0; extra == "all"
|
|
50
|
-
Requires-Dist: flake8==7.0.0; extra == "all"
|
|
51
|
-
Requires-Dist: mypy==1.9.0; extra == "all"
|
|
52
|
-
Requires-Dist: pylint==3.1.0; extra == "all"
|
|
53
|
-
Requires-Dist: pytest==8.1.1; extra == "all"
|
|
54
|
-
Requires-Dist: pytest-cov==4.1.0; extra == "all"
|
|
55
|
-
Requires-Dist: pytest-subtests==0.12.1; extra == "all"
|
|
56
|
-
Requires-Dist: setuptools==69.2.0; extra == "all"
|
|
57
|
-
Requires-Dist: wheel==0.45.1; extra == "all"
|
|
58
|
-
Requires-Dist: twine==6.0.1; extra == "all"
|
|
13
|
+
Requires-Dist: gmsh<5,>=4.13
|
|
14
|
+
Requires-Dist: h5py<4,>=3.10
|
|
15
|
+
Requires-Dist: Jinja2<4,>=3.1
|
|
16
|
+
Requires-Dist: matplotlib<4,>=3.8
|
|
17
|
+
Requires-Dist: mplcursors<1,>=0.5
|
|
18
|
+
Requires-Dist: numpy<2,>=1.26
|
|
19
|
+
Requires-Dist: pandas<3,>=2.2
|
|
20
|
+
Requires-Dist: pydantic<3,>=2.6
|
|
21
|
+
Requires-Dist: ruamel.yaml<1,>=0.18
|
|
22
|
+
Requires-Dist: scipy<2,>=1.14
|
|
23
|
+
Requires-Dist: tqdm<5,>=4.66
|
|
59
24
|
Provides-Extra: docs
|
|
60
25
|
Requires-Dist: griffe==0.42.0; extra == "docs"
|
|
61
26
|
Requires-Dist: markdown==3.5.2; extra == "docs"
|
|
@@ -78,6 +43,49 @@ Provides-Extra: build
|
|
|
78
43
|
Requires-Dist: setuptools==69.2.0; extra == "build"
|
|
79
44
|
Requires-Dist: wheel==0.45.1; extra == "build"
|
|
80
45
|
Requires-Dist: twine==6.0.1; extra == "build"
|
|
46
|
+
Provides-Extra: all
|
|
47
|
+
Requires-Dist: gmsh<5,>=4.13; extra == "all"
|
|
48
|
+
Requires-Dist: h5py<4,>=3.10; extra == "all"
|
|
49
|
+
Requires-Dist: Jinja2<4,>=3.1; extra == "all"
|
|
50
|
+
Requires-Dist: matplotlib<4,>=3.8; extra == "all"
|
|
51
|
+
Requires-Dist: mplcursors<1,>=0.5; extra == "all"
|
|
52
|
+
Requires-Dist: numpy<2,>=1.26; extra == "all"
|
|
53
|
+
Requires-Dist: pandas<3,>=2.2; extra == "all"
|
|
54
|
+
Requires-Dist: pydantic<3,>=2.6; extra == "all"
|
|
55
|
+
Requires-Dist: ruamel.yaml<1,>=0.18; extra == "all"
|
|
56
|
+
Requires-Dist: scipy<2,>=1.14; extra == "all"
|
|
57
|
+
Requires-Dist: tqdm<5,>=4.66; extra == "all"
|
|
58
|
+
Requires-Dist: griffe==0.42.0; extra == "all"
|
|
59
|
+
Requires-Dist: markdown==3.5.2; extra == "all"
|
|
60
|
+
Requires-Dist: markdown-include==0.8.1; extra == "all"
|
|
61
|
+
Requires-Dist: mkdocs-git-revision-date-localized-plugin==1.2.4; extra == "all"
|
|
62
|
+
Requires-Dist: mkdocs-include-markdown-plugin==6.0.4; extra == "all"
|
|
63
|
+
Requires-Dist: mkdocs-material==9.5.13; extra == "all"
|
|
64
|
+
Requires-Dist: mkdocstrings-python==1.9.0; extra == "all"
|
|
65
|
+
Requires-Dist: mkdocs-autorefs==1.3.1; extra == "all"
|
|
66
|
+
Requires-Dist: coverage==7.4.4; extra == "all"
|
|
67
|
+
Requires-Dist: coverage-badge==1.1.0; extra == "all"
|
|
68
|
+
Requires-Dist: flake8==7.0.0; extra == "all"
|
|
69
|
+
Requires-Dist: mypy==1.9.0; extra == "all"
|
|
70
|
+
Requires-Dist: pylint==3.1.0; extra == "all"
|
|
71
|
+
Requires-Dist: pytest==8.1.1; extra == "all"
|
|
72
|
+
Requires-Dist: pytest-cov==4.1.0; extra == "all"
|
|
73
|
+
Requires-Dist: pytest-subtests==0.12.1; extra == "all"
|
|
74
|
+
Requires-Dist: setuptools==69.2.0; extra == "all"
|
|
75
|
+
Requires-Dist: wheel==0.45.1; extra == "all"
|
|
76
|
+
Requires-Dist: twine==6.0.1; extra == "all"
|
|
77
|
+
Dynamic: author
|
|
78
|
+
Dynamic: author-email
|
|
79
|
+
Dynamic: classifier
|
|
80
|
+
Dynamic: description
|
|
81
|
+
Dynamic: description-content-type
|
|
82
|
+
Dynamic: home-page
|
|
83
|
+
Dynamic: keywords
|
|
84
|
+
Dynamic: license-file
|
|
85
|
+
Dynamic: provides-extra
|
|
86
|
+
Dynamic: requires-dist
|
|
87
|
+
Dynamic: requires-python
|
|
88
|
+
Dynamic: summary
|
|
81
89
|
|
|
82
90
|

|
|
83
91
|
|
|
@@ -96,7 +104,7 @@ Source code for STEAM **FiQuS** (**Fi**nite Element **Qu**ench **S**imulator).
|
|
|
96
104
|
|
|
97
105
|
## Using FiQuS
|
|
98
106
|
- M. Wozniak et al, "Influence of Critical Current Distribution on Operation, Quench Detection and Protection of HTS Pancake Coils, in IEEE Transactions on Applied Superconductivity, [10.1109/TASC.2025.3532246](https://doi.org/10.1109/TASC.2025.3532246).
|
|
99
|
-
- Laura AM D
|
|
107
|
+
- Laura AM D’Angelo et al, "Efficient Reduced Magnetic Vector Potential Formulation for the Magnetic Field Simulation of Accelerator Magnets", in IEEE Transactions on Magnetics, vol. 60, no. 3, pp. 1-8, Jan. 2024, Art no. 7000808, doi: [10.1109/TMAG.2024.3352113](https://ieeexplore.ieee.org/abstract/document/10387412).
|
|
100
108
|
- M. Wozniak et al, "Quench Co-Simulation of Canted Cos-Theta Magnets," in IEEE Transactions on Applied Superconductivity, vol. 34, no. 3, pp. 1-5, Dec. 2023, Art no. 4900105, doi: [10.1109/TASC.2023.3338142](https://ieeexplore.ieee.org/document/10337614).
|
|
101
109
|
- M. Wozniak et al, "Fast Quench Propagation Conductor for Protecting Canted Cos-Theta Magnets," in IEEE Transactions on Applied Superconductivity, vol. 33, no. 5, pp. 1-5, Aug. 2023, Art no. 4701705, doi: [10.1109/TASC.2023.3247997](https://ieeexplore.ieee.org/document/10050158).
|
|
102
110
|
- E. Schnaubelt et al, "Parallel-in-Time Integration of Transient Phenomena in No-Insulation Superconducting Coils Using Parareal", accepted for publication in the proceedings of the
|
|
@@ -104,7 +112,7 @@ Scientific Computing in Electrical Engineering (SCEE) 2024 conference, [arXiv:24
|
|
|
104
112
|
|
|
105
113
|
## Mathematical Formulations Forming the Basis of Some FiQuS Modules
|
|
106
114
|
- E. Schnaubelt et al, "Magneto-Thermal Thin Shell Approximation for 3D Finite Element Analysis of No-Insulation Coils", in IEEE Transactions on Applied Superconductivity, vol. 34, no. 3, pp. 1-6, Dec. 2023, Art no. 4700406, doi: [10.1109/TASC.2023.3340648](https://ieeexplore.ieee.org/document/10349801).
|
|
107
|
-
- E. Schnaubelt et al, "Electromagnetic Simulation of No-Insulation Coils Using H
|
|
115
|
+
- E. Schnaubelt et al, "Electromagnetic Simulation of No-Insulation Coils Using H−φ Thin Shell Approximation", in IEEE Transactions on Applied Superconductivity, vol. 33, no. 5, pp. 1-6, Mar. 2023, Art no. 4900906, doi: [10.1109/TASC.2023.3258905](https://ieeexplore.ieee.org/document/10076826).
|
|
108
116
|
- E. Schnaubelt et al, "Thermal thin shell approximation towards finite element quench simulation", in Superconductor Science and Technology, vol. 36, no. 4, Art no. 044004, doi: [10.1088/1361-6668/acbeea](https://iopscience.iop.org/article/10.1088/1361-6668/acbeea).
|
|
109
117
|
- J. Dular et al, "Reduced order hysteretic magnetization model for composite superconductors", in Superconductor Science and Technology, vol. 38, no. 3, Art no. 035017, doi: [10.1088/1361-6668/adb5cc](https://iopscience.iop.org/article/10.1088/1361-6668/adb5cc/meta).
|
|
110
118
|
- J. Dular et al, "A Finite Element a-h-Formulation for the Reduced Order Hysteretic Magnetization Model for Composite Superconductors", in IEEE Transactions on Applied Superconductivity, vol. 35, no. 5, Art no. 8200205, doi: [10.1109/TASC.2025.3528310](https://ieeexplore.ieee.org/abstract/document/10839043).
|
|
@@ -128,13 +136,9 @@ STEAM-FiQuS documentation: https://steam-fiqus.docs.cern.ch/
|
|
|
128
136
|
Coverage report: https://steam-fiqus.docs.cern.ch/htmlcov/
|
|
129
137
|
|
|
130
138
|
# Contact
|
|
131
|
-
steam-
|
|
132
|
-
|
|
133
|
-
# STEAM User Agreement
|
|
134
|
-
By using any software of the STEAM framework, users agree with this document:
|
|
135
|
-
https://edms.cern.ch/document/2024516
|
|
136
|
-
|
|
137
|
-
(Copyright © 2022, CERN, Switzerland. All rights reserved.)
|
|
139
|
+
steam-admins@cern.ch
|
|
138
140
|
|
|
139
141
|
# License
|
|
140
142
|
This project is licensed under the GNU General Public License v3.0. See the LICENSE file for details.
|
|
143
|
+
|
|
144
|
+
(Copyright © 2022, CERN, Switzerland. All rights reserved.)
|
|
@@ -47,13 +47,9 @@ STEAM-FiQuS documentation: https://steam-fiqus.docs.cern.ch/
|
|
|
47
47
|
Coverage report: https://steam-fiqus.docs.cern.ch/htmlcov/
|
|
48
48
|
|
|
49
49
|
# Contact
|
|
50
|
-
steam-
|
|
51
|
-
|
|
52
|
-
# STEAM User Agreement
|
|
53
|
-
By using any software of the STEAM framework, users agree with this document:
|
|
54
|
-
https://edms.cern.ch/document/2024516
|
|
55
|
-
|
|
56
|
-
(Copyright © 2022, CERN, Switzerland. All rights reserved.)
|
|
50
|
+
steam-admins@cern.ch
|
|
57
51
|
|
|
58
52
|
# License
|
|
59
|
-
This project is licensed under the GNU General Public License v3.0. See the LICENSE file for details.
|
|
53
|
+
This project is licensed under the GNU General Public License v3.0. See the LICENSE file for details.
|
|
54
|
+
|
|
55
|
+
(Copyright © 2022, CERN, Switzerland. All rights reserved.)
|
|
@@ -27,6 +27,7 @@ from fiqus.mains.MainPancake3D import MainPancake3D
|
|
|
27
27
|
from fiqus.mains.MainConductorAC_Strand import MainConductorAC_Strand
|
|
28
28
|
from fiqus.mains.MainHomogenizedConductor import MainHomogenizedConductor
|
|
29
29
|
from fiqus.mains.MainConductorAC_Rutherford import MainConductorAC_Rutherford
|
|
30
|
+
from fiqus.mains.MainConductorAC_CC import MainConductorAC_CC
|
|
30
31
|
|
|
31
32
|
class MainFiQuS:
|
|
32
33
|
"""
|
|
@@ -92,6 +93,8 @@ class MainFiQuS:
|
|
|
92
93
|
self.main_magnet = MainPancake3D(fdm=self.fdm, verbose=verbose)
|
|
93
94
|
elif self.fdm.magnet.type == "CACStrand":
|
|
94
95
|
self.main_magnet = MainConductorAC_Strand(fdm=self.fdm, inputs_folder_path=pathlib.Path(input_file_path).parent, outputs_folder_path=model_folder, verbose=verbose)
|
|
96
|
+
elif self.fdm.magnet.type == "CACCC":
|
|
97
|
+
self.main_magnet = MainConductorAC_CC(fdm=self.fdm, inputs_folder_path=pathlib.Path(input_file_path).parent, verbose=verbose)
|
|
95
98
|
elif self.fdm.magnet.type == "HomogenizedConductor":
|
|
96
99
|
self.main_magnet = MainHomogenizedConductor(fdm=self.fdm, inputs_folder_path=pathlib.Path(input_file_path).parent, outputs_folder_path=model_folder, verbose=verbose)
|
|
97
100
|
elif self.fdm.magnet.type == "CACRutherford":
|
|
@@ -100,12 +103,7 @@ class MainFiQuS:
|
|
|
100
103
|
self.file_name = os.path.basename(input_file_path)[:-5]
|
|
101
104
|
if not self.fdm.magnet.geometry.geom_file_path:
|
|
102
105
|
self.fdm.magnet.geometry.geom_file_path = f"{input_file_path[:-5]}.geom"
|
|
103
|
-
self.main_magnet = MainMultipole(
|
|
104
|
-
fdm=self.fdm,
|
|
105
|
-
rgd_path=self.fdm.magnet.geometry.geom_file_path,
|
|
106
|
-
verbose=verbose,
|
|
107
|
-
)
|
|
108
|
-
|
|
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)
|
|
109
107
|
else:
|
|
110
108
|
raise ValueError(
|
|
111
109
|
f"FiQuS does not support magnet type: {self.fdm.magnet.type}!"
|
|
@@ -394,8 +392,6 @@ class MainFiQuS:
|
|
|
394
392
|
self.summary["solution_time"] = (
|
|
395
393
|
self.main_magnet.solve_and_postprocess_getdp(gui=self.main_magnet.fdm.run.launch_gui)
|
|
396
394
|
)
|
|
397
|
-
elif self.fdm.run.type == "postprocess_veusz":
|
|
398
|
-
self.main_magnet.post_process_veusz(gui=self.main_magnet.fdm.run.launch_gui)
|
|
399
395
|
elif self.fdm.run.type == "post_process_getdp_only":
|
|
400
396
|
self.main_magnet.post_process_getdp(gui=self.main_magnet.fdm.run.launch_gui)
|
|
401
397
|
elif self.fdm.run.type == "post_process_python_only":
|
|
@@ -116,6 +116,27 @@ class ProDefined(BaseModel):
|
|
|
116
116
|
v: Optional[float] = None # [-]
|
|
117
117
|
B0: Optional[float] = None # [-]
|
|
118
118
|
|
|
119
|
+
class Succi_fixed(BaseModel):
|
|
120
|
+
"""
|
|
121
|
+
Level 3: Class for cable Succi's YBCO fit
|
|
122
|
+
"""
|
|
123
|
+
|
|
124
|
+
type: Literal["Succi_fixed"]
|
|
125
|
+
Jc_factor: Optional[float] = Field(gt=0.0,
|
|
126
|
+
default = 1.0,
|
|
127
|
+
description = "This factor multiplies the Jc returned by the function."
|
|
128
|
+
)
|
|
129
|
+
# all other parameters of the Succi fit are hardcoded
|
|
130
|
+
class Fujikura(BaseModel):
|
|
131
|
+
"""
|
|
132
|
+
Level 3: Class for cable Fujikura's fit
|
|
133
|
+
"""
|
|
134
|
+
|
|
135
|
+
type: Literal["Fujikura"]
|
|
136
|
+
Jc_factor: Optional[float] = Field(gt=0.0,
|
|
137
|
+
default = 1.0,
|
|
138
|
+
description = "This factor multiplies the Jc returned by the function."
|
|
139
|
+
)
|
|
119
140
|
|
|
120
141
|
class BSCCO_2212_LBNL(BaseModel):
|
|
121
142
|
"""
|
|
@@ -223,6 +244,31 @@ class Ribbon(BaseModel):
|
|
|
223
244
|
material_outer_voids: Optional[str] = None
|
|
224
245
|
material_core: Optional[str] = None
|
|
225
246
|
|
|
247
|
+
class TSTC(BaseModel):
|
|
248
|
+
"""
|
|
249
|
+
Twisted Stacked-Tape Cable (TSTC) type:
|
|
250
|
+
"""
|
|
251
|
+
type: Literal["TSTC"]
|
|
252
|
+
stack_layout: Optional[List[Literal[-1,0,1]]] = Field(default=None,description="2D: Tape stack layout ordered TOP->BOTTOM. The numbers represent: 1 = a CC tape, -1 = a flipped CC tape, 0 = a shunt.")
|
|
253
|
+
nb_tapes: Optional[int] = Field(default=None, description="3D: Number of tapes in the stack")
|
|
254
|
+
tape_width: Optional[float] = Field(default=None, description="3D and 2D: Width of each tape")
|
|
255
|
+
tape_thickness: Optional[float] = Field(default=None, description="3D and 2D: Thickness of each tape")
|
|
256
|
+
twist_pitch: Optional[float] = Field(default=None, description="3D: Length over which tapes are twisted by full rotation")
|
|
257
|
+
pitch_fraction: Optional[float] = Field(default=1.0, description="3D: Fraction of the twist pitch to be modelled (1.0 = full pitch, 0.5 = half pitch, etc.)")
|
|
258
|
+
bare_cable_width: Optional[float] = Field(default=None, description="Cable width, typically the same as CC width")
|
|
259
|
+
bare_cable_height_low: Optional[float] = Field(default=None, description="Narrow end (if applicable) cable height (thickness), typically the same as (CC thickness + Cu stabilizer thickness) * number of tapes.")
|
|
260
|
+
bare_cable_height_high: Optional[float] = Field(default=None, description="Wide end (if applicable) cable height (thickness), typically the same as (CC thickness + Cu stabilizer thickness) * number of tapes.")
|
|
261
|
+
bare_cable_height_mean: Optional[float] = Field(default=None, description="Average (if applicable) cable height (thickness), typically the same as (CC thickness + Cu stabilizer thickness) * number of tapes.")
|
|
262
|
+
th_insulation_along_width: Optional[float] = Field(default=None, description="Insulation thickness along the width ")
|
|
263
|
+
th_insulation_along_height: Optional[float] = Field(default=None, description="Insulation thickness along the height ")
|
|
264
|
+
f_superconductor: Optional[float] = Field(default=None, description="Fraction of superconductor related to the total area of the cable (winding cell)")
|
|
265
|
+
f_stabilizer: Optional[float] = Field(default=None, description="Fraction of stabilizer related to the total area of the cable (winding cell)")
|
|
266
|
+
f_silver: Optional[float] = Field(default=None, description="Fraction of silver related to the total area of the cable (winding cell)")
|
|
267
|
+
f_substrate: Optional[float] = Field(default=None, description="Fraction of substrate (including buffer layers and silver overlay) related to the total area of the cable (winding cell)")
|
|
268
|
+
f_shunt: Optional[float] = Field(default=None, description="Fraction of substrate (including buffer layers and silver overlay) related to the total area of the cable (winding cell)")
|
|
269
|
+
f_insulation: Optional[float] = Field(default=None, description="Fraction of cable insulation related to the total area of the cable (winding cell)")
|
|
270
|
+
f_inner_voids: Optional[float] = Field(default=None, description="Fraction of additional material (typically insulation) related to the total area of the cable (winding cell)")
|
|
271
|
+
f_outer_voids: Optional[float] = Field(default=None, description="Fraction of additional material (typically helium impregnating the windings) related to the total area of the cable (winding cell)")
|
|
226
272
|
|
|
227
273
|
# ------------------- Conductors ---------------------------#
|
|
228
274
|
|
|
@@ -275,7 +321,7 @@ class Round(BaseModel):
|
|
|
275
321
|
k_material_superconductor: Optional[Union[str, float]] = Field(default=None, description="Thermal conductivity of the superconductor.")
|
|
276
322
|
Cv_material_superconductor: Optional[Union[str, float]] = Field(default=None, description="Material function for specific heat of the superconductor.")
|
|
277
323
|
# -- Stabilizer parameters -- #
|
|
278
|
-
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.")
|
|
279
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.")
|
|
280
326
|
rho_material_holes: Optional[Union[str, float]] = Field(default=None, description="Material function for resistivity of the holes in the filaments."
|
|
281
327
|
"Constant resistivity can be given as float, material name as a string or None or 0.0 to use 'air' in the holes.")
|
|
@@ -316,18 +362,69 @@ class Rectangular(BaseModel):
|
|
|
316
362
|
k_material_superconductor: Optional[Union[str, float]] = Field(default=None, description="Thermal conductivity of the superconductor.")
|
|
317
363
|
Cv_material_superconductor: Optional[Union[str, float]] = Field(default=None, description="Material function for specific heat of the superconductor.")
|
|
318
364
|
# -- Stabilizer parameters -- #
|
|
319
|
-
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.")
|
|
320
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.")
|
|
321
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)")
|
|
322
370
|
T_ref_RRR_high: Optional[float] = Field(default=None, description="Upper reference temperature for RRR measurements.")
|
|
323
371
|
T_ref_RRR_low: Optional[float] = Field(default=None, description="Lower reference temperature for RRR measurements.")
|
|
324
|
-
k_material_stabilizer: Optional[Union[str, float]] = Field(default=None, description="Thermal conductivity of the stabilizer.")
|
|
325
|
-
Cv_material_stabilizer: Optional[Union[str, float]] = Field(default=None, description="Material function for specific heat of the stabilizer.")
|
|
326
|
-
number_of_filaments: Optional[int] = None
|
|
327
372
|
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
373
|
+
class Copper_thickness(BaseModel):
|
|
374
|
+
left: Optional[float] = Field(default=None, description="On the left side.")
|
|
375
|
+
right: Optional[float] = Field(default=None, description="On the right side.")
|
|
376
|
+
top: Optional[float] = Field(default=None, description="On the top side.")
|
|
377
|
+
bottom: Optional[float] = Field(default=None, description="On the bottom side.")
|
|
378
|
+
|
|
379
|
+
class Silver_thickness(BaseModel):
|
|
380
|
+
top: Optional[float] = Field(default=None, description="On the top side.")
|
|
381
|
+
bottom: Optional[float] = Field(default=None, description="On the bottom side.")
|
|
382
|
+
|
|
383
|
+
class CC(BaseModel):
|
|
384
|
+
"""
|
|
385
|
+
Level 2: Class for coated conductor parameters
|
|
386
|
+
"""
|
|
387
|
+
type: Literal["CC"]
|
|
388
|
+
|
|
389
|
+
# Core layer sizes
|
|
390
|
+
HTS_thickness: Optional[float] = Field(default=None, description="HTS thickness in meters.")
|
|
391
|
+
HTS_width: Optional[float] = Field(default=None, description="HTS width in meters.")
|
|
392
|
+
number_of_filaments: Optional[int] = Field(default=1, ge=1, description="Number of HTS filaments. If 1, no striation case")
|
|
393
|
+
gap_between_filaments: Optional[float] = Field(default=None, description="Gap between HTS filaments in meters. Only applies when number_of_filaments > 1.")
|
|
394
|
+
substrate_thickness: Optional[float] = Field(default=None, description="Substrate layer thickness in meters.")
|
|
395
|
+
|
|
396
|
+
# Plating/stabilizer
|
|
397
|
+
copper_thickness: Copper_thickness = Field(default=Copper_thickness(), description="Copper thickness in meters")
|
|
398
|
+
silver_thickness: Silver_thickness = Field(default=Silver_thickness(), description="Silver thickness in meters")
|
|
399
|
+
|
|
400
|
+
# -- Superconductor parameters -- #
|
|
401
|
+
material_superconductor: Optional[str] = Field(default=None, description="Material of the superconductor. E.g. NbTi, Nb3Sn, etc.")
|
|
402
|
+
n_value_superconductor: Optional[float] = Field(default=None, description="n value of the superconductor (for power law fit).")
|
|
403
|
+
ec_superconductor: Optional[float] = Field(default=None, description="Critical electric field of the superconductor.")
|
|
404
|
+
minimum_jc_fraction: Optional[float] = Field(gt=0, le=1, default=None, description="Fraction of Jc(minimum_jc_field, T) to use as minimum Jc for the power law"
|
|
405
|
+
" fit to avoid division by zero when Jc(B_local, T) decreases to zero."
|
|
406
|
+
"Typical value would be 0.001 (so the Jc_minimum is 0.1% of Jc(minimum_jc_field, T))"
|
|
407
|
+
"This fraction is only allowed to be greater than 0.0 and less than or equal to 1.0")
|
|
408
|
+
minimum_jc_field: Optional[float] = Field(default=None, description="Magnetic flux density in tesla used for calculation of Jc(minimum_jc_field, T)."
|
|
409
|
+
"This gets multiplied by minimum_jc_fraction and used as minimum Jc for the power law")
|
|
410
|
+
k_material_superconductor: Optional[Union[str, float]] = Field(default=None, description="Thermal conductivity of the superconductor.")
|
|
411
|
+
Cv_material_superconductor: Optional[Union[str, float]] = Field(default=None, description="Material function for specific heat of the superconductor.")
|
|
412
|
+
k_material_stabilizer: Optional[Union[str, float]] = Field(default=None, description="Thermal conductivity of the stabilizer, typically copper.")
|
|
413
|
+
Cv_material_stabilizer: Optional[Union[str, float]] = Field(default=None, description="Material function for specific heat of the stabilizer, typically copper.")
|
|
414
|
+
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.")
|
|
415
|
+
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)")
|
|
416
|
+
T_ref_RRR_high: Optional[float] = Field(default=None, description="Upper reference temperature for RRR measurements.")
|
|
417
|
+
T_ref_RRR_low: Optional[float] = Field(default=None, description="Lower reference temperature for RRR measurements.")
|
|
418
|
+
k_material_silver: Optional[Union[str, float]] = Field(default=None, description="Thermal conductivity of the silver")
|
|
419
|
+
Cv_material_silver: Optional[Union[str, float]] = Field(default=None, description="Material function for specific heat of the silver")
|
|
420
|
+
rho_material_silver: Optional[Union[str, float]] = Field(default=None, description="Material function for resistivity of the silver. Constant resistivity can be given as float.")
|
|
421
|
+
RRR_silver: Optional[Union[float, List[float]]] = Field(default=None, description="Residual resistivity ratio of the silver. If a list of RRR is provided it needs to match in length the number of matrix regions in the geometry (typically 3)")
|
|
422
|
+
T_ref_RRR_high_silver: Optional[float] = Field(default=None, description="Upper reference temperature for RRR measurements for silver.")
|
|
423
|
+
T_ref_RRR_low_silver: Optional[float] = Field(default=None, description="Lower reference temperature for RRR measurements for silver.")
|
|
424
|
+
rho_material_substrate: Optional[Union[str, float]] = Field(default=None, description="Material function for resistivity of the substrate. Constant resistivity can be given as float.")
|
|
425
|
+
k_material_substrate: Optional[Union[str, float]] = Field(default=None, description="Thermal conductivity of the substrate.")
|
|
426
|
+
Cv_material_substrate: Optional[Union[str, float]] = Field(default=None, description="Material function for specific heat of the substrate.")
|
|
427
|
+
|
|
331
428
|
class Homogenized(BaseModel):
|
|
332
429
|
"""
|
|
333
430
|
Level 2: Class for homogenized strand parameters, to be used in the Rutherford cable model
|
|
@@ -349,10 +446,10 @@ class Conductor(BaseModel):
|
|
|
349
446
|
version: Optional[str] = None
|
|
350
447
|
case: Optional[str] = None
|
|
351
448
|
state: Optional[str] = None
|
|
352
|
-
cable: Union[Rutherford, Mono, Ribbon] = {
|
|
449
|
+
cable: Union[Rutherford, Mono, Ribbon, TSTC] = {
|
|
353
450
|
"type": "Rutherford"
|
|
354
451
|
} # TODO: Busbar, Rope, Roebel, CORC, TSTC, CICC
|
|
355
|
-
strand: Union[Round, Rectangular, Homogenized] = {"type": "Round"} # TODO: Tape, WIC
|
|
356
|
-
Jc_fit: Union[ConstantJc, Bottura, CUDI1, CUDI3, Summers, Bordini, Nb3Sn_HFM, BSCCO_2212_LBNL, Ic_A_NbTi, ProDefined] = {
|
|
452
|
+
strand: Union[Round, Rectangular, CC, Homogenized] = {"type": "Round"} # TODO: Tape, WIC
|
|
453
|
+
Jc_fit: Union[ConstantJc, Bottura, CUDI1, CUDI3, Summers, Bordini, Nb3Sn_HFM, BSCCO_2212_LBNL, Ic_A_NbTi, ProDefined, Succi_fixed, Fujikura] = {
|
|
357
454
|
"type": "CUDI1"
|
|
358
455
|
} # TODO: CUDI other numbers? , Roxie?
|
|
@@ -9,6 +9,7 @@ from fiqus.data.DataFiQuSPancake3D import Pancake3D
|
|
|
9
9
|
from fiqus.data.DataFiQuSConductorAC_Strand import CACStrand
|
|
10
10
|
from fiqus.data.DataFiQuSHomogenizedConductor import HomogenizedConductor
|
|
11
11
|
from fiqus.data.DataFiQuSConductorAC_Rutherford import CACRutherford
|
|
12
|
+
from fiqus.data.DataFiQuSConductorAC_CC import CACCC
|
|
12
13
|
|
|
13
14
|
class RunFiQuS(BaseModel):
|
|
14
15
|
"""
|
|
@@ -144,7 +145,7 @@ class FDM(BaseModel):
|
|
|
144
145
|
|
|
145
146
|
general: GeneralFiQuS = GeneralFiQuS()
|
|
146
147
|
run: RunFiQuS = RunFiQuS()
|
|
147
|
-
magnet: Union[Multipole, CCT, Pancake3D, CACStrand, HomogenizedConductor, CACRutherford] = Field(
|
|
148
|
+
magnet: Union[Multipole, CCT, Pancake3D, CACStrand, HomogenizedConductor, CACRutherford, CACCC] = Field(
|
|
148
149
|
default=Multipole(), discriminator="type"
|
|
149
150
|
)
|
|
150
151
|
circuit: Circuit_Class = Circuit_Class()
|