cloudy
trunk
|
00001 /* This file is part of Cloudy and is copyright (C)1978-2008 by Gary J. Ferland and 00002 * others. For conditions of distribution and use see copyright notice in license.txt */ 00003 00004 #ifndef _GRAINS_H_ 00005 #define _GRAINS_H_ 00006 00007 /* this routine is called by zero(), so it should contain initializations 00008 * that need to be done every time before the input lines get parsed */ 00009 00011 void GrainDrive(void); 00012 00014 void GrainDrift(void); 00015 00017 void GrainZero(void); 00018 00020 void GrainStartIter(void); 00021 00023 void GrainRestartIter(void); 00024 00026 void SetNChrgStates(long); 00027 00029 long NewGrainBin(void); 00030 00032 void ReturnGrainBins(void); 00033 00035 void GrainsInit(void); 00036 00038 void GrainMakeDiffuse(void); 00039 00041 void qheat(/*@out@*/double[],/*@out@*/double[],/*@out@*/long*,long); 00042 00044 void InitEnthalpy(void); 00045 00046 typedef struct { 00047 double dep; 00048 bool lgAbunVsDepth, 00049 lgForbidQHeating, 00050 lgGreyGrain, 00051 lgRequestQHeating; 00052 } GrainPar; 00053 00058 void mie_write_opc(/*@in@*/const char*,/*@in@*/const char*,long int); 00063 void mie_read_opc(/*@in@*/const char*,GrainPar); 00073 void gauss_init(long int,double,double,double[],double[],double[],double[]); 00079 void gauss_legendre(long int,double[],double[]); 00090 void find_arr(double,double[],long int,/*@out@*/long int*,/*@out@*/bool*); 00091 00092 #endif /* _GRAINS_H_ */