Example #1
0
    def copymodel(self, name):
        """Returns a copy of the HSPFModel."""

        model = HSPFModel()
        model.build_from_existing(self.hspfmodel, name)

        for f in self.hspfmodel.flowgages:
            start, tstep, data = self.hspfmodel.flowgages[f]
            model.add_timeseries('flowgage', f, start, data, tstep = tstep)

        for p in self.hspfmodel.precipitations: 
            start, tstep, data = self.hspfmodel.precipitations[p]
            model.add_timeseries('precipitation', p, start, data, tstep = tstep)

        for e in self.hspfmodel.evaporations: 
            start, tstep, data = self.hspfmodel.evaporations[e]
            model.add_timeseries('evaporation', e, start, data, tstep = tstep)

        for tstype, identifier in self.hspfmodel.watershed_timeseries.items():

            model.assign_watershed_timeseries(tstype, identifier)

        for tstype, d in self.hspfmodel.subbasin_timeseries.items():

            for subbasin, identifier in d.items():
                
                if subbasin in model.subbasins:

                    model.assign_subbasin_timeseries(tstype, subbasin, 
                                                     identifier)

        return model