-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #3 from ESSS/fb-PWPA-1933-convert-score-casings
Convert score casings from SCORE to alfacase
- Loading branch information
Showing
13 changed files
with
885 additions
and
135 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,28 @@ | ||
from typing import Any | ||
from typing import Dict | ||
|
||
from barril.units import Array | ||
from barril.units import Scalar | ||
from enum import Enum | ||
|
||
|
||
def prepare_for_regression(values: Dict[str, Any]) -> Dict[str, Any]: | ||
""" "Prepare Scalar and Array to the be used in regression test""" | ||
regression_values = {} | ||
for key, value in values.items(): | ||
if isinstance(value, Scalar): | ||
regression_values[key] = { | ||
"value": value.value, | ||
"unit": value.unit, | ||
} | ||
elif isinstance(value, Array): | ||
regression_values[key] = { | ||
"values": value.values, | ||
"unit": value.unit, | ||
} | ||
elif isinstance(value, Enum): | ||
regression_values[key] = value.value | ||
else: | ||
regression_values[key] = value | ||
|
||
return regression_values |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,16 @@ | ||
from barril.units import Scalar | ||
|
||
from alfasim_score.units import ROUGHNESS_UNIT | ||
|
||
WELLBORE_TOP_NODE = "WELBORE_TOP_NODE" | ||
WELLBORE_BOTTOM_NODE = "WELBORE_BOTTOM_NODE" | ||
ANNULUS_TOP_NODE_NAME = "WELLBORE_ANNULUS_TOP_NODE" | ||
|
||
CEMENT_NAME = "cement" | ||
|
||
ROCK_DEFAULT_ROUGHNESS = Scalar(0.1, ROUGHNESS_UNIT) | ||
CASING_DEFAULT_ROUGHNESS = Scalar(0.05, ROUGHNESS_UNIT) | ||
TUBING_DEFAULT_ROUGHNESS = Scalar(0.05, ROUGHNESS_UNIT) | ||
|
||
# This default fluid name for packer and fluid above filler | ||
FLUID_DEFAULT_NAME = "fluid_default" |
42 changes: 42 additions & 0 deletions
42
src/alfasim_score/converter/alfacase/_tests/test_convert_casing.py
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
import attr | ||
from pytest_regressions.data_regression import DataRegressionFixture | ||
|
||
from alfasim_score.common import prepare_for_regression | ||
from alfasim_score.converter.alfacase.convert_alfacase import ScoreAlfacaseConverter | ||
from alfasim_score.converter.alfacase.score_input_reader import ScoreInputReader | ||
|
||
|
||
def test_convert_casing_list( | ||
data_regression: DataRegressionFixture, | ||
score_input_example: ScoreInputReader, | ||
) -> None: | ||
builder = ScoreAlfacaseConverter(score_input_example) | ||
casings = builder._convert_casing_list() | ||
data_regression.check([prepare_for_regression(attr.asdict(casing)) for casing in casings]) | ||
|
||
|
||
def test_convert_tubing_list( | ||
data_regression: DataRegressionFixture, | ||
score_input_example: ScoreInputReader, | ||
) -> None: | ||
builder = ScoreAlfacaseConverter(score_input_example) | ||
tubings = builder._convert_tubing_list() | ||
data_regression.check([prepare_for_regression(attr.asdict(tubing)) for tubing in tubings]) | ||
|
||
|
||
def test_convert_packer_list( | ||
data_regression: DataRegressionFixture, | ||
score_input_example: ScoreInputReader, | ||
) -> None: | ||
builder = ScoreAlfacaseConverter(score_input_example) | ||
packers = builder._convert_packer_list() | ||
data_regression.check([prepare_for_regression(attr.asdict(packer)) for packer in packers]) | ||
|
||
|
||
def test_convert_open_hole_list( | ||
data_regression: DataRegressionFixture, | ||
score_input_example: ScoreInputReader, | ||
) -> None: | ||
builder = ScoreAlfacaseConverter(score_input_example) | ||
open_holes = builder._convert_open_hole_list() | ||
data_regression.check([prepare_for_regression(attr.asdict(hole)) for hole in open_holes]) |
125 changes: 125 additions & 0 deletions
125
src/alfasim_score/converter/alfacase/_tests/test_convert_casing/test_convert_casing_list.yml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,125 @@ | ||
- filler_material: cement | ||
hanger_depth: | ||
unit: m | ||
value: 2072.0 | ||
hole_diameter: | ||
unit: in | ||
value: 42.0 | ||
inner_diameter: | ||
unit: in | ||
value: 33.0 | ||
inner_roughness: | ||
unit: mm | ||
value: 0.05 | ||
material: B | ||
material_above_filler: fluid_default | ||
name: CONDUCTOR_DRILLING_1 | ||
outer_diameter: | ||
unit: in | ||
value: 36.0 | ||
settings_depth: | ||
unit: m | ||
value: 2168.0 | ||
top_of_filler: | ||
unit: m | ||
value: 2072.0 | ||
- filler_material: cement | ||
hanger_depth: | ||
unit: m | ||
value: 2072.0 | ||
hole_diameter: | ||
unit: in | ||
value: 20.0 | ||
inner_diameter: | ||
unit: in | ||
value: 16.25 | ||
inner_roughness: | ||
unit: mm | ||
value: 0.05 | ||
material: X-80 | ||
material_above_filler: fluid_default | ||
name: SURFACE_CASING_1 | ||
outer_diameter: | ||
unit: in | ||
value: 18.0 | ||
settings_depth: | ||
unit: m | ||
value: 3490.0 | ||
top_of_filler: | ||
unit: m | ||
value: 2072.0 | ||
- filler_material: cement | ||
hanger_depth: | ||
unit: m | ||
value: 2072.0 | ||
hole_diameter: | ||
unit: in | ||
value: 14.75 | ||
inner_diameter: | ||
unit: in | ||
value: 10.711 | ||
inner_roughness: | ||
unit: mm | ||
value: 0.05 | ||
material: N-80 | ||
material_above_filler: fluid_default | ||
name: PRODUCTION_CASING_1 | ||
outer_diameter: | ||
unit: in | ||
value: 11.875 | ||
settings_depth: | ||
unit: m | ||
value: 3072.0 | ||
top_of_filler: | ||
unit: m | ||
value: 4905.0 | ||
- filler_material: cement | ||
hanger_depth: | ||
unit: m | ||
value: 3072.0 | ||
hole_diameter: | ||
unit: in | ||
value: 14.75 | ||
inner_diameter: | ||
unit: in | ||
value: 9.156 | ||
inner_roughness: | ||
unit: mm | ||
value: 0.05 | ||
material: C-110 HC | ||
material_above_filler: fluid_default | ||
name: PRODUCTION_CASING_2 | ||
outer_diameter: | ||
unit: in | ||
value: 10.75 | ||
settings_depth: | ||
unit: m | ||
value: 5441.0 | ||
top_of_filler: | ||
unit: m | ||
value: 4905.0 | ||
- filler_material: cement | ||
hanger_depth: | ||
unit: m | ||
value: 5441.0 | ||
hole_diameter: | ||
unit: in | ||
value: 14.75 | ||
inner_diameter: | ||
unit: in | ||
value: 8.684000000000001 | ||
inner_roughness: | ||
unit: mm | ||
value: 0.05 | ||
material: SDSS/125KSI | ||
material_above_filler: fluid_default | ||
name: PRODUCTION_CASING_3 | ||
outer_diameter: | ||
unit: in | ||
value: 10.75 | ||
settings_depth: | ||
unit: m | ||
value: 5607.0 | ||
top_of_filler: | ||
unit: m | ||
value: 4905.0 |
10 changes: 10 additions & 0 deletions
10
...fasim_score/converter/alfacase/_tests/test_convert_casing/test_convert_open_hole_list.yml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
- diameter: | ||
unit: in | ||
value: 9.5 | ||
inner_roughness: | ||
unit: mm | ||
value: 0.1 | ||
length: | ||
unit: m | ||
value: 371.0 | ||
name: OPEN_HOLE_1 |
5 changes: 5 additions & 0 deletions
5
src/alfasim_score/converter/alfacase/_tests/test_convert_casing/test_convert_packer_list.yml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
- material_above: fluid_default | ||
name: 'Packer (Hidráulico) #1' | ||
position: | ||
unit: m | ||
value: 5565.18 |
Oops, something went wrong.