Source code for pycif.plugins.models.dummy.ini_mapper
import numpy as np
import datetime
[docs]
def ini_mapper(model, general_mapper={}, backup_comps={},
transforms_order=[], ref_transform="", **kwargs):
input_intervals = {
ddi: np.append(
model.input_dates[ddi][:-1, np.newaxis],
model.input_dates[ddi][:-1, np.newaxis]
+ datetime.timedelta(hours=1),
axis=1)
for ddi in model.input_dates}
default_dict = {
"input_dates": input_intervals,
"force_loadin": True,
"force_dump": True,
"sparse_data": False,
"sampled": False,
}
dict_surface = dict(default_dict, **{"domain": model.domain})
# Executable
mapper = {
"inputs": {("meteo", param): dict_surface
for param in ["windspeed", "winddir", "stabclass"]},
"outputs": {("concs", s): {
"force_loadout": True,
"input_dates": input_intervals,
"continuous_hdomain": True,
"continuous_vdomain": True,
"domain": model.domain,
"sampled": True,
"sparse_data": False
}
for s in model.chemistry.acspecies.attributes},
}
emis = {
("flux", s): dict_surface
for s in model.chemistry.acspecies.attributes
}
mapper["inputs"].update(emis)
# Save propagation of perturbations
mapper["outputs2inputs"] = {
("concs", s): [("flux", s)]
for s in model.chemistry.acspecies.attributes
}
return mapper