Skip to content

FACIT -- compare with NEO #121

@cjperks7

Description

@cjperks7

Currently working on getting a workflow with both FACIT (within AURORA) and NEO (within MIT-IM) to calculate impurity D, V profiles for C-Mod, SPARC shots. Currently isn't working out so here I'm implementing some suggestions from @DanielFajardoJ on how to fix it. This could totally end up being user error on my part, but in case of otherwise I'll make a branch to track changes in FACIT.

Daniel suggested additions to start:

  • (tried second) There is a numerical factor in the definition of the collisionality. As you know different people use different factors in the Coulomb collision times. What is in the python FACIT routine comes from the NRL plasma formulary, but the NEO/GACODE has a different factor. Effectively this means multiplying Tauii inside FACIT by *= 1/(3*np.sqrt(2*np.pi)/4).
  • (tried first) The qmag that should be used is not directly the safety factor (I call it qprof in the following) but a generalized qmag = qprof * r_min * B0 / d_torfluxov2pi_d_rmin, or equivalently qmag = r_min * B0 / d_polfluxov2pi_d_rmin. This is effectively the same as the use of 'B_unit' instead of the axis B_t in GACODE terms.
  • (tried third) The LFS to FSA transformation of the convection is missing a term. One should compute the factor f_conv_fsa = np.gradient(e0imp, amin*rho)/e0imp and then add += f_conv_fsa*self.Dz_PS, etc, to all convection components.
  • This doesn't affect your NEO comparisons, but in Aurora, after one calculates the D and V coefficients from FACIT, there is a geometrical transformation missing. The coefficients that go to run_aurora should be multiplied by D *= drvol_drmin**2 and V *= drvol_drmin

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions