Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members

CropWater Class Reference

#include <CropWater.h>

Collaboration diagram for CropWater:

Collaboration graph
[legend]
List of all members.

Public Member Functions

Water-related crop growth functions
virtual double computeCropEffectivePrecipitation (double actualRainfall, double monthlyWaterDemand)
 compute effective precipitation based on USDA/SCA method (see EDIC-CEDEC)
virtual void computeCropEffectivePrecipitationInMonth (int m, double actualRainfall, MatrixDouble &vectorOfMonthlyCropEffectivePrecipitation)
 compute monthly crop water demands in sector("effective demands")
virtual void computeCropIrrigationWaterDemandsInMonth (int m, int secID_, const IrrigationMethodSector &sectorparamsIrrigationMethod, const MatrixDouble &effectivePrecipitation, MatrixDouble &vectorOfMonthlyCropIrrigationWaterDemands)
virtual double computeIrrigatedAreaPerMethodAndTotalIrrigationWaterDemand (int m, const MatrixDouble &cropWaterData, const MatrixDouble *&irrigationWaterDemands, MatrixDouble &vectorOfIrrigatedAreaByMethod)
 compute irrigated area per irrigation method and return irrigation demand
virtual double allocateIrrigationWaterToCropsInMonth (int m, double *&D_sat, const MatrixDouble *&irrigationWaterDemands, const MatrixDouble &cropWaterData, MatrixDouble &irrigationWaterDemandsPerPriorityGroup, MatrixDouble &percentageIrrigatedPerPriorityGroup, MatrixDouble &irrigationWaterSuppliedToCrops)
 allocate irrigation water to crops according to priority groups
virtual void computeWaterDeficitsOfAllCrops (const MatrixDouble &cropWaterData, const MatrixDouble *&effectivePrecipitation, const MatrixDouble &irrigationWaterSuppliedToCrops, MatrixDouble &waterDeficitsOfCropsAsMonthlyKR)
 compute crop yields under water stress
virtual void computeYieldReductionUnderWaterStress (MatrixDouble &cropWaterData, MatrixDouble &waterDeficitsOfCropsAsMonthlyKR)
Data query functions
virtual int getNumWaterActivities ()
 get info on water-related cropping activities
virtual int getNumIrrigationPriorityGroups ()
virtual int getNumWaterMonths ()
virtual int getLpColumnForActivityID (int _actID)
virtual int getIrrigationTypeForActivityID (int _actID)
virtual int getActivityIDForLpColumn (int _colLP)
virtual int getIrrigationTypeForLpColumn (int _colLP)
virtual double getPlantWaterDemandsGrossInLiterPerSecond (int _hydroActID, int m_)
virtual int getSoilTypeID (int _hydroActID)
virtual InfoHydro getInfoOnActivityCropHydrology (int arrayIndex)
const InfoHydrogetPointerToInfoOnActivityCropHydrology (int arrayIndex)
Data input functions
virtual void readInputFromFile (string fn)
 Function passes input filename to crop growth module.
virtual void writeInputIntoFile ()
Constructors and destructors
 CropWater ()
 Constructor.
virtual ~CropWater ()
 Destructor.

Protected Member Functions

Protected member functions
double computeCropWaterYieldReductionFactor (double ky, double kr)
 Compute crop growth reduction factor.

Protected Attributes

Protected member data
int numWaterActivities
 Number of water-related cropping activities.
int numIrrigationPriorityGroups
 Number irrigation priority groups.
int numWaterMonths
 Number of months with possible water stress.
double effRainCoeffConstant
 Parameters of effective rainfall function.
double effRainCoeffDemand
double effRainCoeffDemandSquared
double effRainCoeffRain
double effRainCoeffRainSquared
double effRainCoeffCross
InfoHydrowaterActivities
 Water-related information for each cropping activity.
MatrixDouble waterActivityLookup
 vector over all LP columns, containing the index of corresponding water activity

Constructor & Destructor Documentation

CropWater::CropWater  ) 
 

Constructor.

virtual CropWater::~CropWater  )  [inline, virtual]
 

Destructor.


Member Function Documentation

virtual double CropWater::allocateIrrigationWaterToCropsInMonth int  m,
double *&  D_sat,
const MatrixDouble *&  irrigationWaterDemands,
const MatrixDouble cropWaterData,
MatrixDouble irrigationWaterDemandsPerPriorityGroup,
MatrixDouble percentageIrrigatedPerPriorityGroup,
MatrixDouble irrigationWaterSuppliedToCrops
[virtual]
 

allocate irrigation water to crops according to priority groups

virtual double CropWater::computeCropEffectivePrecipitation double  actualRainfall,
double  monthlyWaterDemand
[virtual]
 

compute effective precipitation based on USDA/SCA method (see EDIC-CEDEC)

virtual void CropWater::computeCropEffectivePrecipitationInMonth int  m,
double  actualRainfall,
MatrixDouble vectorOfMonthlyCropEffectivePrecipitation
[virtual]
 

compute monthly crop water demands in sector("effective demands")

virtual void CropWater::computeCropIrrigationWaterDemandsInMonth int  m,
int  secID_,
const IrrigationMethodSector sectorparamsIrrigationMethod,
const MatrixDouble effectivePrecipitation,
MatrixDouble vectorOfMonthlyCropIrrigationWaterDemands
[virtual]
 

double CropWater::computeCropWaterYieldReductionFactor double  ky,
double  kr
[protected]
 

Compute crop growth reduction factor.

virtual double CropWater::computeIrrigatedAreaPerMethodAndTotalIrrigationWaterDemand int  m,
const MatrixDouble cropWaterData,
const MatrixDouble *&  irrigationWaterDemands,
MatrixDouble vectorOfIrrigatedAreaByMethod
[virtual]
 

compute irrigated area per irrigation method and return irrigation demand

virtual void CropWater::computeWaterDeficitsOfAllCrops const MatrixDouble cropWaterData,
const MatrixDouble *&  effectivePrecipitation,
const MatrixDouble irrigationWaterSuppliedToCrops,
MatrixDouble waterDeficitsOfCropsAsMonthlyKR
[virtual]
 

compute crop yields under water stress

virtual void CropWater::computeYieldReductionUnderWaterStress MatrixDouble cropWaterData,
MatrixDouble waterDeficitsOfCropsAsMonthlyKR
[virtual]
 

virtual int CropWater::getActivityIDForLpColumn int  _colLP  )  [virtual]
 

virtual InfoHydro CropWater::getInfoOnActivityCropHydrology int  arrayIndex  )  [virtual]
 

virtual int CropWater::getIrrigationTypeForActivityID int  _actID  )  [virtual]
 

virtual int CropWater::getIrrigationTypeForLpColumn int  _colLP  )  [virtual]
 

virtual int CropWater::getLpColumnForActivityID int  _actID  )  [virtual]
 

virtual int CropWater::getNumIrrigationPriorityGroups  )  [virtual]
 

virtual int CropWater::getNumWaterActivities  )  [virtual]
 

get info on water-related cropping activities

virtual int CropWater::getNumWaterMonths  )  [virtual]
 

virtual double CropWater::getPlantWaterDemandsGrossInLiterPerSecond int  _hydroActID,
int  m_
[virtual]
 

const InfoHydro* CropWater::getPointerToInfoOnActivityCropHydrology int  arrayIndex  ) 
 

virtual int CropWater::getSoilTypeID int  _hydroActID  )  [virtual]
 

virtual void CropWater::readInputFromFile string  fn  )  [virtual]
 

Function passes input filename to crop growth module.

virtual void CropWater::writeInputIntoFile  )  [virtual]
 


Member Data Documentation

double CropWater::effRainCoeffConstant [protected]
 

Parameters of effective rainfall function.

double CropWater::effRainCoeffCross [protected]
 

double CropWater::effRainCoeffDemand [protected]
 

double CropWater::effRainCoeffDemandSquared [protected]
 

double CropWater::effRainCoeffRain [protected]
 

double CropWater::effRainCoeffRainSquared [protected]
 

int CropWater::numIrrigationPriorityGroups [protected]
 

Number irrigation priority groups.

int CropWater::numWaterActivities [protected]
 

Number of water-related cropping activities.

int CropWater::numWaterMonths [protected]
 

Number of months with possible water stress.

InfoHydro* CropWater::waterActivities [protected]
 

Water-related information for each cropping activity.

MatrixDouble CropWater::waterActivityLookup [protected]
 

vector over all LP columns, containing the index of corresponding water activity


The documentation for this class was generated from the following file:
Generated on Thu Aug 28 12:40:36 2008 for MPMAS by  doxygen 1.3.9.1