User Tools

Site Tools


software:rayleigh:plans

Future Directions in Rayleigh

last updated 2018 November 8

Future Directions (current )

  • Improved linear solve + derivatives (Quasi-inverse; Chebyshev Galerkin scheme) – Ben M. / Kyle A. / Nick F.
  • Improve OpenMP Implementation
  • OpenMP/GPU hybrid legendre transforms (OpenACC/Cuda; OpenMP w/ offload?) – Kyle A / Nick F.
  • Chebyshev Spectra
  • Coefficients at given theta/phi (or set of theta/phi)
  • Coefficients at given ell/m (or set of ell/m) – Cian W. / Valentin S.
  • Custom Reference States / custom non-dimensionalization (Rayleigh) – Jon A./ Ryan O./ Krista S.
  • Also translation via post-processing (rosetta)
  • Code cleanup – EVERYONE
  • Increased modularization (parallel framework / buffer objects)
  • ISPack-enabled Legendre transforms

New Future Directions

  • Generalized 3-d/1-d/1-d read-in interface for:
  • Initial Conditions
  • Boundary conditions
  • More general boundary conditions
  • E.g., imposed B, heterogeneous thermal B.C.s, time-varying B.C.s, etc.
  • Python interface for interfacing with generalized interface
  • Diagnostic value specification with strings
  • Common walltime communication (here)
  • File numbering w/ backwards compatibility (here)
  • Output nrec bug (here)
  • Have make install also install python libraries + support code etc.
  • 3-D output class in Python
  • Additional scalar field – Sebastian H. / Loren M. / Cian W./ Valentin S.
  • Adding an Inner Core – Krisa S. / Connor B. / Hiro M. / Cian W. / Jon A. * Test field method (?)
  • No cutout at r=0
  • Alternative radial basis functions
  • Z averaging / Z slicing
  • Possibly use code from Calypso supplied by Hiro
  • New Repository for post-processing scripts
  • Connecting Python to 3-D checkpoints (possibly here)
  • Adding lagrangian tracers
  • Additional time-stepping schemes
  • Reducing size of diagnostic code lists (groups; python/string automation)
  • Extensible/Modifiable equation sets
  • Cartesian mode
  • Alternative geometries
  • More generalized/modular outputs
  • More complete preamble information
  • Automatic testing for Rayleigh
  • Serial Rayleigh?
  • Angular-momentum conservation bug (what should be solved? / what is implemented)
  • Conserve core/mantle/inner-core angular momentum (slow down / speed up boundaries)

Additional Diagnostics

  • Dipole tilt as a function of time
  • Gauss coefficients (possibly via Python interface)
  • Poloidal and Toroidal scalar functions
  • Filtered diagnostics (e.g., upflow/downflow masks or other variables)
  • Magnetic helicity
  • Helicity outputs
  • Tangent cylinder (inside vs. outside) - aware outputs
  • Distinguish between poloidal and toroidal contributions to outputs
  • Nusselt-number output

Post-Processing

  • Spherical-harmonic filtering
  • Pipelines for Vapor / Visit / Paraview etc.
  • Reading 3-D outputs into Python
  • VTK output (related to pipelines above; Rayleigh option and Python post-processing)

Possible Directions?

  • Time-varying reference state / equation coefficients – Loren M.

Documentation

  • Diagnostics (what is in memory / how do I get what is not in memory)
  • Can we provide guildlines on setting up an IDE?
software/rayleigh/plans.txt · Last modified: 2018/11/08 20:11 by ljhwang