Update ec_launchers and pulse_schedule#253
Conversation
…lated improvements
…ndex are constant instead of static
…elds following the change of convention IMAS-5174
…e recent evolutions of ec_launchers
|
This PR has merged changes from PR#234 and PR#244, in order that @fmpoli68 can test this change in applications. It stays in draft for the moment. |
|
We have started the tests for this branch. Below are the issues we found. In the ec_launchers IDS
movement should be removed, since waveguides are fixed.
In the pulse_schedule IDS: NOTE: I am not sure how many people are using the pulse_schedule. To avoid disruption to these users I propose to create the correct structures, but not delete the existing structures that are incorrectly described (for now). Change requested:
@imbeauf If the above can be implemented in a short time workaround, we can do a number of tests, including algorithms for steering. Then we will come back with a proposal to map which gyrotron is connected where in the pulse_schedule. |
|
For the ec_launcher IDS
|
…rror and the polarization structure under beam
|
I have implemented in my branch the changes requested for the pulse_schedule IDS, I am waiting for your response on the ec_launchers part to push my branch |
|
regarding 1)
regarding 2)
If you push your changes, we will proceed with further tests and get back to you ASAP (likely before Wednesday). |
Pulse schedule changes for Francesca
|
Done, please test the branch with the updated pulse_schedule |
|
Not sure you saw these (I do not see these changes in the latest push): in the ec_launchers IDS
I will test the new pulse_schedule in the meantime. Thank you for doing this :). Thank you for your patience |
Reshuffling indices between mirror and waveguide structures in the EC…
|
Done |
|
We have tested the new IDS structure with a few standalone scripts and we think that everything we need to proceed is there. And many many thanks for helping out. |
|
Just one question before merging: we have the power_launched at the beam level, but we have no power at the source level (just a power_max node as a function of the available frequencies). Is this ok to have no power at the source level ? |
|
Yes, it is correct. The power_max is the power that is available from that source (for example, a gyrotron). In a complete calculation from the source to the plasma (from the source to the beam) one may want to include losses (in the waveguide, for example), or from losses along the path. Therefore, the power at the launching point of the beam may be different from the nominal power that a source can deliver, and the power at the beam level can be dynamic, while the power at the source level is nominal. Regarding the frequency, it is also OK to have a static number at the source level, because sources are optimized to work at one frequency. So, the cavity resonates at one frequency. I think this is the closest representation we can have at this time for the system. |
|
Dear reviewers, please have a look to this PR, which is ready to be reviewed for a few weeks now |
| </xs:element> | ||
| <xs:element name="deposition_rho_tor_norm" type="pulse_schedule_reference_ec"> | ||
| <xs:annotation> | ||
| <xs:documentation>Normalized toroidal flux coordinate at which the main deposition should occur. For tracking a rational surface use a negative value (for example -1.5 or -2.0)"</xs:documentation> |
There was a problem hiding this comment.
Why use toroidal flux rather than poloidal flux which is defined everywhere? If I understand correctly, if the number is negative then the value of the safety factor is specified instead. What happens then when the safety factor is negative as in AUG? (Or, if you prefer, if m/n is negative?). I guess we could assume -abs(q) = -abs(m/n)?
There was a problem hiding this comment.
@fmpoli68 , could you comment on this proposal ?
| <int name="cylindrical_x2" description="Cylindrical in the X2 direction, use x2_curvature" >3</int> | ||
| <int name="spherical" description="Spherical : same curvature radius in X1 and X2 directions, indicated in x1_curvature" >4</int> | ||
| <int name="toroidal" description="Toroidal : x1_curvature in X1 direction and x2_curvature in X2 direction" >5</int> | ||
| <int name="elliptical" description="Prolate ellipsoid (surface obtained rotating an ellipse around its major axis). Surface defined by focus_1, focus_2 and geometry/centre (point on the surface) coordinates" >6</int> |
There was a problem hiding this comment.
| <int name="elliptical" description="Prolate ellipsoid (surface obtained rotating an ellipse around its major axis). Surface defined by focus_1, focus_2 and geometry/centre (point on the surface) coordinates" >6</int> | |
| <int name="elliptical" description="Prolate ellipsoid (surface obtained by rotating an ellipse around its major axis). Surface defined by focus_1, focus_2 and geometry/centre (point on the surface) coordinates" >6</int> |
Rather that geometry/centre, don't we need the minor radius to define a prolate ellipsoid? If the point on the surface was at a pole (on major axis) then this would tell us nothing about the minor radius of the ellipsoid.
There was a problem hiding this comment.
@fmpoli68 , could you comment on this proposal ?
There was a problem hiding this comment.
NOTE: I used Copilot to support my answer with formulas.
The definition is mathematically sufficient, we do not need the minor radius, because the definition does not use:
centre + surface point
It uses:
focus_1
focus_2
a point on the surface (despite the confusing label geometry/centre)
For a prolate spheroid:
The two foci determine the axis direction and the focal distance ccc.
Any point on the surface gives 2a=∣P−F1∣+∣P−F2∣,2a = |P-F_1| + |P-F_2|,2a=∣P−F1∣+∣P−F2∣, from which aaa is obtained.
The minor radius then follows uniquely from b=a2−c2.b = \sqrt{a^2-c^2}.b=a2−c2.
Even if the surface point lies exactly at a pole, we still recover aaa, and since ccc is known from the foci, we still recover bbb.
The minor radius is determined from the combination of the surface point and the two foci.
The only thing I would criticize in the original definition is the wording:
"...defined by focus_1, focus_2 and geometry/centre (point on the surface) coordinates"
because "centre" and "point on the surface" are different concepts. If geometry/centre is actually intended to be a surface point, then the parameter name is misleading. But the geometric definition itself is sound. Probably removing the wording "(point on the surface)" would remove the confusion [and the IDS defines the geometry/center] but leaves the correct concept.
Co-authored-by: Simon Pinches <SimonPinches@users.noreply.github.com>
Renaming an identifier file
Change the identifier file name also in the pulse_schedule IDS
📚 Documentation preview 📚: https://imas-data-dictionary--253.org.readthedocs.build/en/253/