public EventStore(EventStoreConfiguration configuration, IEventMigratorManager eventMigratorManager, IEventMigrationHierarchyManager eventMigrationHierarchyManager, ISerializer serializer, IEventParameters eventParameters) { _eventMigratorManager = eventMigratorManager; _eventMigrationHierarchyManager = eventMigrationHierarchyManager; _serializer = serializer; _eventParameters = eventParameters; _connection = (OracleConnection)configuration.GetConnection(); }
public EventStore(EventStoreConfiguration configuration, IEventMigratorManager eventMigratorManager, IEventMigrationHierarchyManager eventMigrationHierarchyManager, ISerializer serializer, IEventParameters eventParameters) { _eventMigratorManager = eventMigratorManager; _eventMigrationHierarchyManager = eventMigrationHierarchyManager; _serializer = serializer; _eventParameters = eventParameters; _connection = (OracleConnection)configuration.GetConnection(); }
//--------------------------------------------------------------------- public Parameters(int timestep, IEventParameters[] eventParameters, ISeverity[] severities, string mapNameTemplate, string logFileName) { this.timestep = timestep; this.eventParameters = eventParameters; this.severities = severities; this.mapNamesTemplate = mapNameTemplate; this.logFileName = logFileName; }
//--------------------------------------------------------------------- public static double ComputeSizeHectares(IEventParameters eventParms) { // double sizeGenerated = PlugIn.ModelCore.GenerateExponential(eventParms.MeanSize); PlugIn.ModelCore.ExponentialDistribution.Lambda = 1.0 / eventParms.MeanSize; double sizeGenerated = PlugIn.ModelCore.ExponentialDistribution.NextDouble(); if (sizeGenerated < eventParms.MinSize) { return(eventParms.MinSize); } else if (sizeGenerated > eventParms.MaxSize) { return(eventParms.MaxSize); } else { return(sizeGenerated); } }
//--------------------------------------------------------------------- public static Event Initiate(ActiveSite site, int windTimestep) { IEcoregion ecoregion = PlugIn.ModelCore.Ecoregion[site]; IEventParameters eventParms = windEventParms[ecoregion.Index]; double eventProbability = (windTimestep * PlugIn.ModelCore.CellArea) / (eventParms.RotationPeriod * eventParms.MeanSize); if (PlugIn.ModelCore.GenerateUniform() <= eventProbability) { Event windEvent = new Event(site, ComputeSizeHectares(eventParms)); windEvent.Spread(PlugIn.ModelCore.CurrentTime); return(windEvent); } else { return(null); } }
//--------------------------------------------------------------------- public static void Initialize(IEventParameters[] eventParameters, ISeverity[] severities) { windEventParms = eventParameters; Event.severities = severities; //Event.timestep = Model.Core.Timestep; cohorts = Model.Core.SuccessionCohorts as ILandscapeCohorts; if (cohorts == null) throw new System.ApplicationException("Error: Cohorts don't support age-cohort interface"); // successionPlugIn = Model.GetSuccession<AgeCohort.ICohort>(); // cohorts = successionPlugIn.Cohorts; }
//--------------------------------------------------------------------- public static double ComputeSizeHectares(IEventParameters eventParms) { double sizeGenerated = Random.GenerateExponential(eventParms.MeanSize); if (sizeGenerated < eventParms.MinSize) return eventParms.MinSize; else if (sizeGenerated > eventParms.MaxSize) return eventParms.MaxSize; else return sizeGenerated; }
//--------------------------------------------------------------------- public static void Initialize(IEventParameters[] eventParameters, ISeverity[] severities, int timestep) { windEventParms = eventParameters; Event.severities = severities; Event.timestep = timestep; }
//--------------------------------------------------------------------- public static void Initialize(IEventParameters[] eventParameters, ISeverity[] severities) { windEventParms = eventParameters; Event.severities = severities; }
//--------------------------------------------------------------------- public static void Initialize(IEventParameters[] eventParameters, ISeverity[] severities, int timestep) { windEventParms = eventParameters; Event.severities = severities; Event.timestep = timestep; successionPlugIn = Model.GetSuccession<AgeCohort.ICohort>(); cohorts = successionPlugIn.Cohorts; }
//--------------------------------------------------------------------- public static double ComputeSizeHectares(IEventParameters eventParms) { // double sizeGenerated = PlugIn.ModelCore.GenerateExponential(eventParms.MeanSize); PlugIn.ModelCore.ExponentialDistribution.Lambda = 1.0 / eventParms.MeanSize; double sizeGenerated = PlugIn.ModelCore.ExponentialDistribution.NextDouble(); if (sizeGenerated < eventParms.MinSize) return eventParms.MinSize; else if (sizeGenerated > eventParms.MaxSize) return eventParms.MaxSize; else return sizeGenerated; }
//--------------------------------------------------------------------- public static void Initialize(IEventParameters[] eventParameters, List<ISeverity> severities) { windEventParms = eventParameters; Event.severities = severities; cohorts = Model.Core.SuccessionCohorts as ILandscapeCohorts; if (cohorts == null) throw new System.ApplicationException("Error: Cohorts don't support age-cohort interface"); }