Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Als er eenmaal een drtcmodel object is aangemaakt in de worklow (zie hieronder voor een voorbeeld), kunnen controllers worden toegevoegd zoals hieronder wordt getoond. Alleen PID-, interval- en timecontrollers worden op dit moment ondersteund. Alle controllers accepteren een tijdreeks als streefpeil, het moet in dat geval een pandas Series zijn, met de tijd als index.

PID-controller

Gebruik deze functie voor een PID-controller:

Code Block
languagepy
 drtcmodel.add_pid_controller(
                    structure_id='Sstruc_96544'id,
                    steering_variable=steering_variable,
                observation_location='ObsS_96544'    target_variable=target_variable,
                    ki=ki,
            steering_variable='Crest level (s)',      kp=kp,
                    kd=kd,
      target_variable='Water level (op)',            max_speed=max_speed,
                     setpoint=13management.2streefwaarde,
                    lower_bound=management.ondergrens,
                    upper_bound=13management.4bovengrens,
                    observation_location=management.meetlocatieid,
           lower_bound=12.8,
                                pid_settings=pid_settings['global'])

Het pid_settings object moet een dictionary zijn zoals deze:

Code Block
   pid_settings["global"] = {
        "ki": 0.001,
        "kp": 0.00,
        "kd": 0.0,
        "maxspeed": 0.00033,
    }

...

     )

Interval controller

Code Block
 drtcmodel.add_interval_controller(
                    structure_id=struc_id,
                    steering_variable=steering_variable,
                    target_variable=target_variable,
                    daedband=deadband,
                    setting_above=management.bovengrens,
                    setting_below=management.ondergrens,
                    max_speed=max_speed,
                    setpoint=management.streefwaarde,
                    observation_location=management.meetlocatieid,
                )

Voor de betekenis van de parameters verwijzen we naar de D-RTC manual.

...

Code Block
    drtcmodel = DRTCModel(
        hydamo,
        fm,
        output_path=output_path,
        rtc_timestep=60.0        
    )

hydamo bevat alle D-Hydamo HyDAMO alle HyDAMO DAMO2.2 objecten, ‘fm’ is het deels opgebouwde 1D-model, output_path is de locatie waar het model geplaatst zal worden en rtc_timestep is de beoogde tijdstap in seconden.