Skip to content

Commit c4746ea

Browse files
committed
refactor(model): moved input validation into own method within Model
1 parent 824d674 commit c4746ea

File tree

1 file changed

+13
-6
lines changed

1 file changed

+13
-6
lines changed

simulation/model.py

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -380,6 +380,9 @@ def __init__(self, param, run_number):
380380
self.param = param
381381
self.run_number = run_number
382382

383+
# Check validity of provided parameters
384+
self.valid_inputs()
385+
383386
# Create simpy environment and resource
384387
self.env = simpy.Environment()
385388
self.nurse = MonitoredResource(self.env,
@@ -404,6 +407,16 @@ def __init__(self, param, run_number):
404407
self.nurse_consult_time_dist = Exponential(
405408
mean=self.param.mean_n_consult_time, random_seed=seeds[1])
406409

410+
# Log model initialisation
411+
self.param.logger.log(sim_time=self.env.now, msg='Initialise model:\n')
412+
self.param.logger.log(vars(self))
413+
self.param.logger.log(sim_time=self.env.now, msg='Parameters:\n ')
414+
self.param.logger.log(vars(self.param))
415+
416+
def valid_inputs(self):
417+
"""
418+
Checks validity of provided parameters.
419+
"""
407420
# Define validation rules for attributes
408421
# Doesn't include number_of_nurses as this is tested by simpy.Resource
409422
validation_rules = {
@@ -427,12 +440,6 @@ def __init__(self, param, run_number):
427440
'equal to 0.'
428441
)
429442

430-
# Log model initialisation
431-
self.param.logger.log(sim_time=self.env.now, msg='Initialise model:\n')
432-
self.param.logger.log(vars(self))
433-
self.param.logger.log(sim_time=self.env.now, msg='Parameters:\n ')
434-
self.param.logger.log(vars(self.param))
435-
436443
def generate_patient_arrivals(self):
437444
"""
438445
Generate patient arrivals.

0 commit comments

Comments
 (0)