aegis_sim.submodels
1from aegis_sim.submodels.reproduction.mutation import mutator 2from aegis_sim.submodels.reproduction.reproduction import Reproducer 3from aegis_sim.submodels.abiotic import Abiotic 4from aegis_sim.submodels.predation import Predation 5from aegis_sim.submodels.resources.starvation import starvation 6from aegis_sim.submodels.infection import Infection 7from aegis_sim.submodels.frailty import frailty 8from aegis_sim.submodels.genetics.ploider import ploider 9from aegis_sim.submodels.genetics.architect import Architect 10from aegis_sim.utilities.popgenstats import PopgenStats 11from aegis_sim.submodels.resources.resources import resources 12from aegis_sim.submodels.reproduction.sexsystem import SexSystem 13from aegis_sim.submodels.reproduction.matingmanager import MatingManager 14 15 16def init(self, parametermanager): 17 18 ################################## 19 # INDEPENDENT of other submodels # 20 ################################## 21 22 self.abiotic = Abiotic( 23 ABIOTIC_HAZARD_SHAPE=parametermanager.parameters.ABIOTIC_HAZARD_SHAPE, 24 ABIOTIC_HAZARD_OFFSET=parametermanager.parameters.ABIOTIC_HAZARD_OFFSET, 25 ABIOTIC_HAZARD_AMPLITUDE=parametermanager.parameters.ABIOTIC_HAZARD_AMPLITUDE, 26 ABIOTIC_HAZARD_PERIOD=parametermanager.parameters.ABIOTIC_HAZARD_PERIOD, 27 ) 28 self.predation = Predation( 29 PREDATOR_GROWTH=parametermanager.parameters.PREDATOR_GROWTH, 30 PREDATION_RATE=parametermanager.parameters.PREDATION_RATE, 31 ) 32 starvation.init( 33 STARVATION_MORTALITY_FACTOR=parametermanager.parameters.STARVATION_MORTALITY_FACTOR, 34 STARVATION_MORTALITY_MAXIMUM=parametermanager.parameters.STARVATION_MORTALITY_MAXIMUM, 35 ) 36 self.infection = Infection( 37 BACKGROUND_INFECTIVITY=parametermanager.parameters.BACKGROUND_INFECTIVITY, 38 TRANSMISSIBILITY=parametermanager.parameters.TRANSMISSIBILITY, 39 RECOVERY_RATE=parametermanager.parameters.RECOVERY_RATE, 40 FATALITY_RATE=parametermanager.parameters.FATALITY_RATE, 41 ) 42 frailty.init( 43 FRAILTY_MODIFIER=parametermanager.parameters.FRAILTY_MODIFIER, 44 AGE_LIMIT=parametermanager.parameters.AGE_LIMIT, 45 ) 46 47 # Resources 48 resources.init( 49 RESOURCE_ADDITIVE_GROWTH=parametermanager.parameters.RESOURCE_ADDITIVE_GROWTH, 50 RESOURCE_MULTIPLICATIVE_GROWTH=parametermanager.parameters.RESOURCE_MULTIPLICATIVE_GROWTH, 51 RESOURCE_MAXIMUM_AMOUNT=parametermanager.parameters.RESOURCE_MAXIMUM_AMOUNT, 52 RESOURCE_INITIAL_AMOUNT=parametermanager.parameters.RESOURCE_INITIAL_AMOUNT, 53 ) 54 55 # Reproduction 56 mutator.init( 57 MUTATION_RATIO=parametermanager.parameters.MUTATION_RATIO, 58 MUTATION_METHOD=parametermanager.parameters.MUTATION_METHOD, 59 MUTATION_AGE_MULTIPLIER=parametermanager.parameters.MUTATION_AGE_MULTIPLIER, 60 ) 61 self.sexsystem = SexSystem() 62 self.matingmanager = MatingManager() 63 64 # Genetic architecture 65 ploider.init( 66 REPRODUCTION_MODE=parametermanager.parameters.REPRODUCTION_MODE, 67 DOMINANCE_FACTOR=parametermanager.parameters.DOMINANCE_FACTOR, 68 PLOIDY=parametermanager.parameters.PLOIDY, 69 ) 70 71 # Other 72 self.popgenstats = PopgenStats() 73 74 ################################ 75 # DEPENDENT on other submodels # 76 ################################ 77 78 # Reproduction 79 self.reproduction = Reproducer( 80 RECOMBINATION_RATE=parametermanager.parameters.RECOMBINATION_RATE, 81 REPRODUCTION_MODE=parametermanager.parameters.REPRODUCTION_MODE, 82 mutator=mutator, 83 ) 84 85 # Genetic architecture 86 self.architect = Architect( 87 GENARCH_TYPE=parametermanager.parameters.GENARCH_TYPE, 88 BITS_PER_LOCUS=parametermanager.parameters.BITS_PER_LOCUS, 89 PHENOMAP=parametermanager.parameters.PHENOMAP, 90 AGE_LIMIT=parametermanager.parameters.AGE_LIMIT, 91 THRESHOLD=parametermanager.parameters.THRESHOLD, 92 ENVDRIFT_RATE=parametermanager.parameters.ENVDRIFT_RATE, 93 MODIF_GENOME_SIZE=parametermanager.parameters.MODIF_GENOME_SIZE, 94 )
def
init(self, parametermanager):
17def init(self, parametermanager): 18 19 ################################## 20 # INDEPENDENT of other submodels # 21 ################################## 22 23 self.abiotic = Abiotic( 24 ABIOTIC_HAZARD_SHAPE=parametermanager.parameters.ABIOTIC_HAZARD_SHAPE, 25 ABIOTIC_HAZARD_OFFSET=parametermanager.parameters.ABIOTIC_HAZARD_OFFSET, 26 ABIOTIC_HAZARD_AMPLITUDE=parametermanager.parameters.ABIOTIC_HAZARD_AMPLITUDE, 27 ABIOTIC_HAZARD_PERIOD=parametermanager.parameters.ABIOTIC_HAZARD_PERIOD, 28 ) 29 self.predation = Predation( 30 PREDATOR_GROWTH=parametermanager.parameters.PREDATOR_GROWTH, 31 PREDATION_RATE=parametermanager.parameters.PREDATION_RATE, 32 ) 33 starvation.init( 34 STARVATION_MORTALITY_FACTOR=parametermanager.parameters.STARVATION_MORTALITY_FACTOR, 35 STARVATION_MORTALITY_MAXIMUM=parametermanager.parameters.STARVATION_MORTALITY_MAXIMUM, 36 ) 37 self.infection = Infection( 38 BACKGROUND_INFECTIVITY=parametermanager.parameters.BACKGROUND_INFECTIVITY, 39 TRANSMISSIBILITY=parametermanager.parameters.TRANSMISSIBILITY, 40 RECOVERY_RATE=parametermanager.parameters.RECOVERY_RATE, 41 FATALITY_RATE=parametermanager.parameters.FATALITY_RATE, 42 ) 43 frailty.init( 44 FRAILTY_MODIFIER=parametermanager.parameters.FRAILTY_MODIFIER, 45 AGE_LIMIT=parametermanager.parameters.AGE_LIMIT, 46 ) 47 48 # Resources 49 resources.init( 50 RESOURCE_ADDITIVE_GROWTH=parametermanager.parameters.RESOURCE_ADDITIVE_GROWTH, 51 RESOURCE_MULTIPLICATIVE_GROWTH=parametermanager.parameters.RESOURCE_MULTIPLICATIVE_GROWTH, 52 RESOURCE_MAXIMUM_AMOUNT=parametermanager.parameters.RESOURCE_MAXIMUM_AMOUNT, 53 RESOURCE_INITIAL_AMOUNT=parametermanager.parameters.RESOURCE_INITIAL_AMOUNT, 54 ) 55 56 # Reproduction 57 mutator.init( 58 MUTATION_RATIO=parametermanager.parameters.MUTATION_RATIO, 59 MUTATION_METHOD=parametermanager.parameters.MUTATION_METHOD, 60 MUTATION_AGE_MULTIPLIER=parametermanager.parameters.MUTATION_AGE_MULTIPLIER, 61 ) 62 self.sexsystem = SexSystem() 63 self.matingmanager = MatingManager() 64 65 # Genetic architecture 66 ploider.init( 67 REPRODUCTION_MODE=parametermanager.parameters.REPRODUCTION_MODE, 68 DOMINANCE_FACTOR=parametermanager.parameters.DOMINANCE_FACTOR, 69 PLOIDY=parametermanager.parameters.PLOIDY, 70 ) 71 72 # Other 73 self.popgenstats = PopgenStats() 74 75 ################################ 76 # DEPENDENT on other submodels # 77 ################################ 78 79 # Reproduction 80 self.reproduction = Reproducer( 81 RECOMBINATION_RATE=parametermanager.parameters.RECOMBINATION_RATE, 82 REPRODUCTION_MODE=parametermanager.parameters.REPRODUCTION_MODE, 83 mutator=mutator, 84 ) 85 86 # Genetic architecture 87 self.architect = Architect( 88 GENARCH_TYPE=parametermanager.parameters.GENARCH_TYPE, 89 BITS_PER_LOCUS=parametermanager.parameters.BITS_PER_LOCUS, 90 PHENOMAP=parametermanager.parameters.PHENOMAP, 91 AGE_LIMIT=parametermanager.parameters.AGE_LIMIT, 92 THRESHOLD=parametermanager.parameters.THRESHOLD, 93 ENVDRIFT_RATE=parametermanager.parameters.ENVDRIFT_RATE, 94 MODIF_GENOME_SIZE=parametermanager.parameters.MODIF_GENOME_SIZE, 95 )