The intent of this PR is to push the geometry related code down to the lowest level, so that it only appears in the files in the FiniteDifferenceAlgorithms directory. This is done by writing the code in terms of the differential operators, i.e. curl and gradient rather than the specific derivatives.
Status:
[x] Implement the nodal curl for EvolveE
[x] Add call to correct Etheta on axis for RZ (fixing possible bug)
[ ] Implement the cell-centered curl for EvolveB
[x] Implement the gradient for the F advance
[ ] Implement the divergence for the G advance
[x] Remove EvolveECylindrical
[ ] Remove EvolveBCylindrical
[ ] Remove unneeded n_coefs_ arguments
[ ] Make parent class for Cartesian algorithms for common operators
The intent of this PR is to push the geometry related code down to the lowest level, so that it only appears in the files in the
FiniteDifferenceAlgorithms
directory. This is done by writing the code in terms of the differential operators, i.e.curl
andgradient
rather than the specific derivatives.Status:
EvolveE
Etheta
on axis for RZ (fixing possible bug)EvolveB
F
advanceG
advanceEvolveECylindrical
EvolveBCylindrical
n_coefs_
arguments