New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
hc process revision #2200
Merged
Merged
hc process revision #2200
Changes from all commits
Commits
Show all changes
8 commits
Select commit
Hold shift + click to select a range
8cb6c56
[HC] first version of new HC process runs
754cc5e
[ML] new density model, linearly depending on pressure and concentrat…
43d8d46
[T] HC Tests updated
e23e66d
[HC] documentation updated
7a9c0dd
minor changes performed
ce054f5
[ML] Documentation updated: new tags for project files added
effd31a
[D] Benchmark test results and revised HC Process derivation included…
64a0509
[D] Doxygen formula rendering fixes...
File filter
Filter by extension
Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
There are no files selected for viewing
1 change: 1 addition & 0 deletions
1
...ensity/ConcentrationAndPressureDependent/c_ConcentrationAndPressureDependent.md
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 @@ | ||
\copydoc MaterialLib::Fluid::LinearConcentrationAndPressureDependentDensity |
1 change: 1 addition & 0 deletions
1
...entrationAndPressureDependent/t_fluid_density_concentration_difference_ratio.md
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 @@ | ||
\f$ \bar \alpha\f$ is difference ratio for fluid density depending on concentration |
1 change: 1 addition & 0 deletions
1
.../ConcentrationAndPressureDependent/t_fluid_density_pressure_difference_ratio.md
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 @@ | ||
\f$ \bar \alpha\f$ is difference ratio for fluid density depending on pressure |
1 change: 1 addition & 0 deletions
1
...al/fluid/density/ConcentrationAndPressureDependent/t_reference_concentration.md
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 @@ | ||
\f$ C_{\text{ref}}\f$ is the reference concentration |
1 change: 1 addition & 0 deletions
1
...material/fluid/density/ConcentrationAndPressureDependent/t_reference_density.md
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 @@ | ||
\f$ \varrho_{\text{ref}}\f$ is the reference density |
1 change: 1 addition & 0 deletions
1
...aterial/fluid/density/ConcentrationAndPressureDependent/t_reference_pressure.md
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 @@ | ||
\f$ p_{\text{ref}}\f$ is the reference pressure |
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
111 changes: 111 additions & 0 deletions
111
MaterialLib/Fluid/Density/LinearConcentrationAndPressureDependentDensity.h
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,111 @@ | ||
/** | ||
* @copyright | ||
* Copyright (c) 2012-2018, OpenGeoSys Community (http://www.opengeosys.org) | ||
* Distributed under a Modified BSD License. | ||
* See accompanying file LICENSE.txt or | ||
* http://www.opengeosys.org/project/license | ||
* | ||
*/ | ||
|
||
#pragma once | ||
|
||
#include <string> | ||
|
||
#include "BaseLib/ConfigTree.h" | ||
|
||
#include "MaterialLib/Fluid/FluidProperty.h" | ||
|
||
namespace MaterialLib | ||
{ | ||
namespace Fluid | ||
{ | ||
/// Linear concentration dependent density model. | ||
/// \f[ \varrho = \varrho_{\text{ref}} | ||
/// (1 + \bar \alpha (C - C_{\text{ref}}) + \bar \beta (p - p_{\text{ref}}) ) | ||
/// \f] where | ||
/// - \f$ \varrho_{\text{ref}}\f$ is the reference density | ||
/// - \f$ \bar \alpha\f$ is the fluid density concentration difference ratio | ||
/// - \f$ C_{\text{ref}}\f$ is the reference concentration | ||
/// - \f$ \bar \beta\f$ is the fluid density pressure difference ratio | ||
/// - \f$ p_{\text{ref}}\f$ is the reference pressure | ||
class LinearConcentrationAndPressureDependentDensity final | ||
: public FluidProperty | ||
{ | ||
public: | ||
/** | ||
* @param reference_density \f$\rho_0\f$ | ||
* @param reference_concentration \f$C_0\f$ | ||
* @param fluid_density_concentration_difference_ratio \f$ \bar \alpha \f$ | ||
* in reference | ||
* @param reference_pressure \f$p_0\f$ | ||
* @param fluid_density_pressure_difference_ratio \f$ \bar \beta \f$ in | ||
* reference Coupled groundwater flow and transport: 2. Thermohaline and 3D | ||
* convection systems | ||
*/ | ||
explicit LinearConcentrationAndPressureDependentDensity( | ||
const double reference_density, double reference_concentration, | ||
const double fluid_density_concentration_difference_ratio, | ||
double reference_pressure, | ||
const double fluid_density_pressure_difference_ratio) | ||
: _reference_density(reference_density), | ||
_reference_concentration(reference_concentration), | ||
_fluid_density_concentration_difference_ratio( | ||
fluid_density_concentration_difference_ratio), | ||
_reference_pressure(reference_pressure), | ||
_fluid_density_pressure_difference_ratio( | ||
fluid_density_pressure_difference_ratio) | ||
{ | ||
} | ||
|
||
/// Get model name. | ||
std::string getName() const override | ||
{ | ||
return "Linear concentration and pressure dependent density"; | ||
} | ||
|
||
/// Get density value. | ||
/// \param var_vals Variable values in an array. The order of its elements | ||
/// is given in enum class PropertyVariableType. | ||
double getValue(const ArrayType& var_vals) const override | ||
{ | ||
const double C = var_vals[static_cast<int>(PropertyVariableType::C)]; | ||
const double p = var_vals[static_cast<int>(PropertyVariableType::p)]; | ||
return _reference_density * | ||
(1 + | ||
_fluid_density_concentration_difference_ratio * | ||
(C - _reference_concentration) + | ||
_fluid_density_pressure_difference_ratio * | ||
(p - _reference_pressure)); | ||
} | ||
|
||
/// Get the partial differential of the density with respect to | ||
/// concentration or pressure. | ||
double getdValue(const ArrayType& /*var_vals*/, | ||
const PropertyVariableType var) const override | ||
{ | ||
if (var == PropertyVariableType::C) | ||
{ | ||
return _reference_density * | ||
_fluid_density_concentration_difference_ratio; | ||
} | ||
else if (var == PropertyVariableType::p) | ||
{ | ||
return _reference_density * | ||
_fluid_density_pressure_difference_ratio; | ||
} | ||
else | ||
{ | ||
return 0; | ||
} | ||
} | ||
|
||
private: | ||
const double _reference_density; | ||
const double _reference_concentration; | ||
const double _fluid_density_concentration_difference_ratio; | ||
const double _reference_pressure; | ||
const double _fluid_density_pressure_difference_ratio; | ||
}; | ||
|
||
} // namespace Fluid | ||
} // namespace MaterialLib |
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
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@TomFischer Seems there is no difference (in the optimized assembly) whether to use NPOINTS or num_nodes for the Eigen::Map creation.