Realtime visualization and optimization of vacuum surfaces Boyd
Realtime visualization and optimization of vacuum surfaces - Boyd Blackwell, ANU • Real time tracing code BLINE (Summer Scholar: Antony Searle, ANU) – – multi-thread/processor mesh accuracy speed hierarchial system element/mesh structure • Perturbation method for iota (Summer Scholar: Ben Mc. Millan, ANU/UMelb) • Real-time optimization by simulated annealing – demonstration
Minimal Confinement Geometries • Simplest possible geometries with closed surfaces that resemble real geometries, for testing codes – – – fast direct evaluation, exact iota ~ 1 aspect ratio ~ 5 -10 highly 3 D enclose no conductors • “triator” – 4 simple elements (finite filaments) – iota ~ 0. 6, bean shaped, (similar to Tom Todds? ) • “ 1 element” toroidal helix – slow evaluation
Mesh Interpolation • cubic tri-spline on regular rectangular meshes • copy of mesh in neighbourood stored to better fit in CPU cache – derivatives stored only in local mesh (4 point eval from main mesh) H-1 • mesh hierarchy underneath the hierarchy of magnetic macro-elements TFC – e. g. H-1 has 3 meshes for main field, but one coarse mesh for VF coils – allows quick configuration exploration by varying currents (linear combination I 1 M 1 + I 2 M 2 + I 3 M 3) VF 3 ea. 32× 128× 32 • mesh filled on demand and/or in background – (see also Gourdon code, Zacharov’s code (Hermite polynomials))
Mesh Convergence • Meshes of 10 -50 MByte are adequate even near edge – distance to nearest conductor recorded in each cell, automatically revert to direct calculation if too close. 5 th order or better in x
Multi-processing • windows threads (posix under linux) (MISD) – needs semaphore system (e. g. no tracing while loading a new mesh) • multi-threaded code runs fine on single processor – some priority tuning useful on single processor • initial scheme – tracing thread, display thread and mesh-filling threads – large caches on Intel machines favour each thread working in distant memory locations • multi-threading object oriented coding
Perturbation Calculation of iota • Find a nearby rational surface by iteration ~middle order – say ~ 30 circuits B 0 • Store B and derivatives along this closed path • For each variation in the perturbing winding, integrate x B/B 0 where B is the perturbing field and B 0 the original field • (Alternatively integrate cpt of B in surface, normalized to B 0 and the puncture spacing at that point ~ Boozer ) B
Accuracy of / I • Check / I by ultra high accuracy (1 e-7) direct calculation of • correction for area change can be significant Perturbation result: 0. 315 cf 0. 304
Machine Optimization of iota • Minimization by steepest descent (but multi-variate) • Simulated annealing – – virtual temperature T accept a new configuration even if slightly worse (up to T) “heat” to explore new configurations “cool” to home in on optimum • Annealing more tolerant of occasional anomalies in goodness function, e. g. local minima or discontinuities (resonances)
“Reinvent” helical conductor in flexible heliac • Constrain conductor to lie inside a torus, N=3 – (actually end-point and middle point fixed) • Seek maximum transform for length current • Result is very close to the flexible heliac
R>Rmin constraint “sawtooth coil” • Constrain conductor to lie on a cylinder, N=3 • Seek maximum transform near the axis of a heliac per unit length current • Reproduces approximate “sawtooth coil”
Conclusions and Future Work • Very useful for following particles out of machine (so far, not a drift calculation) • Very quick (50 k/sec) configuration evaluation for varying current ratios in existing coil system (e. g. H-1 flexibility studies) • Fast evaluation (10 k/sec) of new winding (“simple”) in arbitrarily complex existing configuration • Iota perturbation calculation works, and is fast. • Well calculation implemented, but not debugged • Possibly extend to island width as in Rieman & Boozer 1983 • optimization principle demonstrated • “standard results” recovered • real time operation possibility of human guidance during optimization Develop/find “Meta-Language” for description of symmetries and constraints
- Slides: 11