atlas::trans::TransLocal class

Local spherical harmonics transformations to any grid Optimisations are present for structured grids For global grids, please consider using TransIFS instead.

Constructors, destructors, conversion operators

TransLocal(const Grid&, const long truncation, const eckit::Configuration& = util::NoConfig())
TransLocal(const Grid&, const Domain&, const long truncation, const eckit::Configuration& = util::NoConfig())
TransLocal(const Cache&, const Grid&, const long truncation, const eckit::Configuration& = util::NoConfig())
TransLocal(const Cache&, const Grid&, const Domain&, const long truncation, const eckit::Configuration& = util::NoConfig())
~TransLocal() override

Public functions

auto truncation() const -> int override
auto nb_spectral_coefficients() const -> size_t override
auto nb_spectral_coefficients_global() const -> size_t override
auto grid() const -> const Grid& override
auto spectral() const -> const functionspace::Spectral& override
void invtrans(const Field& spfield, Field& gpfield, const eckit::Configuration& = util::NoConfig()) const override
void invtrans(const FieldSet& spfields, FieldSet& gpfields, const eckit::Configuration& = util::NoConfig()) const override
void invtrans_grad(const Field& spfield, Field& gradfield, const eckit::Configuration& = util::NoConfig()) const override
void invtrans_grad(const FieldSet& spfields, FieldSet& gradfields, const eckit::Configuration& = util::NoConfig()) const override
void invtrans_vordiv2wind(const Field& spvor, const Field& spdiv, Field& gpwind, const eckit::Configuration& = util::NoConfig()) const override
void invtrans_adj(const Field& gpfield, Field& spfield, const eckit::Configuration& = util::NoConfig()) const override
void invtrans_adj(const FieldSet& gpfields, FieldSet& spfields, const eckit::Configuration& = util::NoConfig()) const override
void invtrans_grad_adj(const Field& gradfield, Field& spfield, const eckit::Configuration& = util::NoConfig()) const override
void invtrans_grad_adj(const FieldSet& spfields, FieldSet& gradfields, const eckit::Configuration& = util::NoConfig()) const override
void invtrans_vordiv2wind_adj(const Field& gpwind, Field& spvor, Field& spdiv, const eckit::Configuration& = util::NoConfig()) const override
void invtrans(const int nb_scalar_fields, const double scalar_spectra[], const int nb_vordiv_fields, const double vorticity_spectra[], const double divergence_spectra[], double gp_fields[], const eckit::Configuration& = util::NoConfig()) const override
void invtrans(const int nb_scalar_fields, const double scalar_spectra[], double gp_fields[], const eckit::Configuration& = util::NoConfig()) const override
void invtrans(const int nb_vordiv_fields, const double vorticity_spectra[], const double divergence_spectra[], double gp_fields[], const eckit::Configuration& = util::NoConfig()) const override
void invtrans_adj(const int nb_scalar_fields, const double gp_fields[], const int nb_vordiv_fields, double vorticity_spectra[], double divergence_spectra[], double scalar_spectra[], const eckit::Configuration& = util::NoConfig()) const override
void invtrans_adj(const int nb_scalar_fields, const double gp_fields[], double scalar_spectra[], const eckit::Configuration& = util::NoConfig()) const override
void invtrans_adj(const int nb_vordiv_fields, const double gp_fields[], double vorticity_spectra[], double divergence_spectra[], const eckit::Configuration& = util::NoConfig()) const override
void dirtrans(const Field& gpfield, Field& spfield, const eckit::Configuration& = util::NoConfig()) const override
void dirtrans(const FieldSet& gpfields, FieldSet& spfields, const eckit::Configuration& = util::NoConfig()) const override
void dirtrans_wind2vordiv(const Field& gpwind, Field& spvor, Field& spdiv, const eckit::Configuration& = util::NoConfig()) const override
void dirtrans_adj(const Field& spfield, Field& gpfield, const eckit::Configuration& = util::NoConfig()) const override
void dirtrans_adj(const FieldSet& spfields, FieldSet& gpfields, const eckit::Configuration& = util::NoConfig()) const override
void dirtrans_wind2vordiv_adj(const Field& spvor, const Field& spdiv, Field& gpwind, const eckit::Configuration& = util::NoConfig()) const override
void dirtrans(const int nb_fields, const double scalar_fields[], double scalar_spectra[], const eckit::Configuration& = util::NoConfig()) const override
void dirtrans(const int nb_fields, const double wind_fields[], double vorticity_spectra[], double divergence_spectra[], const eckit::Configuration& = util::NoConfig()) const override