source: codes/icosagcm/devel/Python/src/functions.h @ 689

Last change on this file since 689 was 689, checked in by dubos, 6 years ago

devel/unstructured : select double or single precision for physical quantities

File size: 1.2 KB
Line 
1/* KERNELS */
2
3#undef PREC_DOUBLE
4
5#ifdef PREC_DOUBLE
6typedef double number;
7#else
8typedef float number;
9#endif
10
11enum {max_nb_stage=5};
12extern number tauj[max_nb_stage];
13extern number cslj[max_nb_stage][max_nb_stage], cflj[max_nb_stage][max_nb_stage];
14
15void dynamico_init_params(void);
16
17void dynamico_ARK_step(int nstep,
18                       number *mass_col, number *rhodz, number *theta_rhodz, 
19                       number *u, number *geopot, number *w,
20                       number *theta, number *ps, number *pk, number *hflux, number *qv,
21                       number *dmass_col, number *drhodz, number *dtheta_rhodz,
22                       number *du_fast, number *du_slow,
23                       number *dPhi_fast, number *dPhi_slow, 
24                       number *dW_fast, number *dW_slow);
25
26void dynamico_remap(number *rhodz, number *theta_rhodz, number *u);
27
28/* KERNELS -> XIOS */
29void dynamico_setup_xios(void);
30void dynamico_xios_set_timestep(double);
31void dynamico_xios_update_calendar(int);
32/* CXIOS */
33void cxios_context_close_definition(void);
34void cxios_context_finalize(void);
35void cxios_finalize(void);
36
37void cxios_write_data_k81(char*, int, double*, int);
38void cxios_write_data_k82(char*, int, double*, int, int);
39void cxios_write_data_k83(char*, int, double*, int, int, int);
Note: See TracBrowser for help on using the repository browser.