Skip to content

Customizing Doublet Simulation Settings

To adjust settings of the simulation, you can pass an instance of the UTCSettings class to the ThermoGISDoublet class.

Be aware: The number of settings is large, and the default values are set to the ThermoGIS base case. A comprehensive list of the settings is given in UTCSettings API Reference.

There are two ways to set up the settings of a simulation, by either:

  1. By instantiating a UTCSettings instance, with custom input.
  2. By using the from_file method, which accepts a xml or yml file, as used in ThermoGIS

customizing the thermoGIS techno-economic properties

The default and custom properties in Pythermogis can be found in thetests/resources/scenarios directory. The default properties are defined in the doublet_techno-econ_basecase.xml file, see also UTC properties for more information on the default properties and the ThermoGIS documentation.

🧰 Running Doublet simulations with custom simulation parameters

Here is an example, where the default settings are used, except for the usage of a heat pump.

from pythermogis.doublet import ThermoGISDoublet
from pythermogis.aquifer import Aquifer
from pythermogis.settings import UTCSettings

aquifer = Aquifer(
        thickness=300, ntg=0.5, porosity=0.2, depth=2000, permeability=300
    )

settings = UTCSettings(
    use_heatpump=True
)

results = ThermoGISDoublet(aquifer=aquifer).simulate().to_dataset()
print(results)

🧰 Running Doublet simulations with XML configuration files

Below is an example of how to run a doublet simulation with custom properties defined in an XML file.

If you have a valid configuration file, you can parse a utc_properties class using the method: from_file. Examples of valid configuration files are found in tests/resources/test_input/scenarios.

from pythermogis.doublet import ThermoGISDoublet
from pythermogis.aquifer import Aquifer
from pythermogis.settings import UTCSettings

aquifer = Aquifer(
        thickness=300, ntg=0.5, porosity=0.2, depth=2000, permeability=300
    )

settings = UTCSettings().from_file("path/to/valid/xml/file")

results = ThermoGISDoublet(aquifer=aquifer).simulate().to_dataset()
print(results)