Skip to content

Commit

Permalink
Merge pull request #77 from PrincetonUniversity/coilsep1
Browse files Browse the repository at this point in the history
Coilsep1
  • Loading branch information
Caoxiang Zhu authored Jul 9, 2021
2 parents 125ef66 + dd73264 commit 370e8ca
Show file tree
Hide file tree
Showing 30 changed files with 2,624 additions and 571 deletions.
86 changes: 86 additions & 0 deletions examples/aten/aten.focus

Large diffs are not rendered by default.

66 changes: 66 additions & 0 deletions examples/aten/aten.input
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
&focusin
IsQuiet = 0
IsSymmetric = 2

case_surface = 0
knotsurf = 0.200D-00
ellipticity = 0.000D+00
Nteta = 128
Nzeta = 128

case_init = 0
case_coils = 1
Ncoils = 48
init_current = 1.000D+06
init_radius = 0.300D+00
IsVaryCurrent = 0
IsVaryGeometry = 1
NFcoil = 32
Nseg = 384

case_optimize = 1
IsNormalize = 0
IsNormWeight = 0
case_bnormal = 1
case_length = 3
case_curv = 4
curv_k0 = 1.000D+01
curv_alpha = 3.000D-02
weight_bnorm = 1.000D+00
weight_bharm = 0.000D+00
weight_tflux = 0.000D-00
target_tflux = 0.000D+00
weight_ttlen = 1.000D+00
target_length = 2.400D+00
weight_specw = 0.000D+00
weight_curv = 1.000D-00
length_delta = 1.000D-01
weight_ccsep = 1.000D+00
ccsep_alpha = 1.500D+02
r_delta = 1.000D-01
penfun_ccsep = 1
ccsep_beta = 2.000D+00
ccsep_skip = 1
penfun_curv = 1
curv_k1 = 0.000D+00
curv_k1len = 0
curv_beta = 2.000D+00
curv_gamma = 1.000D+00
curv_sigma = 0.000D+00
weight_nissin = 1.000D+00
penfun_nissin = 2
nissin_alpha = 1.000D-06
nissin_beta = 2.000D+00
nissin0 = 0.000D+00

CG_maxiter = 50
CG_xtol = 1.000D-10
CG_wolfe_c1 = 1.000D-04
CG_wolfe_c2 = 0.9

case_postproc = 1
save_freq = 10
save_coils = 1
save_harmonics = 1
save_filaments = 0
/
145 changes: 145 additions & 0 deletions examples/aten/log
Original file line number Diff line number Diff line change
@@ -0,0 +1,145 @@
--------------------- FOCUS v0.14.06 ------------------------------
focus : Begin execution with ncpu = 32
initial : machine_prec = 2.22045E-16 ; sqrtmachprec = 1.49012E-08
-----------INPUT NAMELIST------------------------------------
initial : Read namelist focusin from : aten.input
: Read plasma boundary from : plasma.boundary
: Read initial coils from : aten.focus(Parameters only)
: IsQuiet = 0 ; Output essential information.
: IsSymmetric = 2 ; Periodicity and stellarator symmetry are both enforced.
: case_surface = 0 ; Read VMEC-like Fourier harmonics for plasma boundary.
: case_optimize = 1 ; Gradient-based optimizations will be performed.
: Nonlinear Conjugate Gradient method will be used, maxiter= 50
: IsNormalize = 0 ; No normalization on coil parameters.
: IsNormWeight = 0 ; No normalization on weights for constraints.
: case_bnormal = 1 ; Bn normalized to |B|.
: bharm_jsurf = 1 ; No normalization on Bn harmonics.
: case_length = 3 ; Modified quadratic length penalty.
: penfun_nissin = 2 ; Polynomial penalty function.
: case_postproc = 1 ; Coil evaluations will be performed.
outputs : HDF5 outputs are saved in : focus_aten.h5
outputs : Optimizated coils are saved in : aten.focus ; aten.coils
-----------Reading surface-----------------------------------
surface : The surface plasma.boundary will be discretized in 128 X 128 elements.
: Nfou = 18 ; Nfp = 4 ; NBnf = 0 ;
: Enclosed total surface volume = 3.55940E+00 m^3 ; area = 3.26876E+01 m^2.
: The theta angle used is counter-clockwise.
-----------INITIALIZE COILS----------------------------------
rdcoils : identified 6 unique coils in aten.focus ;
: 6 fixed currents ; 0 fixed geometries.
focus : Initialization took 1.64676E-02 S.
-----------OPTIMIZATIONS-------------------------------------
solvers : Total number of DOF is 1170
: Initial weights are:
: weight_bnorm = 1.00000E+00; case_bnormal = 1
: weight_ttlen = 1.00000E+00; case_length = 3
: target_length = 2.40000E+00; length_delta = 1.00000E-01
: weight_curv = 1.00000E+00; case_curv = 4; penfun_curv = 1
: curv_alpha = 3.00000E-02; curv_beta = 2.00000E+00
: curv_gamma = 1.00000E+00; curv_sigma = 0.00000E+00
: curv_k0 = 1.00000E+01; curv_k1 = 0.00000E+00; curv_k1len = 0
: weight_nissin = 1.00000E+00; penfun_nissin = 2; nissin0 = 0.00000E+00
: nissin_alpha = 1.00000E-06; nissin_beta = 2.00000E+00
: nissin_gamma = 2.00000E+00; nissin_sigma = 0.00000E+00
: weight_ccsep = 1.00000E+00; penfun_ccsep = 1ccsep_skip = 1
: ccsep_alpha = 1.50000E+02; ccsep_beta = 2.00000E+00; r_delta = 1.00000E-01
------------- Initial status ------------------------
diagnos : Individual cost function values:
: Bnormal = 1.49924939E-06
: B_mn harmonics = 0.00000000E+00
: Toroidal flux = 0.00000000E+00
: Coil length = 0.00000000E+00
: Coil curvature = 1.59971968E-10
: Coil torsion = 0.00000000E+00
: Nissin complexity = 1.64614368E-09
: Coil-coil separation = 5.64199862E-05
: Coil-surf separation = 0.00000000E+00
: Average length of the coils is : 5.412609128491643E+00
: Maximum curvature of all the coils is : 1.069926194856268E+01 ; at coil 5
: Average curvature of the coils is : 3.060004471358978E+00
: Average torsion of the coils is : 6.515470822161993E+00
: Maximum c of the coils is : 7.012121153807736E+01
: The minimum coil-coil distance is : 8.437023880951249E-02 ; at coils 6 , 6
: The minimum coil-plasma distance is : 1.881952922138809E-01 ; at coil 6
: Ave. relative absolute Bn error |Bn|/B : 6.41790E-04; max(|Bn|)= 1.00052E-02
: Surface area normalized Bn error int(|Bn|/B*ds)/A : 5.118374840827271E-04
------------- Iterations ------------------------
output : iout : mark ; total function ; ||gradient|| ; Bnormal ;
output : 1 : 0.00000000E+00 ; 5.79210417E-05 ; 2.39966764E-01 ; 1.49924939E-06 ;
output : 2 : 1.48729557E+02 ; 1.85402651E-05 ; 8.38272060E-02 ; 1.43611403E-06 ;
output : 3 : 1.70049873E+02 ; 5.92618928E-06 ; 2.71747642E-02 ; 1.37978517E-06 ;
output : 4 : 1.91372104E+02 ; 2.49251285E-06 ; 8.89581736E-03 ; 1.33291374E-06 ;
output : 5 : 2.12708826E+02 ; 1.55998081E-06 ; 2.98971242E-03 ; 1.28879546E-06 ;
output : 6 : 2.34036775E+02 ; 1.28493576E-06 ; 1.25961746E-03 ; 1.23384184E-06 ;
output : 7 : 2.55379986E+02 ; 1.11954229E-06 ; 8.54782098E-04 ; 1.11384066E-06 ;
output : 8 : 2.76706681E+02 ; 7.34465326E-07 ; 3.59727375E-04 ; 7.25417945E-07 ;
output : 9 : 2.98034050E+02 ; 6.44961323E-07 ; 2.82077132E-04 ; 6.34119583E-07 ;
output : 10 : 3.19361595E+02 ; 5.77080787E-07 ; 2.12291984E-04 ; 5.70323649E-07 ;
output : 11 : 3.41488708E+02 ; 5.35608714E-07 ; 1.57379316E-04 ; 5.31908344E-07 ;
output : 12 : 3.62818325E+02 ; 5.11143512E-07 ; 1.38213745E-04 ; 5.08470530E-07 ;
output : 13 : 3.84147691E+02 ; 4.88699563E-07 ; 1.31722086E-04 ; 4.86374780E-07 ;
output : 14 : 4.05483719E+02 ; 4.74986212E-07 ; 8.84126293E-05 ; 4.72634692E-07 ;
output : 15 : 4.26817053E+02 ; 4.64965626E-07 ; 7.91553253E-05 ; 4.62540952E-07 ;
output : 16 : 4.48155507E+02 ; 4.54744127E-07 ; 8.00730891E-05 ; 4.52202349E-07 ;
output : 17 : 4.69491160E+02 ; 4.47335128E-07 ; 7.24508744E-05 ; 4.44665100E-07 ;
output : 18 : 4.90831138E+02 ; 4.41101269E-07 ; 6.97714794E-05 ; 4.38326900E-07 ;
output : 19 : 5.12168444E+02 ; 4.36398485E-07 ; 7.10775589E-05 ; 4.33554753E-07 ;
output : 20 : 5.33493969E+02 ; 4.32104075E-07 ; 6.61072647E-05 ; 4.27182277E-07 ;
output : 21 : 5.55616729E+02 ; 4.29170484E-07 ; 4.02270991E-05 ; 4.25810339E-07 ;
output : 22 : 5.76957029E+02 ; 4.27381849E-07 ; 3.55437506E-05 ; 4.24510752E-07 ;
output : 23 : 5.98286629E+02 ; 4.25251307E-07 ; 4.20382822E-05 ; 4.22663938E-07 ;
output : 24 : 6.19620618E+02 ; 4.23483891E-07 ; 4.00437461E-05 ; 4.21026938E-07 ;
output : 25 : 6.40977964E+02 ; 4.20975113E-07 ; 3.91146222E-05 ; 4.18606788E-07 ;
output : 26 : 6.62314192E+02 ; 4.19148518E-07 ; 4.54641260E-05 ; 4.16716209E-07 ;
output : 27 : 6.83647932E+02 ; 4.16561518E-07 ; 4.60387233E-05 ; 4.13762518E-07 ;
output : 28 : 7.04993090E+02 ; 4.14787460E-07 ; 3.77863839E-05 ; 4.11484092E-07 ;
output : 29 : 7.26339144E+02 ; 4.12244439E-07 ; 4.79399565E-05 ; 4.08696167E-07 ;
output : 30 : 7.47668813E+02 ; 4.09773672E-07 ; 4.84322072E-05 ; 4.06344384E-07 ;
output : 31 : 7.69821752E+02 ; 4.06202485E-07 ; 5.21196707E-05 ; 4.03121637E-07 ;
output : 32 : 7.91157279E+02 ; 4.02405737E-07 ; 6.05331762E-05 ; 3.99033097E-07 ;
output : 33 : 8.12491515E+02 ; 3.97843569E-07 ; 4.69932628E-05 ; 3.93541787E-07 ;
output : 34 : 8.33823762E+02 ; 3.95509794E-07 ; 4.77728885E-05 ; 3.90636155E-07 ;
output : 35 : 8.55155066E+02 ; 3.93120930E-07 ; 4.31048239E-05 ; 3.87519132E-07 ;
output : 36 : 8.76481741E+02 ; 3.91160834E-07 ; 4.37363428E-05 ; 3.85614397E-07 ;
output : 37 : 8.97810639E+02 ; 3.88965686E-07 ; 3.86370174E-05 ; 3.84025983E-07 ;
output : 38 : 9.19140497E+02 ; 3.86687551E-07 ; 4.02797371E-05 ; 3.82156345E-07 ;
output : 39 : 9.40475079E+02 ; 3.84173752E-07 ; 4.33695134E-05 ; 3.79951547E-07 ;
output : 40 : 9.61806558E+02 ; 3.80563551E-07 ; 5.46678466E-05 ; 3.76638952E-07 ;
output : 41 : 9.84043105E+02 ; 3.77553103E-07 ; 5.09384372E-05 ; 3.73370846E-07 ;
output : 42 : 1.00538301E+03 ; 3.74949413E-07 ; 4.75962854E-05 ; 3.70011907E-07 ;
output : 43 : 1.02671477E+03 ; 3.72369503E-07 ; 4.94578162E-05 ; 3.66907459E-07 ;
output : 44 : 1.06931177E+03 ; 3.72035083E-07 ; 4.79543654E-05 ; 3.66518380E-07 ;
output : 45 : 1.09063886E+03 ; 3.70919902E-07 ; 5.02079365E-05 ; 3.65460793E-07 ;
output : 46 : 1.11196990E+03 ; 3.69755676E-07 ; 3.87691384E-05 ; 3.65109163E-07 ;
output : 47 : 1.13329246E+03 ; 3.67690221E-07 ; 4.12899792E-05 ; 3.64063242E-07 ;
output : 48 : 1.15461425E+03 ; 3.65975463E-07 ; 3.22074267E-05 ; 3.62779560E-07 ;
output : 49 : 1.17594316E+03 ; 3.64588091E-07 ; 3.09530426E-05 ; 3.61501098E-07 ;
output : 50 : 1.19726658E+03 ; 3.63561809E-07 ; 2.99737056E-05 ; 3.60396078E-07 ;
output : 51 : 1.21954773E+03 ; 3.62411597E-07 ; 2.72110228E-05 ; 3.58981371E-07 ;
congrad : status=2: total iterations exceeded maxit.
congrad : Computation using conjugate gradient finished.
: CG takes 1.219548467731103E+03 seconds;
focus : Optimization took 20 M 40 S.
-----------POST-PROCESSING-----------------------------------
diagnos : Individual cost function values:
: Bnormal = 3.58981371E-07
: B_mn harmonics = 0.00000000E+00
: Toroidal flux = 0.00000000E+00
: Coil length = 0.00000000E+00
: Coil curvature = 4.84679007E-10
: Coil torsion = 0.00000000E+00
: Nissin complexity = 2.29478276E-09
: Coil-coil separation = 6.50764162E-10
: Coil-surf separation = 0.00000000E+00
: Average length of the coils is : 5.439192886283009E+00
: Maximum curvature of all the coils is : 1.105439826300745E+01 ; at coil 5
: Average curvature of the coils is : 3.187758076197925E+00
: Average torsion of the coils is : 3.528838888702456E+00
: Maximum c of the coils is : 2.124279096157455E+02
: The minimum coil-coil distance is : 9.898556935659038E-02 ; at coils 6 , 5
: The minimum coil-plasma distance is : 1.883825455806551E-01 ; at coil 6
: Ave. relative absolute Bn error |Bn|/B : 3.62765E-04; max(|Bn|)= 3.49154E-03
: Surface area normalized Bn error int(|Bn|/B*ds)/A : 3.291596258605041E-04
focus : Post-processing took 9.98110E-01 S.
-------------------------------------------------------------

22 changes: 22 additions & 0 deletions examples/aten/plasma.boundary
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# Nbmn Nfp Nbnf
18 4 0
#plasma boundary
# n m rbc rbs zbc zbs
0 0 2.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00
1 0 3.2252E-01 0.0000E+00 0.0000E+00 -1.9297E-01
2 0 3.3903E-02 0.0000E+00 0.0000E+00 -3.2571E-02
3 0 4.4473E-03 0.0000E+00 0.0000E+00 -4.4887E-03
-2 1 -7.0474E-03 0.0000E+00 0.0000E+00 -7.1008E-03
-1 1 7.9845E-03 0.0000E+00 0.0000E+00 8.4284E-03
0 1 3.1317E-01 0.0000E+00 0.0000E+00 3.5346E-01
1 1 -1.3736E-01 0.0000E+00 0.0000E+00 1.3791E-01
2 1 -3.4987E-02 0.0000E+00 0.0000E+00 3.4956E-02
3 1 1.1971E-03 0.0000E+00 0.0000E+00 -1.2374E-03
-1 2 -3.4947E-03 0.0000E+00 0.0000E+00 -4.6416E-03
0 2 3.0511E-02 0.0000E+00 0.0000E+00 4.4011E-02
1 2 1.6655E-02 0.0000E+00 0.0000E+00 6.1206E-02
2 2 5.3302E-02 0.0000E+00 0.0000E+00 -5.2773E-02
3 2 -6.0420E-03 0.0000E+00 0.0000E+00 1.9176E-03
0 3 1.9332E-03 0.0000E+00 0.0000E+00 4.2669E-03
1 3 3.8761E-03 0.0000E+00 0.0000E+00 -1.0880E-02
2 3 1.7223E-04 0.0000E+00 0.0000E+00 9.1610E-03
Loading

0 comments on commit 370e8ca

Please sign in to comment.