The RiverSystem.CommandLine.exe provides a mechanism to run existing projects without the Source interface. It is possible to modify or change the behaviour of the project from the command line, by changing the values of functions. Results can be returned for recorded items or functions within the project.
RiverSystem.CommandLine.exe is included with Source.
...
Notice in the examples that the command line contains various options, which result in different outputs. The function of these options is provided in Table 1. Note that these are optional extras.
Anchor | ||||
---|---|---|---|---|
|
Display option commands | Function | Example | |||||
---|---|---|---|---|---|---|---|
-a, --address | Address for server to create, or client to connect. | -a "net.pipe://localhost/PipeReverse" or "net.tcp://localhost:8523/eWater/Services/RiverSystemService" | |||||
-b, --baseSIUnits | Ignore units set within project and output base SI units | --baseSIUnits | |||||
-c, --recording | File to load state from when in client mode or file to save state in when in server mode. | -c "c:\StateFiles\state.txt" | |||||
-d, --directory | Directory in which to look for projects. | -d "c:\ProjectFiles" | |||||
-e, --timeout | Operation timeout for WCF service in seconds. | -e 2000 | |||||
-f, --settingFile | File to merge command-line settings from. | -f "settings.txt" | |||||
-l, --loadPlugin | This option allows a plugin (that the project has been saved with) to be loaded for this run only. The path specified is a relative path to the plugin from the command line. eg. "Plugins\ExampleRainfallRunoffModel.dll" | -l "plugin.dll" | |||||
-m, --mode | Application mode Client/Server/InProcess. | -m Client or -m Server | |||||
-o, --output | File to save output into. The extension selects the output format based on the standard TIME I/O formats. A directory of the name specified will be created if the format only supports a single time series. | -o "output.res.csv" for CSV or -o "output.nc" for NetCDF etc. | |||||
-p, --project | Path to the project, or project name on server and optional scenario within that project, DateTime values to override the default start and end times of the loaded scenario and data source input set to run. | -p "projectName.rsproj", or to specify the scenario within the project | |||||
-r, --results | Which results to return. This can appear multiple times.
| -r "someResult" -r "someOtherResult" | |||||
-s, --step | Number of time-steps to run. | --step 1 | |||||
-t, --reset | Reset the loaded project. | --reset | |||||
-u, --current | Return only the current time step's value for the specified results | --current | |||||
-v, --value | Set the value of a Function (also called meta-parameter for calibration) | -v "$metaparam=25", or -v "$anotherMetaParam=2.3" | |||||
-y, --saveAs | Save the loaded project after the run is complete to the specified path and file. The string argument cannot be empty, and the path provided must be an existing directory and have saving permissions for the current user. | -y "C:\ProjectFiles\newProject.rsproj" |
Additional Configuration Properties
When using a running configuration other than the default Single Analysis, there can be additional Configuration Properties available. These are handled with the -cp command.
-cp, or --ConfigurationProperty
When using River Operations, you can specify the additional properties listed in the table below:
Operations Configuration Property | Data | Example |
---|---|---|
WarmUpStart | Date Time | -cp "WarmUpStart=1/1/2017" |
ReloadOnRun | Boolean | -cp "ReloadOnRun=True" |
Today | Date Time | -cp "Today=1/1/2018" |
ForecastLength | Positive integer | -cp "ForecastLength=90" |
DataUpdatePeriod | Positive integer | -cp "DataUpdatePeriod=15" |
For details about these parameters, please see: Operations forecasting
PEST calibration using the command line
PEST (Parameter ESTimation and uncertainty analysis) allows analysis of complex environmental models, and can be used in Source for calibration of catchments. You can use the command line to do calibration and uncertainty in a catchments model. The steps to do the calibration are as follows:
- Starting with a Source Catchment project file, use the Calibration Wizard to set up ‘functions’ for the parameters of the rainfall runoff models.
When defining the metaparameters in the Calibration Wizard, the list of Existing Metaparameters will be used in the parameter file for invoking RiverSystem.CommandLine; - Turn on any recorders for the hydrological quantities that will be used in the objective function. In step 4 of the Calibration Wizard, choose Manual optimisation and enable Create functions for use from an external tool;
- Save the project;
- Set up the RiverSystem.CommandLine input file;
- Setup the PEST input and template files;
- Prepare a batch file to invoke the commandline and pre-processors; and
- Run PEST.
Once the Calibration wizard has been set up, start the command line server (RiverSystem.CommandLine.exe -p projectname.rsproj -m server) and then PEST (pest pestcontrolfile.pst).
Batch running using the command line
Insert excerpt | ||||||
---|---|---|---|---|---|---|
|
Refer to Batch running using the command line in the Source community for details and an example.