コード例 #1
0
        /// <summary>Calculate the values for calculated states.</summary>
        private void CalculateStates()
        {
            DMLive             = LiveTissue.Sum(tissue => tissue.DM.Wt);
            DMDead             = DeadTissue.DM.Wt;
            DMTotal            = DMLive + DMDead;
            DMLiveHarvestable  = Math.Max(0, DMLive * FractionStanding - MinimumLiveDM);
            DMDeadHarvestable  = DMDead * FractionStanding;
            DMTotalHarvestable = DMLiveHarvestable + DMDeadHarvestable;

            NLive             = LiveTissue.Sum(tissue => tissue.DM.N);
            NDead             = DeadTissue.DM.N;
            NTotal            = Tissue.Sum(tissue => tissue.DM.N);
            NConcLive         = MathUtilities.Divide(NLive, DMLive, 0.0);
            NConcDead         = MathUtilities.Divide(NDead, DMDead, 0.0);
            NConcTotal        = MathUtilities.Divide(NTotal, DMTotal, 0.0);
            NLiveHarvestable  = MathUtilities.Divide(DMLiveHarvestable, DMLive * NLive, 0);
            NDeadHarvestable  = MathUtilities.Divide(DMDeadHarvestable, DMDead * NDead, 0);
            NTotalHarvestable = NLiveHarvestable + NDeadHarvestable;

            double liveDigestableDM  = LiveTissue.Sum(tissue => tissue.Digestibility * tissue.DM.Wt);
            double totalDigestableDM = Tissue.Sum(tissue => tissue.Digestibility * tissue.DM.Wt);

            DigestibilityLive     = MathUtilities.Divide(liveDigestableDM, DMLive, 0.0);
            DigestibilityDead     = DeadTissue.Digestibility;
            DigestibilityTotal    = MathUtilities.Divide(totalDigestableDM, DMTotal, 0.0);
            StandingDigestibility = DigestibilityTotal * FractionStanding;

            Live.StructuralWt    = DMLiveHarvestable / 10.0; // to g/m2
            Live.StructuralN     = NLiveHarvestable / 10.0;  // to g/m2
            Live.DMDOfStructural = DigestibilityLive;

            Dead.StructuralWt    = DMDeadHarvestable / 10.0; // to g/m2
            Dead.StructuralN     = NDeadHarvestable / 10.0;  // to g/m2
            Dead.DMDOfStructural = DigestibilityDead;
        }
コード例 #2
0
        /// <summary>Calculate the values for calculated states.</summary>
        private void CalculateStates()
        {
            DMLive = LiveTissue.Sum(tissue => tissue.DM.Wt);
            NLive  = LiveTissue.Sum(tissue => tissue.DM.N);

            Live.StructuralWt = DMLive / 10.0;  // to g/m2
            Live.StructuralN  = NLive / 10.0;   // to g/m2
            LiveDigestibility = DigestibilityLive;

            Dead.StructuralWt = DMDead / 10.0;  // to g/m2
            Dead.StructuralN  = NDead / 10.0;   // to g/m2
            DeadDigestibility = DigestibilityDead;
        }