DWIS.MicroState.ModelShared
2.0.1-build.76
dotnet add package DWIS.MicroState.ModelShared --version 2.0.1-build.76
NuGet\Install-Package DWIS.MicroState.ModelShared -Version 2.0.1-build.76
<PackageReference Include="DWIS.MicroState.ModelShared" Version="2.0.1-build.76" />
paket add DWIS.MicroState.ModelShared --version 2.0.1-build.76
#r "nuget: DWIS.MicroState.ModelShared, 2.0.1-build.76"
// Install DWIS.MicroState.ModelShared as a Cake Addin #addin nuget:?package=DWIS.MicroState.ModelShared&version=2.0.1-build.76&prerelease // Install DWIS.MicroState.ModelShared as a Cake Tool #tool nuget:?package=DWIS.MicroState.ModelShared&version=2.0.1-build.76&prerelease
This package is developed as part of the Society of Petroleum (SPE) Drilling and Wells Interoperability Standards (D-WIS), a sub-committee of the Drilling System Automation Technical Section. This package contains the Data Transfer Object (DTO) model corresponding to the DWIS.MicroState.Model used by the D-WIS microstate interpretation engine, i.e., without its business logic.
There are 5 classes:
MicroStates
ProbabilisticMicroStates
SignalGroup
Thresholds
Calibrations
Microstates
The class MicroStates
is used to represent the deterministic version of the interpreted drilling process microstates. It has a TimeStampUTC property and 5 32 bit integers to store the encoded values of the microstates.
Each microstate is encoded on 2 bits, therefore providing 4 combinations with the combination 00 reserved to mean undefined
. The index for each microstate is encoded in an enumeration: MicroStateIndex
.
ProbabilisticMicroStates
The class ProbabilisticMicroStates
is used to store the probabilitic version of the drilling process state in terms of microstates. This class defines a TimeStampUTC
property and
all the different microstates in the form of either BernoulliDrillingProperty
or TernaryDrillingProperty
properties. A BernoulliDrillingProperty
gives the probability to be in any
of two states. The probability to be in the other state is therefore the complementary value compared to 1. A TernaryDrillingProperty
gives the probabilities to be in each of three
states. The sum of the probabilities is equal to 1.
Thresholds
The Microstate Interpretation Engine
needs thresholds to determine the different states. These thresholds are grouped in a class called Thresholds
. The class Thresholds
has a
TimeStampUTC
property. The other properties are ScalarDrillingProperty
, meaning that their propability distribution is of the Dirac type.
SignalGroup
The Micro-state Interpretation Engine
needs signals that are typically generated by a digital twin. These signals can be grouped into a class called
SignalGroup
. The class SignalGroup
has a property TimeStampUTC
used to define the time and date at which the SignalGroup
has been issued. There are also all the necessary
properties used by the Micro-state Interpretation Engine
to calculate the micro-states. These properties are of type GaussianDrillingProperty
and BernoulliDrillingProperty
,
meaning that an uncertainty is defined for the passed values, whether the value is a scalar or a boolean one.
Calibrations
The class Calibrations
defines a dictionary of CalibrationParameters
. A CalibrationParameters
is a class that define the Scaling
, Bias
and Delay
that
are necessary to minimize the differences of a series of measurements compared to other series of measurements produced by other digital twins. The dictionary has
two levels. The first level concerns the properties of the SignalGroup
classes. Then for each DrillingProperty
in the SignalGroup
that has a series of
data providers, there is a dictionary of CalibrationParameters
for each of the sources. A data source is characterized by an object of the type DWISNodeID
.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
-
net8.0
- Newtonsoft.Json (>= 13.0.3)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
2.0.1-build.76 | 77 | 12/12/2024 |
2.0.1-build.60 | 56 | 10/21/2024 |
2.0.1-build.53 | 58 | 10/17/2024 |
2.0.1-build.47 | 58 | 10/11/2024 |
2.0.1-alpha.40 | 53 | 10/10/2024 |
2.0.1-alpha.36 | 52 | 10/9/2024 |
2.0.1-alpha.34 | 52 | 10/9/2024 |
1.1.2 | 106 | 9/30/2024 |
1.1.1 | 102 | 9/20/2024 |
1.1.0 | 110 | 9/19/2024 |
1.0.3 | 168 | 9/18/2023 |
1.0.2 | 154 | 8/21/2023 |
1.0.1 | 158 | 6/20/2023 |
1.0.0 | 138 | 6/6/2023 |