Hi,
> I am trying implement the SAC-SMA in semi - distributed approach and I am aware that it is lumped model. I have seen many researchers have done this and want to know if there is anyway in hydromad.
hydromad does not currently provide support for semi-distributed hydrological modelling. In principle it is possible by chaining model outputs and using routing functions in between, but you're on your own here unfortunately, unless others in the community have anything to share.
> I would like know how the calibration and ARMAX model is working in hydromad for SAC-SMA model.
The armax model is generally not used with the sac-sma model. The sac-sma model includes its own representation of stores.
There is nothing stopping you from specifying routing="armax" and using the various routing fitting functions. It's just not a common way of doing it. Note that the routing component takes in effective rainfall from sma and converts it to streamflow. This is not intended as a river routing function.
The way armax calibration works with the rfit functions is that the optimisation algorithm in e.g. fitByOptim selects parameters for the sma component, and calculates the effective rainfall using those parameters. The selected rfit function then uses its own algorithm to select parameters for the armax function (see the options under "routing fitting") on the website.
> ... also want to know about the usage of warm up period
The warmup period defaults to hydromad.getOption("warmup") when creating a hydromad object. This removes the given number of timesteps from the output time series when calculating performing statistics.
Best regards,
Joseph