WeibullSnagMort.h

00001 //---------------------------------------------------------------------------
00002 // WeibullSnagMort
00003 //---------------------------------------------------------------------------
00004 #if !defined(WeibullSnagMort_H)
00005   #define WeibullSnagMort_H
00006 
00007 #include "MortalityBase.h"
00039 class clWeibullSnagMort : virtual public clMortalityBase {
00040 //note: need the virtual keyword to avoid base class ambiguity.
00041 
00042   public:
00043 
00047   clWeibullSnagMort(clSimManager *p_oSimManager);
00048 
00052  ~clWeibullSnagMort();
00053 
00064   void DoShellSetup(xercesc::DOMDocument *p_oDoc);
00065 
00079   bool DoMort(clTree *p_oTree, const float &fDbh, const short int &iSpecies);
00080 
00081   protected:
00082 
00083   float ***mp_fProbabilityOfDeath; 
00086   float **mp_fAParameter; 
00088   float **mp_fBParameter; 
00090   float **mp_fSnagSizeClasses; 
00094   float m_fNumYearsPerTimestep; 
00095   short int *mp_iAgeCodes; 
00097   short int *mp_iIndexes; 
00100   short int m_iMaxPrecalcAge; 
00102   short int m_iNumSizeClasses; 
00122   void ReadParameterFile(xercesc::DOMDocument *p_oDoc);
00123 
00129   void FillDeathProbArray();
00130 
00149   float CalculateDeathProbability(int iSizeClass, int iSpecies, int iAge);
00150 
00155   void GetAgeCodes();
00156 
00162   void ValidateTypes();
00163 };
00164 
00165 //---------------------------------------------------------------------------
00166 #endif // WeibullSnagMort_H

Generated on Thu Jan 26 13:44:36 2006 for SORTIE Core C++ Documentation by  doxygen 1.4.6-NO