本文整理汇总了C#中ISpeciesCohorts类的典型用法代码示例。如果您正苦于以下问题:C# ISpeciesCohorts类的具体用法?C# ISpeciesCohorts怎么用?C# ISpeciesCohorts使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
ISpeciesCohorts类属于命名空间,在下文中一共展示了ISpeciesCohorts类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: AllExceptYoungest
//---------------------------------------------------------------------
public void AllExceptYoungest(ISpeciesCohorts cohorts,
ISpeciesCohortBoolArray isDamaged)
{
// Youngest is the last cohort (at index Count - 1)
for (int i = 0; i < (isDamaged.Count - 1); i++)
isDamaged[i] = true;
}
示例2: All
//---------------------------------------------------------------------
/// <summary>
/// Selects all of a species' cohorts for harvesting.
/// </summary>
public static void All(ISpeciesCohorts cohorts,
ISpeciesCohortBoolArray isHarvested)
{
//loop through all cohorts and mark as harvested
for (int i = 0; i < isHarvested.Count; i++)
isHarvested[i] = true;
}
示例3: OldestOfSelectedSpecies
//---------------------------------------------------------------------
public void OldestOfSelectedSpecies(ISpeciesCohorts cohorts,
ISpeciesCohortBoolArray isDamaged)
{
if (cohorts.Species == SelectedSpecies)
// Oldest is first cohort
isDamaged[0] = true;
}
示例4: AllExceptOldest
//---------------------------------------------------------------------
/// <summary>
/// Selects all of a species' cohorts for harvesting except the oldest.
/// </summary>
public static void AllExceptOldest(ISpeciesCohorts cohorts,
ISpeciesCohortBoolArray isHarvested)
{
// Oldest is first (so start at i = 1 instead of i = 0)
for (int i = 1; i < isHarvested.Count; i++)
isHarvested[i] = true;
}
示例5: Harvest
//---------------------------------------------------------------------
/// <summary>
/// Selects which of a species' cohorts are harvested.
/// </summary>
public void Harvest(ISpeciesCohorts cohorts,
ISpeciesCohortBoolArray isHarvested)
{
SelectCohorts.Method selectionMethod;
if (selectionMethods.TryGetValue(cohorts.Species, out selectionMethod))
selectionMethod(cohorts, isHarvested);
}
示例6: MarkCohortsForDeath
//---------------------------------------------------------------------
#region ISpeciesCohortsDisturbance members
/// <summary>
/// Mark which cohorts for a species are to be cut (harvested).
/// </summary>
public void MarkCohortsForDeath(ISpeciesCohorts cohorts,
ISpeciesCohortBoolArray isKilled)
{
CohortSelector.Harvest(cohorts, isKilled);
int numKilled = 0;
for (int i = 0; i < isKilled.Count; i++)
{
if (isKilled[i])
{
cohortCounts.IncrementCount(cohorts.Species);
numKilled++;
}
}
if (isDebugEnabled)
{
if (numKilled > 0)
{
string ageList = "";
int i = 0;
foreach (ICohort cohort in cohorts)
{
if (isKilled[i])
ageList += string.Format(" {0}", cohort.Age);
i++;
}
log.DebugFormat(" Cut {0} :{1}", cohorts.Species.Name, ageList);
}
}
}
示例7: AllOfSelectedSpecies
//---------------------------------------------------------------------
public void AllOfSelectedSpecies(ISpeciesCohorts cohorts,
ISpeciesCohortBoolArray isDamaged)
{
if (cohorts.Species == SelectedSpecies) {
for (int i = 0; i < isDamaged.Count; i++)
isDamaged[i] = true;
}
}
示例8: ComputeBiomass
////---------------------------------------------------------------------
//public static string MakeSpeciesMapName(string species)
//{
// return SpeciesMapNames.ReplaceTemplateVars(speciesMapNameTemplate,
// species,
// ModelCore.CurrentTime);
//}
//--------------------------------------------------------------
public static double ComputeBiomass(ISpeciesCohorts cohorts)
{
double total = 0.0;
if (cohorts != null)
foreach (ICohort cohort in cohorts)
total += (double) (cohort.LeafBiomass + cohort.WoodBiomass);
return total;
}
示例9: ComputeBiomass
public static int ComputeBiomass(ISpeciesCohorts cohorts)
{
int total = 0;
if (cohorts != null)
foreach (ICohort cohort in cohorts)
total += cohort.Biomass;
return total;
}
示例10: AllExceptYoungest
//---------------------------------------------------------------------
/// <summary>
/// Selects all of a species' cohorts for harvesting except the
/// youngest.
/// </summary>
public static void AllExceptYoungest(ISpeciesCohorts cohorts,
ISpeciesCohortBoolArray isHarvested)
{
// Youngest is last.
int youngestIndex = isHarvested.Count - 1;
for (int i = 0; i < youngestIndex; i++)
isHarvested[i] = true;
}
示例11: GetMaxAge
/// <summary>
/// Gets the maximum age among a species' cohorts.
/// </summary>
/// <returns>
/// The age of the oldest cohort or 0 if there are no cohorts.
/// </returns>
public static ushort GetMaxAge(ISpeciesCohorts<ICohort> cohorts)
{
if (cohorts == null)
return 0;
ushort max = 0;
foreach (ushort age in cohorts.Ages)
if (age > max)
max = age;
return max;
}
示例12: SelectCohorts
//---------------------------------------------------------------------
/// <summary>
/// Selects which of a species' cohorts are harvested.
/// </summary>
public void SelectCohorts(ISpeciesCohorts cohorts,
ISpeciesCohortBoolArray isHarvested)
{
int i = 0;
foreach (ICohort cohort in cohorts) {
AgeRange? notUsed;
if (agesAndRanges.Contains(cohort.Age, out notUsed))
isHarvested[i] = true;
i++;
}
}
示例13: SpeciesCohorts
//---------------------------------------------------------------------
/// <summary>
/// Initializes a new instance by copying a set of species cohorts.
/// </summary>
public SpeciesCohorts(ISpeciesCohorts cohorts)
{
this.species = cohorts.Species;
this.ages = new List<ushort>(cohorts.Count);
this.isMaturePresent = false;
foreach (ICohort cohort in cohorts) {
ushort age = cohort.Age;
this.ages.Add(age);
if (age >= species.Maturity)
this.isMaturePresent = true;
}
}
示例14: GetMaxAge
/// <summary>
/// Gets the maximum age among a species' cohorts.
/// </summary>
/// <returns>
/// The age of the oldest cohort or 0 if there are no cohorts.
/// </returns>
public static ushort GetMaxAge(ISpeciesCohorts cohorts)
{
if (cohorts == null)
return 0;
ushort max = 0;
foreach (ICohort cohort in cohorts) {
// First cohort is the oldest
max = cohort.Age;
break;
}
return max;
}
示例15: SelectCohorts
//---------------------------------------------------------------------
/// <summary>
/// Selects which of a species' cohorts are harvested.
/// </summary>
public void SelectCohorts(ISpeciesCohorts cohorts,
ISpeciesCohortBoolArray isHarvested)
{
int i = 0;
foreach (ICohort cohort in cohorts) {
if (ages.Contains(cohort.Age))
isHarvested[i] = true;
else {
foreach (AgeRange range in ranges) {
if (range.Contains(cohort.Age)) {
isHarvested[i] = true;
break;
}
}
}
i++;
}
}