Source code for pycif.plugins.models.satwetch4.ini_mapper
import datetime
import numpy as np
from logging import info
from ....utils.classes.setup import Setup
from ....utils.classes.domains import Domain
from ....utils.check.errclass import PluginError
[docs]
def ini_mapper(model, general_mapper={}, backup_comps={},
transforms_order=[], ref_transform="",
transform_name="", all_transforms=None, **kwargs):
input_intervals = {
ddi: np.append(
model.input_dates[ddi][:-1, np.newaxis],
model.input_dates[ddi][1:, np.newaxis],
axis=1)
for ddi in model.input_dates}
mapper = dict()
default_input_dict = {
"input_dates": input_intervals,
"force_dump": True,
"domain": model.domain,
"sampled": False,
"sparse_data": False
}
mapper['inputs'] = {
**{("meteo", comp): default_input_dict
for comp in ["soil_temperature", "inundated_fraction", "C_labile"]},
**{("satwetch4_model_param", comp): default_input_dict
for comp in ["k", "q10"]},
}
mapper["outputs"] = {
("flux", "CH4_wetlands"): {
"input_dates": input_intervals,
"force_loadout": True,
"domain": model.domain,
"sampled": False,
"sparse_data": False
}
}
info("The model was initialized with the following mapper sw:")
info("\nInputs:\n\n")
for key in mapper["inputs"]:
info(f"\t{key}: \t {mapper['inputs'][key]}\n")
info("\n\n\nOutputs:\n\n")
for key in mapper["outputs"]:
info(f"\t{key}: \t {mapper['outputs'][key]}\n")
return mapper