ukaea / PROCESS

PROCESS is a systems code at UKAEA that calculates in a self-consistent manner the parameters of a fusion power plant with a specified performance, ensuring that its operating limits are not violated, and with the option to optimise to a given function of these parameters.
https://ukaea.github.io/PROCESS/
MIT License
36 stars 11 forks source link

New and improved Nb_Ti model on the SBLCM_develop branch #948

Closed jonmaddock closed 1 year ago

jonmaddock commented 5 years ago

In GitLab by @schislet on Oct 10, 2019, 11:51

I have written a new Nb-Ti subroutine intended to supersede the outdated jcrit_nbti that is currently in use. The extant model is based on an old scaling law that has not been used by the superconductivity community for decades. It was also fit to old strands, which have different upper critical fields (Bc2,0) and critical current densities (Jc(B,T)) from ITER specification Nb-Ti strands. The new model is based on the "Durham scaling law" (itself based on Ginzburg-Landau theory, rather than the pure empirical derivation of the extant model), which has been fit to Jc(B,T) data from 5 ITER specification strands (see the attached DRAFT document - I shall update to a more formal version soon). The new model also incorporates Nb-Ti's strain dependence for completeness. The strain scaling was derived from measurements shown in the attached paper. The new model is a far more accurate representation of the critical surface of ITER specification Nb-Ti.



costs_supercond.f90 - A copy of costs.f90. Added costs_supercond function. Changed acc2221 so that the cost of superconductors is calculated in $/kAm (the industry standard). When this is used in the input file, the variable 'fsupco' should be adjusted for the particular superconductor(s) in use: 1.0 for NbTi, 6.4 for Nb3Sn and 80.6 for REBCO (these are subject to change as the technology develops but are Durham's current recommendations). 

superconductors.f90 - added the subroutine GL_nbti (described above)

sctfcoil.f90 - added case(7) for GL_nbti

pfcoil.f90 - added case(7) for GL_nbti. Added secant solver for GL_nbti (already in use for WST and the extant NbTi models)

caller.f90 - added call costs_supercond_module

input.f90 - added fsupco, fjcrit, fbcupper. fjcrit allows for factor increases in Jc in the Nb-Ti model. fbcupper defines the zero-temperature upper critical field of the Nb-Ti model (nominally 14.86 T).

global_variables.f90 - added fsupco, fjcrit, fbcupper

[20190110Simon_EUCAS_2019.pdf](https://git.ccfe.ac.uk/process/process/uploads/403d3491716f0efee12697a895de5aab/20190110Simon_EUCAS_2019.pdf)
jonmaddock commented 5 years ago

In GitLab by @mkovari on Oct 11, 2019, 09:10

I notice that the parameter values in the new code are quite different from those in the attached paper. Can you upload a document showing the values that you have used?

Also something odd has happened to the Fit_summary_draft.docx.

jonmaddock commented 5 years ago

In GitLab by @schislet on Oct 11, 2019, 10:11

Hi Michael, the docx is working fine for me but i'll email you another version. The parameter values are listed at the end of the document.

The parameter values in the paper are for a different Nb-Ti strand (a single filament strand for more accurate strain dependence measurements). Consequently it's Jc nor Bc2 are particularly high, and certainly not at the standard of the ITER Nb-Ti strands. The parameter values in the new code, as shown in the .docx are an average of the fit parameters as calculated for 5 ITER strands.

jonmaddock commented 5 years ago

In GitLab by @schislet on Oct 11, 2019, 10:13

Fit_summary_draft.doc

jonmaddock commented 5 years ago

In GitLab by @schislet on Oct 24, 2019, 14:20

Formal accompanying document with explanations of the scaling law and the data from which the parameters were derived.Nb-Ti_update_accompanying_document.docx

jonmaddock commented 4 years ago

In GitLab by @schislet on Nov 15, 2019, 15:11

Updated accompanying document. This supersedes the previous documents.

20191115_Nb-Ti_update_v0.4.docx

jonmaddock commented 4 years ago

In GitLab by @mkovari on Nov 15, 2019, 15:27

Thanks.

Would you like to upload a clean version v1.0 without comments?

All the best, Michael

jonmaddock commented 4 years ago

In GitLab by @schislet on Nov 15, 2019, 15:41

Finalised accompanying document.

20191115_Nb-Ti_update_v1.0.docx

jonmaddock commented 4 years ago

In GitLab by @schislet on Nov 18, 2019, 16:35

Looking through the global variables files. The default PFcoil choice is ITER Nb3Sn (isumatpf = 1). Is this intended or an oversight?

It also means that CFETR, FNSF, and the stellerator inputs in the test suite use ITER Nb3Sn for their PF coils - as they use the default...

In my branch I have updated the default value to isumatpf = 7 (the Durham GL_nbti model) model. ( I will commit and push these changes tomorrow - 19/11/19).

jonmaddock commented 4 years ago

In GitLab by @jmorris-uk on Jan 28, 2020, 22:08

Simon I've created a new branch for this issue off your existing one. The CI system will now automatically run on the new branch. You should move over to using the new branch so each time you push your changes to the repo the CI system will run.

Message me if you have any questions.

The branch name is issue-947-new-nbti

jonmaddock commented 4 years ago

In GitLab by @mkovari on Apr 6, 2020, 09:22

@schislet , I notice this issue is still open. I remember there were various problems with merging, but I don't remember what the final resolution was. Could you add a note here explaining what you have done and whether this issue needs further work? Thanks.

jonmaddock commented 4 years ago

In GitLab by @schislet on Apr 6, 2020, 09:36

@mkovari I hadn't merged this branch in quite a long time, and it had got to the stage where merging develop into it was causing more issues than it was worth time correcting. In order to rectify the merger issue I essentially started from scratch. I created a new branch from Develop on the 13th March - Durham_Nb-ti. I then added the Durham Ginzburg-Landau Nb-Ti model to that new branch, merged develop into it and submitted a merge request within 48 hours.

jonmaddock commented 4 years ago

In GitLab by @mkovari on Apr 6, 2020, 09:41

What do you want to do with this issue? -

Close this issue and create a new issue with a link to the corresponding branch, or
Add a link to the relevant branch here and then update and close this issue?

jonmaddock commented 4 years ago

In GitLab by @schislet on Apr 6, 2020, 09:44

@mkovari I'll close this issue. At the moment I only have a merge request for the branch with the new model on it - would you like me to make an issue as well? https://git.ccfe.ac.uk/process/process/merge_requests/242

jonmaddock commented 4 years ago

In GitLab by @mkovari on Apr 6, 2020, 09:54

Yes, I think so - there should be an issue that documents what you have done, and mentions the relevant branch and merge request. Once the branch has been merged it can be removed and the issue can be closed.

This issue will then be obsolete and can be updated with a link to the new issue and then closed.

Have I understood things correcctly?

jonmaddock commented 4 years ago

In GitLab by @schislet on Apr 6, 2020, 10:04

Yes that's correct. I'll just merge develop into the Durham_Nb-Ti so it's up to date and do that.

jonmaddock commented 4 years ago

In GitLab by @schislet on Apr 6, 2020, 11:44

closed