def create_process_chain_entry(nir_time_series, red_time_series, output_time_series): """Create a Actinia process description that uses t.rast.series to create the minimum value of the time series. :param nir_time_series: The NIR band time series name :param red_time_series: The RED band time series name :param output_time_series: The name of the output time series :return: A list of Actinia process chain descriptions """ nir_time_series = ActiniaInterface.layer_def_to_grass_map_name( nir_time_series) red_time_series = ActiniaInterface.layer_def_to_grass_map_name( red_time_series) output_name = ActiniaInterface.layer_def_to_grass_map_name( output_time_series) rn = randint(0, 1000000) pc = [{ "id": "t_rast_mapcalc_%i" % rn, "module": "t.rast.mapcalc", "inputs": [{ "param": "expression", "value": "%(result)s = float((%(nir)s - %(red)s)/" "(%(nir)s + %(red)s))" % { "result": output_name, "nir": nir_time_series, "red": red_time_series } }, { "param": "inputs", "value": "%(nir)s,%(red)s" % { "nir": nir_time_series, "red": red_time_series } }, { "param": "basename", "value": "ndvi" }, { "param": "output", "value": output_name }] }, { "id": "t_rast_color_%i" % rn, "module": "t.rast.colors", "inputs": [{ "param": "input", "value": output_name }, { "param": "color", "value": "ndvi" }] }] return pc
def create_process_chain_entry(input_name, method, output_name): """Create a Actinia process description that uses t.rast.series to reduce a time series. :param input_time_series: The input time series name :param method: The method for time reduction :param output_map: The name of the output map :return: A Actinia process chain description """ input_name = ActiniaInterface.layer_def_to_grass_map_name(input_name) rn = randint(0, 1000000) pc = { "id": "t_rast_series_%i" % rn, "module": "t.rast.series", "inputs": [{ "param": "input", "value": input_name }, { "param": "method", "value": method }, { "param": "output", "value": output_name }], "flags": "t" } return pc