Skip to content

diagnostics: compute variables when necessary only #41

Description

@BenMql

In the pseudo-spectral approach, quadratic terms are computed in physical space, each of which requires 2 DFT (forward and backward). On the other hand, the current version of Coral can only export quantities that are computed in physical space. The rationale behind this was that, initially, typical diagnostics (e.g. the kinetic energy) would need to be computed anyway to march the equations in time.
However, detailed statistical analysis of the solution sometimes necessitates the computation of diagnostic quantities that do not directly enter the equations. Since the complexity of the code is proportional to the number of DFTs (at leading order), frequently computing additional quantities is wasteful

It would speed up the code if we could distinguish between dynamic and diagnostic variables.

Corollary: diagnostic variables should not be output at each timestep (this would negate the purpose of the distinction). In case a timeseries is demanded by the user in coral.timeseries, the output frequency should be, say 5:1 or 10:1.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions