At the moment the diagnostics don't follow a strict naming pattern. Taking the TKEBudgetTerms as an example:
|
#+++ TKEBudgetTerms exports |
|
export TurbulentKineticEnergy, KineticEnergy |
|
export KineticEnergyTendency, KineticEnergyDiffusiveTerm, KineticEnergyForcingTerm |
|
export IsotropicKineticEnergyDissipationRate, KineticEnergyDissipationRate |
|
export XPressureRedistribution, YPressureRedistribution, ZPressureRedistribution |
|
export XShearProductionRate, YShearProductionRate, ZShearProductionRate |
Some diagnostics have Term appended to their names (like KineticEnergyDiffusiveTerm), some don't (like KineticEnergyDissipationRate). Some start with KineticEnergy (like KineticEnergyDiffusiveTerm again) but some don't (like XShearProductionRate).
It would be nice to agree on a naming pattern to use from now on. I think it's more important to be clear than it is to be concise. For example, something like the snippet below (which is made up code just for example sake) isn't 100% clear
using Oceanostics
ε = DissipationRate
Which is why the currently implemented code has a more verbose name:
using Oceanostics
χ = TracerVarianceDissipationRate(model)
ε = KineticEnergyDissipationRate(model)
We could keep following this pattern and make things more verbose, following the pattern "budgeted quantity" + "term name", which would bring KineticEnergyDissipationRate, KineticEnergyPressureRedistribution, TracerVarianceForcing, etc.
Another option is to not export function/diagnostic names at the top/package level and name the modules according to the equations the diagnostic terms come from. That way the snippet above would become something like
using Oceanostics
χ = TracerVarianceEquation.DissipationRate(model)
ε = KineticEnergyEquation.DissipationRate(model)
which, I would argue, is pretty readable, and not too verbose.
cc @glwagner
At the moment the diagnostics don't follow a strict naming pattern. Taking the
TKEBudgetTermsas an example:Oceanostics.jl/src/Oceanostics.jl
Lines 4 to 9 in 3b46106
Some diagnostics have
Termappended to their names (likeKineticEnergyDiffusiveTerm), some don't (likeKineticEnergyDissipationRate). Some start withKineticEnergy(likeKineticEnergyDiffusiveTermagain) but some don't (likeXShearProductionRate).It would be nice to agree on a naming pattern to use from now on. I think it's more important to be clear than it is to be concise. For example, something like the snippet below (which is made up code just for example sake) isn't 100% clear
Which is why the currently implemented code has a more verbose name:
We could keep following this pattern and make things more verbose, following the pattern "budgeted quantity" + "term name", which would bring
KineticEnergyDissipationRate,KineticEnergyPressureRedistribution,TracerVarianceForcing, etc.Another option is to not export function/diagnostic names at the top/package level and name the modules according to the equations the diagnostic terms come from. That way the snippet above would become something like
which, I would argue, is pretty readable, and not too verbose.
cc @glwagner