72 -L$GOTM/build/ -lgotm -lairsea -lmeanflow -lobservations -lturbulence \
73 -linput -lutil -loutput_manager `nf-config --flibs` \
309 for (
int l =
nl - 2;
l >= 0;
l--) {
static void airsea_set_sst(realtype *temp)
static void airsea_set_ssuv(realtype *uvel, realtype *vvel)
#define airsea_calc_fluxes
static void meanflow_convectiveadjustment(integer *nlev, realtype *num, realtype *nuh, realtype *const_num, realtype *const_nuh, integer *buoy_method, realtype *g, realtype *rho_0)
static void util_convert_fluxes(integer *nlev, realtype *g, realtype *cp, realtype *rho_0, realtype *heat, realtype *p_e, realtype *rad, realtype *t, realtype *s, realtype *tflux, realtype *sflux, realtype *btflux, realtype *bsflux, realtype *trad, realtype *brad)
static realtype eqstate_eos_alpha(realtype *s, realtype *t, realtype *p, realtype *g, realtype *rho_0)
static void meanflow_extpressure(integer *method, integer *nlev)
static void meanflow_friction(realtype *kappa, realtype *avmolu, realtype *tx, realtype *ty)
static void gotm_clean_up(void)
static void meanflow_coriolis(integer *nlev, realtype *dt)
static void meanflow_intpressure(integer *nlev)
static void kpp_do_kpp(integer *nlev, realtype *h0, realtype *h, realtype *rho, realtype *u, realtype *v, realtype *nn, realtype *nnt, realtype *nns, realtype *ss, realtype *u_taus, realtype *u_taub, realtype *tflux, realtype *btflux, realtype *sflux, realtype *bsflux, realtype *trad, realtype *brad, realtype *f)
static void kpp_init_kpp(integer *namlst, char *fn, integer *nlev, realtype *h0, realtype *h, realtype *kpp_g, realtype *kpp_rho_0)
static void gotm_step(long n)
The corresponding GOTM libraries need to be linked.
const scalar airsea_swr_flux[]
const vector airsea_tau[]
The surface fluxes of momentum, heat and short-wave radiation are provided as surface fields by the c...
void constant_NNT(double T_top, double S_const, double NN, scalar T)
const scalar airsea_heat_flux[]
void event_viscous_term(void)
Vertical diffusion is part of the "viscous terms" of the multilayer event loop.
void event_cleanup(void)
The GOTM cleanup function deallocates Fortran fields etc.
void event_defaults(void)
The initialisation tries to call the relevant initialisation functions from GOTM, as they appear in t...
static void meanflow_post_init_meanflow(integer *nlev, realtype *latitude)
static void observations_get_all_obs(integer *julday, integer *secs, integer *nlev, realtype_1d *z)
#define observations_ext_press_mode
static void meanflow_salinity(integer *nlev, realtype *dt, realtype *cnpar, realtype *nus, realtype *gams)
static void meanflow_shear(integer *nlev, realtype *cnpar)
static void meanflow_stratification(integer *nlev, integer *buoy_method, realtype *dt, realtype *cnpar, realtype *nub, realtype *gamb)
scalar omega[]
We allocate the vorticity field , the streamfunction field and a structure to store the statistics o...
static void meanflow_temperature(integer *nlev, realtype *dt, realtype *cnpar, realtype *i_0, realtype *heat, realtype *nuh, realtype *gamh, realtype *rad)
#define time_secondsofday
static void mtridiagonal_init_tridiagonal(integer *n)
static void turbulence_do_turbulence(integer *nlev, realtype *dt, realtype *depth, realtype *u_taus, realtype *u_taub, realtype *z0s, realtype *z0b, realtype *h, realtype *nn, realtype *ss, realtype *xp)
static void turbulence_post_init_turbulence(integer *nlev)
#define turbulence_const_nuh
#define turbulence_const_num
#define turbulence_turb_method
static void meanflow_uequation(integer *nlev, realtype *dt, realtype *cnpar, realtype *tx, realtype *num, realtype *gamu, integer *method)
static void meanflow_updategrid(integer *nlev, realtype *dt, realtype *zeta)
static void meanflow_vequation(integer *nlev, realtype *dt, realtype *cnpar, realtype *ty, realtype *num, realtype *gamv, integer *method)
static void meanflow_wequation(integer *nlev, realtype *dt)