source: trunk/LMDZ.TITAN/libf/chimtitan/titan.h @ 3094

Last change on this file since 3094 was 2326, checked in by jvatant, 5 years ago

Update Titan reference photochemistry (reaction constants,branching ratios, condensation rates) according to Vuitton et al 2019.
--JVO

File size: 2.9 KB
Line 
1/* titan.h: parameters for gptitan.c */
2
3#include <stdio.h>
4#include <stdlib.h>
5#include <string.h>
6#include <math.h>
7
8#define R0    (double)(2575.0) /* Titan's radius */
9#define NLEV  (int)(133)  /* Nbre de niv verticaux -> Need to be coherent with the vertical grid used !! */
10#define NLD   (int)(40)   /* Nbre de niv verticaux faits sans diff -> Need to be coherent with the vertical grid used !! */
11//#define NLD   (int)(0)  /* -> This is for 1D, diffusion on all column */
12#define NLRT  (int)(650)  /* Nbre de niv verticaux dans table fmoy - aussi dans common_mod */
13
14/* fluxes at 1300 km : upward is +, downward is - */
15#define top_H   (double)(+1.1e4)
16#define top_H2  (double)(+3.7e3)
17#define top_N4S (double)(-1.1e8) /* = -2.5e8/2.27 ... */
18
19/* DEPEND DE LA VERSION CHIMIE: */
20//#define VERCHIM "chimie_simpnit_051006_bis" -> If you want to use this one make sure you use an old version of disso.c
21//#define NREAC (int)(377)    /* nombre de reactions - aussi dans common_mod */
22//#define RDISS (int)(54)     /* nombre de photodiss - aussi dans common_mod */
23//#define NC    (int)(44)     /* nb de composes      - aussi dans common_mod */
24//#define ST    (int)(NC)     /* nb de composes inverses */
25//#define NHC   (int)(32)     /* nb hydrocarbons */
26#define VERCHIM "chimie_2019_43spc_vuitton"
27#define NREAC (int)(330)    /* nombre de reactions - aussi dans common_mod */
28#define RDISS (int)(55)     /* nombre de photodiss - aussi dans common_mod */
29#define NC    (int)(43)     /* nb de composes      - aussi dans common_mod */
30#define ST    (int)(NC)     /* nb de composes inverses */
31#define NHC   (int)(31)     /* nb hydrocarbons */
32
33#define THETA (double)(0.501)
34#ifndef M_PI
35#define M_PI  (double)(3.14159265358979323846e0)
36#endif
37#define RAD   (double)(M_PI / 180.0e0)
38#ifndef max
39#define max(a,b) ((a)>(b)?(a):(b))
40#define min(a,b) ((a)<=(b)?(a):(b))
41#endif
42
43void  chimie_(char (*)[10], double *, double *, double (*)[NLEV], 
44              int (*)[5], int *, int *, int (*)[200][2], int (*)[200]);
45void  comp_(char (*)[10], double *, double *, double *, double (*)[NLEV]);
46void  disso_(double (*)[15][NLRT][RDISS+1], int *);
47double omega( double, double, double );
48void  solve( double ***, int, int, int );
49void  solve_lapack( double ***, int, int, int );
50void  solve_b( double ***, double **, int, int, int );
51float *rm1d( int, int );
52float **rm2d( int, int, int, int );
53float ***rm3d( int, int, int, int, int, int );
54float ****rm4d( int, int, int, int, int, int, int, int );
55double *dm1d( int, int );
56double **dm2d( int, int, int, int );
57double ***dm3d( int, int, int, int, int, int );
58double ****dm4d( int, int, int, int, int, int, int, int );
59void  frm1d( float *, int );
60void  frm2d( float **, int, int, int );
61void  frm3d( float ***, int, int, int, int, int );
62void  fdm1d( double *, int );
63void  fdm2d( double **, int, int, int );
64void  fdm3d( double ***, int, int, int, int, int );
65int   *im1d( int, int );
66int   **im2d( int, int, int, int );
67int   ***im3d( int, int, int, int, int, int );
Note: See TracBrowser for help on using the repository browser.