Changes From Previous Version

Changes on Pipesim Python Toolkit API between versions are necessary for either enhancements or bug fixes. This section describes the changes that may affect the scripts that are created with previous versions of Python Toolkit.

Changes from 2026.1 to 2026.2

Emulsion viscosity support for MFL and Compositional fluids

Added emulsion viscosity parameters for MFL and Compositional fluids, including:

Parameters.MFLFluid.LIQUIDVISCOSITYCALC Parameters.MFLFluid.USERWATERCUTCUTOFF Parameters.MFLFluid.USEBRAUNERULLMANEQUATION Parameters.MFLFluid.VANDUSERK1 Parameters.MFLFluid.VANDUSERK2 Parameters.MFLFluid.RICHARDSONKOIW Parameters.MFLFluid.RICHARDSONKWIO Parameters.MFLFluid.USEREMULSIONTABLE Parameters.CompositionalFluid.USEREMULSIONTABLE

Added Constants.EmulsionViscosityMethod.KENDALLMONROE emulsion viscosity method.

The set_mix_viscosity_table, get_mix_viscosity_table, and delete_mix_viscosity_table methods now support MFL and Compositional fluids in addition to BlackOil fluids.

The fluid type is now automatically detected when passing a fluid name directly, without requiring an explicit fluid type keyword (e.g., CompositionalFluid= or MFLFluid=).

See examples\get_set_mfl_fluid.py, examples\get_set_blackoil_mix_viscosity_table.py, examples\get_set_mfl_mix_viscosity_table.py, and examples\get_set_compositional_mix_viscosity_table.py

Python has been upgraded to 3.14.

Python has been upgraded to 3.14.

Support for OLGAS 2026.1 flow correlations

Added support for the new OLGAS 2026.1 flow correlations:

Constants.MultiphaseFlowCorrelation.OLGAS.OLGAS20261_3PHASE Constants.MultiphaseFlowCorrelation.OLGAS.OLGAS20261_3PHASEHD Constants.MultiphaseFlowCorrelation.OLGAS.OLGAS20261_2PHASE Constants.MultiphaseFlowCorrelation.OLGAS.OLGAS20261_2PHASECO2

See examples\get_set_flow_correlations.py

Support for Well Calibration task

The Well Calibration simulation task is now supported. This task enables automated calibration of well models against measured field data.

See examples\well_calibration.py, well_calibration_publish.py, well_calibration_set_calibration_parameters.py well_calibration_reset_boundary_conditions.py, and well_calibration_add_delete_test.py

Improved error message when a model can’t be opened

Improved error handling when opening a model fails. The error message now clearly indicates the reason for the failure, such as when opening a corrupted project or an unsupported old version project.

Exposed ESPSLIPPAGEFACTOR simulation setting

Exposed the “ESP slippage factor” simulation setting. Use Parameters.SimulationSetting.ESPSLIPPAGEFACTOR.

Get network branch names for rate constraints

Added method get_constraint_branch_names to the networksimulation task. See examples\get_set_study_constraints.py

Changes from 2025.2 to 2026.1

Following variables and classes are removed.

Constants.GasCompressCorrelation.ROBINSONETAL

Parameters.BlackOilFluid.SinglePointCalibration.OILFVFCORRELATION

Constants.OilFVFCorrelation

Constants.MultiphaseFlowCorrelation.BakerJardine.BEGGSBRILL

Constants.MultiphaseFlowCorrelation.BakerJardine.DUKLER

To select Dukler correlation use Constants.MultiphaseFlowCorrelation.TulsaLegacy.DUKLER

Updated scripts to use Plotly instead of Matplotlib

Updated Seaweed shapefile utility and some example scripts to use Plotly instead of Matplotlib for plotting.

Support OneSubsea multiphase booster recirculating flow in simulation results.

See examples\get_OneSubsea_multiphase_booster_results.py

Support user defined metocean data.

See examples\get_set_userdefined_metocean.py

Support spot report results.

Support spot report results.

The following reports are now supported:

  • Composition details

  • Stock tank fluid properties

  • Flowing fluid properties

  • Cumulative values

  • Multiphase flow values

  • Slugging values

  • Pigging values

  • Heat transfer values

See examples\get_spot_report_results.py

Python has been upgraded to 3.13.

Python has been upgraded to 3.13. Major packages have been upgraded to the latest version.

Changes from 2025.1 to 2025.2

Support advanced well model.

Changing the well type to advanced is now supported.

    >>> model.set_value(context=<well_name>,
         parameter=Parameters.Well.TYPE,
         value=Constants.WellType.ADVANCED)

Added new class for setting the well tubing type.

Use: Constants.TubingConfiguration

See examples\advanced_well_set_type.py, advanced_well_single_string.py, advanced_well_dual_string.py, advanced_well_concentric.py

Changing the well tubing configuration is now supported.

    >>> model.set_value(context=<well_name>,
         parameter=Parameters.Well.TUBINGCONFIGURATION,
         value=Constants.TubingConfiguration.SINGLESTRING)

Adding tail pipe is now supported.

See examples\advanced_well_tail_pipe.py.

Adding downhole equipment to the advanced well is now supported.

See examples\advanced_well_single_string.py, advanced_well_dual_string.py, advanced_well_concentric.py

Changing the tubing string for downhole equipment in advanced well is now supported.

See examples\advanced_well_dual_string.py.

Advanced well solver tolerance is now supported.

Use: Parameters.SimulationSetting.ADVANCEDWELLTOLERANCE

See examples\systemperformance_flowcontrolvalve_result.py.

Tubing head fluid temperature is now supported.

Use:
Parameters.Well.HeatTransfer.TUBINGHEADFLUIDTEMPERATURE Parameters.Well.HeatTransfer.LONGTUBINGHEADFLUIDTEMPERATURE Parameters.Well.HeatTransfer.SHORTTUBINGHEADFLUIDTEMPERATURE

See examples\advanced_get_set_tubing_head_temperature.py.

Gaslift tuning factor is now supported.

Use: Parameters.GasLiftInjection.TUNINGFACTOR

See examples\advanced_get_set_gaslift_tuning_factor.py.

Gaslift injection through property is now supported.

Use: Parameters.Well.ISINJECTIONTHROUGHOUTERTUBING

See examples\advanced_well_concentric.py.

Connection on Advanced well is now supported.

Added new class for setting the advanced well port.

Use: Constants.Connection.AdvancedWell

See examples\connect_disconnect.py.

Setting wellstreams and wellstream properties for advanced wells are now supported.

Use:
Constants.Wellstream.TOP

Constants.Wellstream.MIDDLE

Constants.Wellstream.BOTTOM

    >>> set_wellstream(Well=<well_name>,
         port=Constants.Wellstream.TOP,
         surface_component_name="FL_long_2")

See examples\advanced_get_set_wellstream.py.

Add max emulsion inversion watercut simulation settings.

Use:
Parameters.SimulationSetting.MAXEMULSIONINVERSIONWATERCUT

See examples\get_set_simulation_settings.py.

Support for OLGAS 2025 flow correlations.

See examples\get_set_flow_correlations.py.

Following OLGAS flow correlations are removed.

Constants.MultiphaseFlowCorrelation.OLGAS.OLGASV731_3PHASE Constants.MultiphaseFlowCorrelation.OLGAS.OLGASV731_2PHASE Constants.MultiphaseFlowCorrelation.OLGAS.OLGASV72_3PHASE Constants.MultiphaseFlowCorrelation.OLGAS.OLGASV72_2PHASE Constants.MultiphaseFlowCorrelation.OLGAS.OLGASV627_3PHASE Constants.MultiphaseFlowCorrelation.OLGAS.OLGASV627_2PHASE

Support horizontal well length for single distributed completion.

See examples\get_set_distributed_completion_properties.py.

Changes from 2024.3 to 2025.1

Updates to Black oil single point calibration.

Added new classes:
Constants.UndersaturatedOilFVFCorrelation for Oil FVF (above BP).

Constants.LiveOilFVFCorrelation instead of Constants.OilFVFCorrelation to be aligned with UI.

Added new members in class Parameters.BlackOilFluid.SinglePointCalibration:
UNDERSATURATEDOILFVFCORR for Oil FVF (Above BP).

LIVEOILFVFCORRELATION instead of OILFVFCORRELATION.

Added new member in class Constants.GasCompressCorrelation:
DRANCHUKROBINSON instead of ROBINSON to be aligned with UI.

The following classes and members are deprecated and must be replaced:
Parameters.BlackOilFluid.SinglePointCalibration.OILFVFCORRELATION

Constants.OilFVFCorrelation

Constants.GasCompressCorrelation.ROBINSON

Check examples\create_blackoil_fluid.py for creating a black oil fluid with the new parameters.

New OneSubsea Helico-Axial models are added.

Use:
Constants.OneSubseaBoosterModel.HX330_350_200

Constants.OneSubseaBoosterModel.HX330_450_200

Constants.OneSubseaBoosterModel.HX330_550_200

Constants.OneSubseaBoosterModel.HX330_650_200

Constants.OneSubseaBoosterModel.HX330_800_200

Constants.OneSubseaBoosterModel.HX330_1000_200

Constants.OneSubseaBoosterModel.HX330_1200_200

Constants.OneSubseaBoosterModel.HX330_1400_200

MAOP simulation results are now supported.

Use:
SystemVariables.MINIMUM_MAOP

SystemVariables.MAXIMUM_MAOP_RISK

SystemVariables.MAXIMUM_MAOP_RATIO

ProfileVariables.MAOP

ProfileVariables.MAOP_RATIO

ProfileVariables.MAOP_RISK

New variable TUFFPV2024_3PHASE is added to support new flow model.

Use:
Constants.MultiphaseFlowCorrelation.TUFFPUnified.TUFFPV2024_3PHASE

Four new variables are added to support boundary conditions.

Use:
Parameters.Boundary.BOUNDARYNODENAME

Parameters.Boundary.BOUNDARYNODETYPE

Parameters.Boundary.WELLNAME

Parameters.Boundary.ISACTIVE

System performance task for advanced well is now supported.

Boundary condition operations (get/set/reset) and task simulation(run/start) are supported for advanced well.

See examples\systemperformance_dual_string.py and systemperformance_concentric_tubing.py

Support for flow control valve (FCV) results.

See examples\systemperformance_flowcontrolvalve_result.py

Changes from 2024.2 to 2024.3

FetkovitchEquationModel class is deprecated.

FetkovitchEquationModel class is deprecated and should be removed from your code. The new class IPRFetkovitch is being introduced to align with other IPR classes.

Use:
Parameters.IPRFetkovitch.ABSOLUTEOPENFLOWPOTENTIAL

Parameters.IPRFetkovitch.NEXPONENT

GisElevationDataSource and ElevationSource are deprecated.

ASTER and SRTM elevation data sources are removed in 2024.3. ESRI data source is used in elevation capture. Constants.ElevationSource, Constants.GisElevationDataSource and Parameters.SimulationSetting.GISELEVATIONSOURCETYPE are deprecated and should be removed from your code.

Changes from 2024.1 to 2024.2

“Oil flowrate curve” at Nodal analysis task and oil data in operating envelope are supported

Use:
SystemVariables.NODAL_POINT_VOLUME_FLOWRATE_OIL_STOCKTANK

Parameters.NodalOperatingEnvelopePlot.OILFLOWRATE

Parameters.NodalOperatingEnvelopePlot.OILFLOWRATEPRESSURE

See examples\nodal_sim_run_simulation.py

“Flow direction” variable added to network simulation results

Use:
SystemVariables.FLOW_DIRECTION

See examples\networksim.py

Changes from 2023.1 to 2024.1

Support for OLGAS 2023 flow correlations.

See examples\get_set_flow_correlations.py.

Class name changed

Class name for sixgill\ErrosionCorrosionRiskIndexLimits was changed to sixgill\ErosionCorrosionRiskIndexLimits

Example renamed

examples\get_set_errosion_corrosion_risk_limits.py was renamed to examples\get_set_erosion_corrosion_risk_limits.py.

“Gas flowrate at heel (standard cond)” and “Pcp Torque” system variables are now supported.

Use: SystemVariables.HEEL_FLOWING_GAS_FLOWRATE_STOCKTANK and SystemVariables.PCP_TORQUE

Following variables are removed.

SystemVariables.INLET_PRESSURE

Parameters.Choke.FLOWRATELIMITTYPE

Parameters.Choke.LIQUIDFLOWRATELIMIT

Parameters.Choke.OILFLOWRATELIMIT

Parameters.Choke.GASFLOWRATELIMIT

Parameters.Choke.WATERFLOWRATELIMIT

Parameters.Choke.MASSFLOWRATELIMIT

Changes from 2022.2 to 2023.1

Support for Flow Control Valve.

See examples\get_set_flow_control_valve_generic.py and get_set_flow_control_valve_specific.py.

A new method called “find_component_objects” has been added to Model to improve performance.

See examples\get_set_using_component.py.

Following variables are removed.

SystemVariables.ROD_PUMP_INTAKE_PRESSURE

SystemVariables.ROD_PUMP_INTAKE_VOLUMETRIC_FLOWRATE_FLUID

SystemVariables.ROD_PUMP_INTAKE_VOLUME_FRACTION_GAS

SystemVariables.ROD_PUMP_INTAKE_VOLUME_FLOWRATE_LIQUID

SystemVariables.ROD_PUMP_INTAKE_VOLUME_FLOWRATE_FREE_GAS

SystemVariables.ROD_PUMP_DISCHARGE_PRESSURE

SystemVariables.ROD_PUMP_POWER

SystemVariables.ROD_PUMP_DELTA_PRESSURE

SystemVariables.ROD_PUMP_EFFICIENCY

SystemVariables.BRANCH_DELTA_PRESSURE (use SystemVariables.SYSTEM_PRESSURE_LOSS instead)

SystemVariables.CHOKE_DELTA_PRESSURE (use SystemVariables.PRESSURE_DIFFERENCE instead)

SystemVariables.EROSIONAL_VELOCITY_RATIO_MAXIMUM (use SystemVariables.MAXIMUM_EROSIONAL_VELOCITY_RATIO instead)

SystemVariables.VELOCITY_GAS_MAXIMUM (use SystemVariables.MAXIMUM_VELOCITY_GAS instead)

SystemVariables.VELOCITY_LIQUID_MAXIMUM (use SystemVariables.MAXIMUM_VELOCITY_LIQUID instead)

SystemVariables.PRESSURE_AT_NODAL_ANALYSIS_POINT (use SystemVariables.NODAL_POINT_PRESSURE instead)

SystemVariables.VELOCITY_GAS

SystemVariables.VELOCITY_LIQUID

SystemVariables.VELOCITY_MEAN

SystemVariables.VELOCITY_MEAN_MAXIMUM

New parameter is defined for SystemVariables.

In 2022.2, the INLET_TEMPERATURE system variable is used to report system inlet temperature. In 2023.1, a new variable SYSTEM_INLET_TEMPERATURE is added to align with the user interface. The INLET_TEMPERATURE is deprecated and should be replaced with new one in your python code. It will be removed in future Pipesim releases.

“WellRadius” property in class IPRTrilinear is removed.

See examples\get_set_trilinear_ipr.py.

Changes from 2022.1 to 2022.2

Four new variables are added.

Use:
ProfileVariables.GAS_WALL_SHEAR_STRESS

ProfileVariables.OIL_WALL_SHEAR_STRESS

ProfileVariables.WATER_WALL_SHEAR_STRESS

ProfileVariables.LIQUID_WALL_SHEAR_STRESS

See examples\networksim.py.

New supported options for Trilinear fluid and Vogel options.

See examples\get_set_trilinear_ipr.py.

Changes from 2021.2 to 2022.1

Support for ESP motor results.

See examples\get_set_esp_motor_and_cable.py.

Relative permeability table is now supported.

See examples\get_set_relative_permeability_data.py.

Pipe coating table is now supported.

See examples\get_set_coating_table.py.

Added support for permanent magnet motor in ESP.

See examples\add_well.py

“Shpere time in pipeline” system variable is now supported.

Use: SystemVariables.SPHERE_TIME_IN_PIPELINE

“Total moving liquid volume” and “Total static liquid volume” system variables are now supported.

Use: SystemVariables.TOTAL_MOVING_LIQUID_VOLUME and SystemVariables.TOTAL_STATIC_LIQUID_VOLUME

New example added to demonstrate the use of apply_results for optimizer simulations.

See examples\network_opt_sim_apply_results.py

Changes from 2021.1 to 2021.2

Diagnostics results for multipointing are now supported in PT Profile and Nodal analysis.

See examples\nodal_sim_multipoint.py and ptprofilesim_multipoint.py

Black oil user defined mixture viscosity table is now supported.

See examples\get_set_user_mix_viscosity_table.py.

“Severe slugging indicator - Pots” profile variable is now supported.

Use: ProfileVariables.SEVERE_SLUGGING_INDICATOR_POTS

Black oil user defined viscosity table is now supported.

See examples\get_set_user_viscosity_table.py.

Many packages are updated to latest version.

Many packages are updated to latest version, for example requests and rdflib.

Starting from requests version 2.26.0, NaN is not allowed, and Pipesim converted NaN to None. As result of this change, you may see None is used instead of NaN in previous versions.

Local corrosion model settings for both TPA and DeWaard are now supported.

See examples\get_set_local_corrosion_model.py

Changes from 2020.2 to 2021.1

New Python Toolkit environment.

The new Python Toolkit environment based on Anaconda Python distribution replaced Enthought Canopy.

Fix an exception caused by empty names.

Some API methods may throw an exception “sixgill.core.model_context:’’ is not a valid context value.” when there are empty names in the project. In the new release, we changed the exception to a warning instead.

IPR points are now supported.

See examples\get_completion_ipr_points.py.

Network constraints are now supported.

See examples\get_set_study_constraints.py.

VFP table simulations are now supported.

See examples\vfp_tables_simulation_with_sensitivities.py and get_set_vfp_tables_conditions.py.

One item in model_settings has been deprecated.

model_settings.corrosion_limits. It will be removed in future releases. Use model_settings.corrosion_model_dewaard.corrosion_limits instead.

TPA and deWaard corrosion models are now supported.

See examples\get_set_corrosion_model.py and get_set_erosion_corrosion_risk_limits.py.

MFL and PVT fluids are now supported.

See examples\get_set_mfl_fluid.py and get_set_pvt_fluid.py.

Examples added to demonstrate how to run simulation using multiprocessing.

See examples\multiprocessing_run_simulation_parallel.py and multiprocessing_run_simulation_seq.py.

One item in Parameters.WellPerformanceCurvesSimulation has been deprecated.

Parameters.WellPerformanceCurvesSimulation.SENSITIVITYVARIABLE. It will be removed in future releases. Use Parameters.WellPerformanceCurvesSimulation.SensitivityVariable instead.

Support for sensitivities in nodal analysis simulation.

See examples\nodal_sim_run_simulation_sensitivities.py and get_set_nodal_sim_sensitivites.py

Support for get/set heat transfer table values in “Calculate” mode.

See examples\get_set_well_heat_transfer.py

Changes from 2020.1 to 2020.2

Support for Vogel water cut correction.

See examples\get_set_composite_ipr.py

Changes from 2019.5 to 2020.1

Support for erosion/Corrosion risk limits.

See examples\get_set_erosion_corrosion_risk_limits.py

Changes from 2019.4 to 2019.5

Support for motor and cable in ESP pump.

See examples\get_set_esp_motor_and_cable.py

There was an issue with the simulation results for any variable that has “Percentage” unit.

These variables have been reported as fraction. The issue has been fixed now. Some of the variables impacted by this change are:

Efficiency(ESP, PCP, Rod pump, …) ESP intake gas volume fraction Flowing watercut at nodal analysis point Volume fraction liquid at inlet

Exporting multiple wells by specifying the well names is now supported.

See examples\well_export_all.py An additional optional parameter has been added to export_well method of the Model. This parameter is called well_names, which is a list of the well names.

Importing multiple wells from a folder containing .pips files is now supported.

See examples\well_import_all.py A new method called import_wells has been added to Model. Example:

    >>> model.import_wells("C:/Data/MyFolder")

Annulus flow in flowline is now supported.

See examples\get_set_annulus_flow.py.

A proper error message is displayed when trying to open a newer version of Pipesim file.

A proper message is displayed if the Pipesim file’s version is not supported by the installed Pipesim application.

A proper error message when Pipesim application is missing.

If a user uninstalls Pipesim application, a message will be displayed to let the user know which version of Pipesim application is required.

Changes from 2019.2 to 2019.3

“delete_sinsitivities” methods in all the tasks have been deprecated.

delete_sensitivities should be used instead. The delete_sinsitivities methods will be removed in a future release.

One item in GasLift.DiagnosticsOperationThrottling has been deprecated.

GasLift.DiagnosticsOperationThrottling.AUTO. It translates to “On” for compatibility and will be removed in future releases.

The Trilinear transient IPR model is now supported

See examples\get_set_trilinear_ipr.py.

The multi-pointing(Gas lift system) is now supported

See examples\ptprofilesim_multipoint.py.

The display unit system used in UI is now reported in Model.about

Example:

    >>> model = Model.open("Fields.pips")
    >>> print(model.about.ui_unit_system)
    >> will display : PIPESIM_FIELD

Changes from 2019.1 to 2019.2

Network optimizer simulation is supported

See examples\network_opt_sim.py.

ESP curve results are supported

See examples\get_esp_curve_results.py.

Enhancement for sensitivity

In 2019.2 the single branch simulations(PtProfile, System analysis, well curves, Gaslift diagnostics) support a new method called delete_sensitivities(). This method clears all the sensitivity data for the specified simulation task.

There is also support for clearing individual sensitivities(this feature was supported by some simulation tasks, but now it is supported by any task that supports sensitivity).

To clear individual sensitivity data, pass an empty dictionary to the method.

Example: The following code snippet demonstrates how to clear the X sensitivity and define the first variable sensitivity at the same time:

    >>> parameters = {
         Parameters.SystemAnalysisSimulation.SENSITIVITYVARIABLES:
         [
             {},
             {
                 Parameters.SystemAnalysisSimulation.SensitivityVariable.COMPONENT:"VertComp",
                 Parameters.SystemAnalysisSimulation.SensitivityVariable.VARIABLE:Parameters.Completion.RESERVOIRPRESSURE,
                 Parameters.SystemAnalysisSimulation.SensitivityVariable.VALUES:[2000,3000,4000] #psia
             }
         ],
         }
    >>> self.model.tasks.systemanalysissimulation.set_conditions("Well",parameters)

Fixed: Can’t start new thread when opening a new model

A RuntimeError of “can’t start new thread” has been fixed that occurred when opening many models.

New macros: @xl_worker_thread and @xl_main_thread are added

See examples\worker_thread_test.xlsx.

Make Visual Studio Code as default code editor for Excel plugin

In 2019.2, after Visual Studio Code is installed, it will be set as default code editor when you work with Excel workbook.

Fixed: Default “My Documents” folder is not on C: drive

Canopy call install properly when the users “Documents” folder has been moved or changed from the default “C:\users\username*” location.

Changes from 2018.1 to 2019.1

Save model by perspective

In 2019.1, a new parameter is added to the Model.Save() method to save a model by specifying a perspective:

    >>> model.save("C:/Temp/MyModel.pips",ViewTypes.WELL)
    >>> model.save("C:/Temp/MyModel.pips",ViewTypes.NETWORK)

New properties are included when getting values for a flowline

Four new properties, InnerDiameter, Length, Roughness and WallThickness are returned when Model.get_values() is called for a flowline:

    >>> model.get_values(Pipe='FL-3')

Removed two deprecated parameters for GIS non-clustered location

Tow deprecated parameters, CLUSTEREDLATITUDE and CLUSTEREDLONGITUDE, are removed. They should be replaced with NONCLUSTEREDLATITUDE and NONCLUSTEREDLONGITUDE. See release notes in 2017.2 for details.

Four parameters for boundary conditions are deprecated

Four parameters, Parameters.GLDiagnosticsSimulation.BoundaryConditions.RESRVOIRPRESSURE, Parameters.GLDiagnosticsSimulation.BoundaryConditions.RESERVOIRTEMPERATURE, Parameters.GLDiagnosticsSimulation.BoundaryConditions.GOR, and Parameters.GLDiagnosticsSimulation.BoundaryConditions.WATERCUT, are deprecated. They should be replaced with Parameters.Boundary.PRESSURE, Parameters.Boundary.TEMPERATURE, Parameters.Boundary.GOR and Parameters.Boundary.WATERCUT. These four parameters are generic for any operations, and they are not Gas lift diagnostics specific. The old parameters will be removed in a future release.

Changes from 2017.2 to 2018.1

Restart option for network simulation task

In 2018.1, The environment variable is no longer in use. You can enable the “restart”, “Generate engine output files” and “Number of cores to use for simulation” options directly in the run command of the simulation:

    >>> model.tasks.networksimulation.run(system_variables=get_system_variables(),
        profile_variables=get_profile_variables(),
        study = "Study 1",
        options={SimulationOptions.RESTART:False,
                 SimulationOptions.GENERATEOUTPUTFILE:True,
                 SimulationOptions.PARALLELISM:2})

Changes from 2017.1 to 2017.2

New parameters are defined for GIS non-clustered location

In 2017.1, two parameters: CLUSTEREDLATITUDE and CLUSTEREDLONGITUDE, are used to define the non-cluster location in GIS canvas, which displays equipment when cluster checkbox is toggled off in UI. In 2017.2, two new parameters: NONCLUSTEREDLATITUDE and NONCLUSTEREDLONGITUDE, are added to reflect their true meanings. The old parameters are deprecated and should be replaced with new parameters in your python code. The old parameters will be removed in Pipesim 2018.1

Name is preserved when converting junction to other equipment

In 2017.1, junction name is changed when it is converted to a well, source, or sink. Although it is the same behavior as Pipesim UI, it may cause inconveniences in subsequent user’s code. In 2017.2, the new equipment converted from junction will have the same name and user can set it to a desired name by using (assuming that junction is converted to a source)

    >>> model.set_value(Source=<junction_name>,
        parameter="Name",
        value=<new_name>)

New parameter is defined for OneSubsea Multiphase Booster

In 2017.1, Pipesim defines POWER that represents power for one unit. In 2017.2, Pipesim defines TOTALPOWER that represents total power for all parallel units, to be consistent with OneSubsea Wet Gas Compressor. The parameter POWER is deprecated and should be replaced with TOTALPOWER, and the value should be replaced by the (POWER * number of units) when setting the value. The parameter POWER will be removed in Python Toolkit 2018.1.

Restart option for network simulation task

Pipesim UI has an option to Run or Restart a network simulation. When Restart is clicked, the results in the restart file captured from previous run can be reused clicked, the results in the restart file captured from previous run can be reused as initial estimates for a subsequent simulation run. Restart can improve the network solving speed significantly and is most effective when running many similar scenarios with only small variations. However, if network topology changes, such as new pipes added, wells added/deleted, well or source activated/deactivated, Run and Restart may converge to different solutions, so it should be used with caution.

In 2017.1, when running a network simulation in Python Toolkit, Restart is always used for subsquent runs if a restart file is available or is saved with the model. In 2017.2, the default option is changed to Run from scratch. If Restart option is desired to improve the speed of subsquenct network simulation runs, you can enable this setting by adding an environment variable in your python code:

    >>> import os
    >>> os.environ['UseRestartFile'] = "true"