Public Member Functions | |
| def | __init__ (self, cfg) |
| def | set_unique_id (self, given_id=None) |
| def | rule_based_config (self, method, conf_rate) |
| def | random_based_config (self, conf_rate) |
| def | decoding (self) |
| def | export_to_mongodb (self) |
| def | export_scenario_to_txt (self) |
| def | export_scenario_to_gtiff (self) |
| def | import_from_mongodb (self, sid) |
| def | import_from_txt (self, sid) |
| def | calculate_economy (self) |
| def | calculate_environment (self) |
| def | clean (self, scenario_id=None, calibration_id=None, delete_scenario=False, delete_spatial_gfs=False) |
| def | execute_seims_model (self) |
| def | initialize (self, input_genes=None) |
Base class of Scenario Analysis.
Attributes:
ID(integer): Unique ID in BMPScenario database -> BMP_SCENARIOS collection
eval_timerange(float): Simulation time range, read from MongoDB, the unit is year.
economy(float): Economical effectiveness, e.g., income minus expenses
environment(float): Environmental effectiveness, e.g., reduction rate of soil erosion
gene_num(integer): The number of genes of one chromosome, i.e., an individual
gene_values(list): BMP identifiers on each location of gene. The length is gen_num.
bmp_items(dict): BMP configuration items that can be imported to MongoDB directly.
The key is `bson.objectid.ObjectId`, the value is scenario item dict.
rules(boolean): Config BMPs randomly or rule-based.
modelrun(boolean): Has SEIMS model run successfully?
| def seims.scenario_analysis.scenario.Scenario.__init__ | ( | self, | |
| cfg | |||
| ) |
Initialize.
Reimplemented in seims.scenario_analysis.spatialunits.scenario.SUScenario.
| def seims.scenario_analysis.scenario.Scenario.calculate_economy | ( | self | ) |
Calculate economical effectiveness, which is application specified.
Reimplemented in seims.scenario_analysis.spatialunits.scenario.SUScenario.
| def seims.scenario_analysis.scenario.Scenario.calculate_environment | ( | self | ) |
Calculate environment effectiveness, which is application specified.
Reimplemented in seims.scenario_analysis.spatialunits.scenario.SUScenario.
| def seims.scenario_analysis.scenario.Scenario.clean | ( | self, | |
scenario_id = None, |
|||
calibration_id = None, |
|||
delete_scenario = False, |
|||
delete_spatial_gfs = False |
|||
| ) |
Clean the intermediate data.
| def seims.scenario_analysis.scenario.Scenario.decoding | ( | self | ) |
Decoding gene_values to bmp_items This function should be overridden.
Reimplemented in seims.scenario_analysis.spatialunits.scenario.SUScenario.
| def seims.scenario_analysis.scenario.Scenario.execute_seims_model | ( | self | ) |
Run SEIMS for evaluating environmental effectiveness. If execution fails, the `self.economy` and `self.environment` will be set the worst values.
| def seims.scenario_analysis.scenario.Scenario.export_scenario_to_gtiff | ( | self | ) |
Export the areal BMPs to gtiff for further analysis. This function should be overridden in inherited class.
Reimplemented in seims.scenario_analysis.spatialunits.scenario.SUScenario.
| def seims.scenario_analysis.scenario.Scenario.export_scenario_to_txt | ( | self | ) |
Export current scenario information to text file.
This function is better be called after `calculate_environment` and `calculate_environment`
or in static method, e.g., `scenario_effectiveness`.
| def seims.scenario_analysis.scenario.Scenario.export_to_mongodb | ( | self | ) |
Export current scenario to MongoDB. Delete the same ScenarioID if existed.
| def seims.scenario_analysis.scenario.Scenario.import_from_mongodb | ( | self, | |
| sid | |||
| ) |
Import a specified Scenario (`sid`) from MongoDB.
This function should be overridden in inherited class.
Returns:
True if succeed, otherwise False.
Reimplemented in seims.scenario_analysis.spatialunits.scenario.SUScenario.
| def seims.scenario_analysis.scenario.Scenario.import_from_txt | ( | self, | |
| sid | |||
| ) |
Import a specified Scenario (`sid`) from text file.
This function should be overridden in inherited class.
Returns:
True if succeed, otherwise False.
Reimplemented in seims.scenario_analysis.spatialunits.scenario.SUScenario.
| def seims.scenario_analysis.scenario.Scenario.initialize | ( | self, | |
input_genes = None |
|||
| ) |
Initialize a scenario.
Returns:
A list contains BMPs identifier of each gene location.
Reimplemented in seims.scenario_analysis.spatialunits.scenario.SUScenario.
| def seims.scenario_analysis.scenario.Scenario.random_based_config | ( | self, | |
| conf_rate | |||
| ) |
Config available BMPs to each gene of the chromosome by random-based method. Virtual function that should be overridden in inherited Scenario class.
Reimplemented in seims.scenario_analysis.spatialunits.scenario.SUScenario.
| def seims.scenario_analysis.scenario.Scenario.rule_based_config | ( | self, | |
| method, | |||
| conf_rate | |||
| ) |
Config available BMPs to each gene of the chromosome by rule-based method. Virtual function that should be overridden in inherited Scenario class.
Reimplemented in seims.scenario_analysis.spatialunits.scenario.SUScenario.
| def seims.scenario_analysis.scenario.Scenario.set_unique_id | ( | self, | |
given_id = None |
|||
| ) |
Set unique ID.