-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat: more dimensionless numbers and pipe friction models (#273)
* Added more dimensionless numbers and pipeline friction calculations Added Froude numbers, Weber numbers Added Darcy friction factor calculations, pipe wall shear stress, pressure gradient and pressure drop calculations Added autalignement for nonaligned timeseries + added tests for such situations --------- Co-authored-by: Vebjørn Gilberg <[email protected]> Co-authored-by: Neringa Altanaite <[email protected]>
- Loading branch information
1 parent
03749d6
commit f6869de
Showing
9 changed files
with
2,133 additions
and
22 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
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,4 @@ | ||
Fluid Dynamics | ||
______________ | ||
|
||
Examples on how to use the fluid dynamics functionality. |
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,38 @@ | ||
# Copyright 2024 Cognite AS | ||
""" | ||
================================ | ||
Darcy Friction Factor | ||
================================ | ||
This example generates a Moody diagram using the Darcy friction factor function | ||
""" | ||
import warnings | ||
|
||
import matplotlib.pyplot as plt | ||
import pandas as pd | ||
import numpy as np | ||
|
||
from indsl.fluid_dynamics import Darcy_friction_factor | ||
|
||
# suppress "No frequency information was given" warning - Frequency information is derived from datetime index | ||
warnings.filterwarnings("ignore") | ||
|
||
n = 1000 | ||
Re = pd.Series(np.power(10, np.linspace(2, 8, n))) | ||
|
||
|
||
roughness_scaled_parameters = [0, 1e-6, 1e-5, 1e-4, 1e-3] | ||
|
||
fig = plt.figure(figsize=(10, 8)) | ||
for roughness_scaled_parameter in roughness_scaled_parameters: | ||
roughness_scaled = pd.Series(roughness_scaled_parameter * np.ones(n)) | ||
friction_factor = Darcy_friction_factor(Re, roughness_scaled, laminar_limit=2300.0, turbulent_limit=4000.0) | ||
plt.loglog(Re.array, friction_factor.array, "-", label=r"$\epsilon$=%1.2g" % (roughness_scaled_parameter)) | ||
plt.xlabel("Reynolds number [-]") | ||
plt.ylabel("Friction factor [-]") | ||
plt.grid(1) | ||
plt.xlim([min(Re.array), max(Re.array)]) | ||
plt.legend(loc=0, title="Relative wall roughness") | ||
plt.title("Moody diagram") | ||
plt.tight_layout() | ||
plt.show() |
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,10 +1,59 @@ | ||
# Copyright 2023 Cognite AS | ||
from .dimensionless import Re | ||
from .friction import Haaland | ||
from .dimensionless import ( | ||
Fr, | ||
Fr_2phase, | ||
Fr_density_scaled, | ||
Fr_inviscid_kelvin_helmholtz, | ||
Pressure_scaled, | ||
Re, | ||
Roughness_scaled, | ||
We, | ||
) | ||
from .friction import ( | ||
Colebrook, | ||
Darcy_friction_factor, | ||
Haaland, | ||
friction_factor_laminar, | ||
pipe_pressure_drop, | ||
pipe_pressure_gradient, | ||
pipe_wall_shear_stress, | ||
) | ||
|
||
|
||
TOOLBOX_NAME = "Fluid Dynamics" | ||
|
||
__all__ = ["Re", "Haaland"] | ||
__all__ = [ | ||
"Re", | ||
"Fr", | ||
"Fr_density_scaled", | ||
"Fr_2phase", | ||
"Fr_inviscid_kelvin_helmholtz", | ||
"We", | ||
"Pressure_scaled", | ||
"Roughness_scaled", | ||
"Haaland", | ||
"Colebrook", | ||
"friction_factor_laminar", | ||
"Darcy_friction_factor", | ||
"pipe_wall_shear_stress", | ||
"pipe_pressure_gradient", | ||
"pipe_pressure_drop", | ||
] | ||
|
||
__cognite__ = ["Re", "Haaland"] | ||
__cognite__ = [ | ||
"Re", | ||
"Fr", | ||
"Fr_density_scaled", | ||
"Fr_2phase", | ||
"Fr_inviscid_kelvin_helmholtz", | ||
"We", | ||
"Pressure_scaled", | ||
"Roughness_scaled", | ||
"Haaland", | ||
"Colebrook", | ||
"friction_factor_laminar", | ||
"Darcy_friction_factor", | ||
"pipe_wall_shear_stress", | ||
"pipe_pressure_gradient", | ||
"pipe_pressure_drop", | ||
] |
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 @@ | ||
acceleration_gravity = 9.81 # acceleration due to gravity [m/s2] |
Oops, something went wrong.