19#ifndef PISM_PYOCEANMODEL_H
20#define PISM_PYOCEANMODEL_H
22#include "pism/coupler/ocean/CompleteOceanModel.hh"
43 void allocate(std::shared_ptr<const Grid> grid);
60 virtual void update(
const Inputs &inputs,
double t,
double dt);
65 virtual std::set<VariableMetadata>
state()
const;
92 std::shared_ptr<PyOceanModel>
m_impl;
std::shared_ptr< const Grid > grid() const
Combines the max. time step with the flag indicating if a restriction is active. Makes is possible to...
void write_state_impl(const OutputFile &output) const
The default (empty implementation).
std::set< VariableMetadata > state_impl() const
virtual ~PyOceanModelAdapter()=default
void init_impl(const Geometry &geometry)
MaxTimestep max_timestep_impl(double t) const
std::shared_ptr< PyOceanModel > m_impl
void update_impl(const Inputs &inputs, double my_t, double my_dt)
The adapter class for Python ocean models.
virtual void update(const Inputs &inputs, double t, double dt)
virtual ~PyOceanModel()=default
virtual std::set< VariableMetadata > state() const
virtual void init(const Geometry &geometry)
virtual MaxTimestep max_timestep(double t) const
std::shared_ptr< pism::array::Scalar > shelf_base_temperature
std::shared_ptr< array::Scalar > water_column_pressure
std::shared_ptr< array::Scalar > shelf_base_mass_flux
virtual void write_state(const OutputFile &output) const
void allocate(std::shared_ptr< const Grid > grid)
bool ocean(int M)
An ocean cell (floating ice or ice-free).