示例#1
0
 protected void OnPlantSowing(object sender, SowingParameters data)
 {
     if (data.Plant == parentPlant)
     {
         Clear();
     }
 }
示例#2
0
 private void OnPlantSowing(object sender, SowingParameters data)
 {
     if (data.Plant == parentPlant)
     {
         Clear();
         ClearBiomassFlows();
     }
 }
示例#3
0
        virtual protected void OnPlantSowing(object sender, SowingParameters data)
        {
            totalLaiEquilibWater = 0.0;
            avLaiEquilibWater    = 0.0;
            laiEquilibWaterQ     = new Queue <double>();

            totalSDRatio = 0.0;
            avSDRatio    = 0.0;
            sdRatioQ     = new Queue <double>();
        }
示例#4
0
 protected void OnPlantSowing(object sender, SowingParameters Sow)
 {
     if (Sow.Plant == plant)
     {
         Reset();
         Number = structure.PrimaryBudNo;
         apexGroupAge.Add(1);
         apexGroupSize.Add(1);
     }
 }
示例#5
0
        protected void OnPlantSowing(object sender, SowingParameters data)
        {
            if (data.Plant == plant)
            {
                radiationAverages = new List <double>();
                plantsPerMetre    = data.RowSpacing / 1000.0 * data.SkipDensityScale;
                //plantsPerMetre = data.Population * data.RowSpacing / 1000.0 * data.SkipDensityScale;

                FertileTillerNumber = data.BudNumber;
                tillersAdded        = 0.0;
            }
        }
示例#6
0
 protected void OnPlantSowing(object sender, SowingParameters data)
 {
     if (data.Plant == plant)
     {
         Clear();
         ClearBiomassFlows();
         Live.StructuralWt = initialWt.Value();
         Live.StorageWt    = 0.0;
         Live.StructuralN  = Live.StructuralWt * minimumNConc.Value();
         Live.StorageN     = (initialWt.Value() * maximumNConc.Value()) - Live.StructuralN;
     }
 }
示例#7
0
 private void OnPlantSowing(object sender, SowingParameters Sow)
 {
     if (Sow.Plant == plant)
     {
         Clear();
         if (Sow.MaxCover <= 0.0)
         {
             throw new Exception("MaxCover must exceed zero in a Sow event.");
         }
         PrimaryBudNo  = Sow.BudNumber;
         TotalStemPopn = MainStemPopn;
     }
 }
示例#8
0
 protected void OnPlantSowing(object sender, SowingParameters data)
 {
     if (data.Plant == parentPlant)
     {
         Clear();
         ClearBiomassFlows();
         Live.StructuralWt = InitialWt.Structural.Value();
         Live.MetabolicWt  = InitialWt.Metabolic.Value();
         Live.StorageWt    = InitialWt.Storage.Value();
         Live.StructuralN  = Live.StructuralWt * initialNConcFunction.Value();
         Live.StorageN     = Live.StorageWt * initialNConcFunction.Value();
     }
 }
示例#9
0
 protected void OnPlantSowing(object sender, SowingParameters data)
 {
     if (data.Plant == plant)
     {
         if (plant.SowingData.BudNumber == -1)
         {
             FertileTillerNumber = CalculateFtn();
         }
         else
         {
             FertileTillerNumber = data.BudNumber;
         }
         tillersAdded = 0.0;
     }
 }
示例#10
0
 private void OnPlantSowing(object sender, SowingParameters data)
 {
     Reset();
     Params = calcCAMPVrnRates.CalcCultivarParams(FLNparams, EnvData);
     summary.WriteMessage(this, "The following FLN parameters were used for " + data.Cultivar, MessageType.Diagnostic);
     summary.WriteMessage(this, "FLN LV = " + FLNparams.LV.ToString(), MessageType.Diagnostic);
     summary.WriteMessage(this, "FLN SV = " + FLNparams.SV.ToString(), MessageType.Diagnostic);
     summary.WriteMessage(this, "FLN LN = " + FLNparams.LN.ToString(), MessageType.Diagnostic);
     summary.WriteMessage(this, "FLN SN = " + FLNparams.SN.ToString(), MessageType.Diagnostic);
     summary.WriteMessage(this, "The following Vrn expression rate parameters have been calculated", MessageType.Diagnostic);
     summary.WriteMessage(this, "BaseDVrn1 = " + Params.BaseDVrn1.ToString(), MessageType.Diagnostic);
     summary.WriteMessage(this, "MaxDVrn1  = " + Params.MaxDVrn1.ToString(), MessageType.Diagnostic);
     summary.WriteMessage(this, "MaxIpVrn2 = " + Params.MaxIpVrn2.ToString(), MessageType.Diagnostic);
     summary.WriteMessage(this, "MaxDpVrn2 = " + Params.MaxDpVrn2.ToString(), MessageType.Diagnostic);
     summary.WriteMessage(this, "BaseDVrn3 = " + Params.BaseDVrn3.ToString(), MessageType.Diagnostic);
     summary.WriteMessage(this, "MaxDVrn3  = " + Params.MaxDVrn3.ToString(), MessageType.Diagnostic);
     summary.WriteMessage(this, "MaxDVrnX  = " + Params.MaxDVrnX.ToString(), MessageType.Diagnostic);
     summary.WriteMessage(this, "IntFLNvsTSHS     = " + Params.IntFLNvsTSHS.ToString(), MessageType.Diagnostic);
 }
 private void OnPlantSowing(object sender, SowingParameters data)
 {
     AccumulatedThermalTime = 0;
 }
示例#12
0
 private void OnPlantSowing(object sender, SowingParameters data)
 {
     Target = target.Value();
 }
示例#13
0
 protected void OnPlantSowing(object sender, SowingParameters data)
 {
     Clear();
 }
示例#14
0
 virtual protected void OnPlantSowing(object sender, SowingParameters data)
 {
     totalLaiEqlbLight  = 0;
     avgLaiEquilibLight = 0;
     laiEqlbLightTodayQ = new Queue <double>();
 }
示例#15
0
 private void OnPlantSowing(object sender, SowingParameters data)
 {
     Clear();
     stagesPassedToday.Add(phases[0].Start);
 }
示例#16
0
 virtual protected void OnPlantSowing(object sender, SowingParameters data)
 {
     nDeadLeaves   = 0.0;
     dltDeadLeaves = 0.0;
 }
示例#17
0
 private void OnPlantSowing(object sender, SowingParameters data)
 {
     Clear();
 }
示例#18
0
 private void OnPlantSowing(object sender, SowingParameters data)
 {
     SowLayer = SoilUtilities.LayerIndexOfDepth(soilPhysical.Thickness, plant.SowingData.Depth);
 }
示例#19
0
 private void OnPlantSowing(object sender, SowingParameters data)
 {
     Target = ShootLag + data.Depth * ShootRate;
 }
示例#20
0
 private void OnPlantSowing(object sender, SowingParameters data)
 {
     SowLayer = soil.LayerIndexOfDepth(plant.SowingData.Depth);
 }