00001
00002
00003
00004
00005
00007 void GrainDrive(void);
00008
00010 void GrainDrift(void);
00011
00024 void PE_init(long,long,long,double*,double*,double*,
00025 double*,double*,double*,double*);
00026
00027 void GrainZero(void);
00028
00030 void GrainStartIter(void);
00031
00033 void GrainRestartIter(void);
00034
00036 void SetNChrgStates(long);
00037
00039 long NewGrainBin(void);
00040
00042 void ReturnGrainBins(void);
00043
00045 void GrainsInit(void);
00046
00048 void GrainMakeDiffuse(void);
00049
00051 void qheat(double[],double[],long*,long);
00052
00054 void InitEnthalpy(void);
00055
00056 typedef struct {
00057 double dep;
00058 bool lgAbunVsDepth,
00059 lgForbidQHeating,
00060 lgGreyGrain,
00061 lgRequestQHeating;
00062 } GrainPar;
00063
00068 void mie_write_opc(const char*,const char*,long int);
00073 void mie_read_opc(const char*,GrainPar);
00083 void gauss_init(long int,double,double,double[],double[],double[],double[]);
00089 void gauss_legendre(long int,double[],double[]);
00100 void find_arr(double,double[],long int,long int*,bool*);