Repository navigation
♻️ Move 'dcond' variable into SuperconductorModel - #4644
chris-ashe wants to merge 2 commits into
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #4644 +/- ##
==========================================
- Coverage 49.97% 49.79% -0.19%
==========================================
Files 151 151
Lines 30270 30271 +1
==========================================
- Hits 15128 15073 -55
- Misses 15142 15198 +56 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
|
Can I ask someone from @ukaea/process-model-review to check the new superconductor density values. I feel some of the values before were gravely wrong. |
kj5248
left a comment
There was a problem hiding this comment.
Change seems like a good one but why are the density values changed from the dcond values? Probably need some justification for these value changes, even if just a source for the new density values.
Please see the comment I made when opening the PR (#4644 (comment)). Doing a quick google search of the values gives very different results |
For large differences I assume it is likely the difference between the density of the bulk material vs the density of a cable making use of the bulk material? Smaller differences are probably just how even the mixture is. For NbTi to get 6.4 g/cm3 it is a mix of high density Nb and lower density Ti so varying the mix can lead to the variations for the composite around the 6.4 mark. Like you I am really struggling to find what the previous density values correlate to though. For 6080 I only found liquid gallium which is used in MHD, but seeems weird. However for 8500 you get REBCO tape rather than the ceramic layer itself. This paper has REBCO tape with that density: Study of a Superconducting Magnetic Diverter for the ATHENA X-Ray Space Telescope, DOI:10.1109/TASC.2018.2811862. |
This pull request refactors how superconductor material densities are handled throughout the codebase. Instead of using the
dcondarray for density values, the code now retrieves densities directly from theSuperconductorModel. This change improves maintainability and clarity by centralizing material properties. The update also removes thedcondfield from data structures, input definitions, and tests, and updates expected test values to reflect the new density values.The most important changes are:
Core logic and data structure updates
dconddensity array for superconductor materials with lookups fromSuperconductorModel(...).material.densityin all relevant models and calculations, including TF coil, PF coil, and cost models.dcondfield from theTFDatadata structure and from the input variable definitions.Superconductor material definition
SuperconductorMaterialenum to include density as a property, and added adensitydynamic attribute for direct access.Test suite updates
dcondfrom test parameter definitions, monkeypatching, and test logic intest_costs_1990.py,test_pfcoil.py, andtest_sctfcoil.py.Test value updates
SuperconductorModel, ensuring consistency with the refactored logic.These changes centralize material properties for superconductors, reduce redundancy, and make the codebase easier to maintain and extend.…eferences
Description
Checklist
I confirm that I have completed the following checks: