Skip to content

Commit ae192f0

Browse files
committed
update FPP case
1 parent 9fce36a commit ae192f0

File tree

1 file changed

+25
-14
lines changed

1 file changed

+25
-14
lines changed

src/cases/FPP.jl

Lines changed: 25 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
11
"""
2-
case_parameters(::Type{Val{:FPP}})::Tuple{ParametersAllInits,ParametersAllActors}
2+
case_parameters(:FPP; flux_matcher::Bool=false)
33
44
GA's FPP design
55
"""
6-
function case_parameters(::Type{Val{:FPP}})::Tuple{ParametersAllInits,ParametersAllActors}
7-
ini = ParametersInits(; n_ec=1)
6+
function case_parameters(::Type{Val{:FPP}}; flux_matcher::Bool=false)::Tuple{ParametersAllInits,ParametersAllActors}
7+
n_ec = 6
8+
ini = ParametersInits(; n_ec)
89
act = ParametersActors()
910

1011
#### INI ####
@@ -59,21 +60,21 @@ function case_parameters(::Type{Val{:FPP}})::Tuple{ParametersAllInits,Parameters
5960
ini.equilibrium.δ = 0.7
6061
ini.equilibrium.ζ = 0.1
6162
ini.equilibrium.𝚶 = 0.1
62-
ini.equilibrium.pressure_core = 1.2e5
63+
ini.equilibrium.pressure_core = 1.e6
6364
ini.equilibrium.ip = 8.0e6
6465
ini.equilibrium.xpoints = :lower
6566
ini.equilibrium.boundary_from = :scalars
6667

67-
ini.core_profiles.ne_setting = :greenwald_fraction_ped
68-
ini.core_profiles.ne_value = 0.1
68+
ini.core_profiles.ne_setting = :greenwald_fraction
69+
ini.core_profiles.ne_value = 0.9
6970
ini.core_profiles.T_ratio = 0.825
7071
ini.core_profiles.T_shaping = 2.5
7172
ini.core_profiles.n_shaping = 2.5
72-
ini.core_profiles.zeff = 2.0
73+
ini.core_profiles.zeff = 1.5
7374
ini.core_profiles.rot_core = 0.0
7475
ini.core_profiles.bulk = :DT
7576
ini.core_profiles.impurity = :Kr
76-
ini.core_profiles.helium_fraction = 0.04
77+
ini.core_profiles.helium_fraction = 0.01
7778

7879
ini.pf_active.n_coils_inside = 0
7980
ini.pf_active.n_coils_outside = 5
@@ -86,9 +87,14 @@ function case_parameters(::Type{Val{:FPP}})::Tuple{ParametersAllInits,Parameters
8687
ini.oh.n_coils = 6
8788
ini.oh.technology = :rebco
8889

89-
ini.ec_launcher[1].power_launched = 2.5e7
90-
ini.ec_launcher[1].efficiency_conversion = 0.45
91-
ini.ec_launcher[1].efficiency_transmission = 0.8
90+
total_ec_power = 90E6
91+
x = range(0.1, 0.8, n_ec)
92+
for (k, rho_0) in enumerate(x)
93+
ini.ec_launcher[k].power_launched = total_ec_power * rho_0^2 / sum(x)
94+
ini.ec_launcher[k].efficiency_conversion = 0.45
95+
ini.ec_launcher[k].efficiency_transmission = 0.8
96+
ini.ec_launcher[k].rho_0 = rho_0
97+
end
9298

9399
ini.requirements.power_electric_net = 2.0e8
94100
ini.requirements.flattop_duration = 36000.0
@@ -98,9 +104,14 @@ function case_parameters(::Type{Val{:FPP}})::Tuple{ParametersAllInits,Parameters
98104

99105
act.ActorStabilityLimits.models = [:q95_gt_2, :κ_controllability]
100106

101-
act.ActorCoreTransport.model=:none
102-
103-
act.ActorEquilibrium.model = :TEQUILA
107+
act.ActorFluxMatcher.max_iterations = 500
108+
act.ActorFluxMatcher.verbose = true
109+
act.ActorTGLF.electromagnetic = true
110+
act.ActorTGLF.sat_rule = :sat0
111+
act.ActorTGLF.model = :TJLF
112+
if !flux_matcher
113+
act.ActorCoreTransport.model = :none
114+
end
104115

105116
# finalize
106117
set_new_base!(ini)

0 commit comments

Comments
 (0)