Skip to content
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

Update parameter descriptions to use new API #397

Open
wants to merge 28 commits into
base: devel
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 4 commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
0bfce67
WIP - param.setDocUnit(...) for units for relevant params
Jul 3, 2024
9a630e7
Merge branch 'idaholab:devel' into units
HiddenRoom Jul 3, 2024
6ede39d
WIP - param.setDocUnit(...) for units for relevant params ref #396
Jul 3, 2024
168b001
autogenerated style changes
Jul 3, 2024
7fc5b8d
requested changes
Jul 3, 2024
e9a1316
clarify ambiguity in temperatures and add energy units
Jul 15, 2024
6c53cdf
add strength and stress units
Jul 15, 2024
eea17f3
updated strain to be unitless
Jul 15, 2024
194b8e1
typo
HiddenRoom Jul 18, 2024
48c1392
Updating stable moose submodule refs #000
Jul 4, 2024
048f33f
Updating stable moose submodule refs #000
Jul 8, 2024
8020fc4
Updating stable moose submodule refs #000
Jul 10, 2024
0479c15
Updating stable moose submodule refs #000
Jul 11, 2024
db7bb31
Updating stable moose submodule refs #000
Jul 12, 2024
b5df938
Update NEML submodule ref #66
bwspenc Jul 12, 2024
aa528b4
Updating stable moose submodule refs #000
Jul 16, 2024
4607275
Updating stable moose submodule refs #000
Jul 16, 2024
75fe0cb
Updating stable moose submodule refs #000
Jul 17, 2024
faf07cb
Bump some tolerances in concrete tests
lindsayad Jul 17, 2024
ec3ebbb
Updating stable moose submodule refs #000
Jul 17, 2024
fdc35f0
Additional units and clarifaction
Jul 18, 2024
175d5b9
Update src/materials/ConcreteThermalMoisture.C
HiddenRoom Jul 23, 2024
3b392f4
Update src/materials/ConcreteThermalMoisture.C
HiddenRoom Jul 23, 2024
4fdc4b1
Update src/materials/ConcreteThermalMoisture.C
HiddenRoom Jul 23, 2024
500568d
Update src/materials/ConcreteThermalMoisture.C
HiddenRoom Jul 23, 2024
a59aeb0
remove comment
Jul 23, 2024
9075c74
Celcius units
Jul 23, 2024
679ae58
cure time units
Jul 24, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 7 additions & 4 deletions src/materials/ConcreteASREigenstrain.C
Original file line number Diff line number Diff line change
Expand Up @@ -39,9 +39,12 @@ ConcreteASREigenstrain::validParams()
params.addRequiredRangeCheckedParam<Real>(
"characteristic_time",
"characteristic_time > 0.0",
"Chracteristic ASR time (in days) at reference temprature. (tau_C(T_0))");
"Chracteristic ASR time at reference temprature. (tau_C(T_0))");
params.setDocUnit("characteristic_time", "d");
params.addRequiredParam<Real>("latency_time",
"Latency ASR time (in days) at reference temprature (tau_L(T_0))");
"Latency ASR time at reference temprature (tau_L(T_0))");
params.setDocUnit("latency_time", "d");
// WGA - energy units?
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The units for characteristic_activation_energy and latency_activation_energy are K. That's a little odd since they're temperature rather than energy units, so it's not really quite right to call them energies, but that's how the model is.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd also suggest adding these two in the appropriate locations. I'm not sure if the API will support this, but I want to capture that we need to deal with this:

params.setDocUnit("temperature", "Unit defined by 'temperature_units'");
params.setDocUnit("reference_temperature", "Unit defined by 'temperature_units'");

params.addRangeCheckedParam<Real>("characteristic_activation_energy",
5400.0,
"characteristic_activation_energy > 0.0",
Expand Down Expand Up @@ -275,7 +278,7 @@ ConcreteASREigenstrain::computeResidual(unsigned qp, Real scalar)
// Convert current temperature to Kelvin
const Real T = _temperature[qp] + _temp_offset;

// ASR characteristic and latency times (in days)
// ASR characteristic and latency times (in )
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Leave this one as it was. Same with the one below (Line 315)

Real tau_c = _tau_c_T0 * std::exp(_Uc * (1.0 / T - 1.0 / _ref_temp));
Real tau_L = f * _tau_L_T0 * std::exp(_UL * (1.0 / T - 1.0 / _ref_temp));

Expand Down Expand Up @@ -309,7 +312,7 @@ ConcreteASREigenstrain::computeDerivative(unsigned qp, Real scalar)
// Convert current temperature to Kelvin
const Real T = _temperature[qp] + _temp_offset;

// ASR characteristic and latency times (in days)
// ASR characteristic and latency times (in )
Real tau_c = _tau_c_T0 * std::exp(_Uc * (1.0 / T - 1.0 / _ref_temp));
Real tau_L = f * _tau_L_T0 * std::exp(_UL * (1.0 / T - 1.0 / _ref_temp));

Expand Down
1 change: 1 addition & 0 deletions src/materials/ConcreteExpansionEigenstrainBase.C
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ ConcreteExpansionEigenstrainBase::validParams()
"expansion_type", expansion_type, "Type of expansion resulting from volumetric strain");
params.addRangeCheckedParam<Real>(
"compressive_strength", "compressive_strength > 0", "Compressive strength of concrete");
// WGA - unclear if units are needed?
bwspenc marked this conversation as resolved.
Show resolved Hide resolved
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Delete this comment now.

params.addRangeCheckedParam<Real>(
"expansion_stress_limit",
"expansion_stress_limit > 0",
Expand Down
12 changes: 7 additions & 5 deletions src/materials/ConcreteExpansionMicrocrackingDamage.C
Original file line number Diff line number Diff line change
Expand Up @@ -42,15 +42,17 @@ ConcreteExpansionMicrocrackingDamage::validParams()
"Correction factor by which the eigenstrain is multiplied before "
"evaluating the damage");

params.addRequiredRangeCheckedParam<Real>(
"microcracking_initiation_strain",
"microcracking_initiation_strain > 0",
"Linear strain at which the microcracking initiates (in [m/m])");
// WGA - [m/m] ???
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Strain is unitless, so just don't even set it.

params.addRequiredRangeCheckedParam<Real>("microcracking_initiation_strain",
"microcracking_initiation_strain > 0",
"Linear strain at which the microcracking initiates");
params.setDocUnit("microcracking_initiation_strain", "[m/m]");

params.addRequiredRangeCheckedParam<Real>(
"microcracking_strain_branch",
"microcracking_strain_branch > 0",
"Parameter controlling the rate at which the microcracking increases (in [m/m])");
"Parameter controlling the rate at which the microcracking increases");
params.setDocUnit("microcracking_strain_branch", "[m/m]");

params.addParam<Real>(
"expansion_stress_limit",
Expand Down
10 changes: 7 additions & 3 deletions src/materials/ConcreteLogarithmicCreepModel.C
Original file line number Diff line number Diff line change
Expand Up @@ -38,11 +38,15 @@ ConcreteLogarithmicCreepModel::validParams()
1,
"long_term_characteristic_time > 0",
"Rate at which the long_term viscosity increases");
params.addCoupledVar("temperature", "Temperature variable [in Celsius]");
// WGA - using 0C for degrees celcius
params.addCoupledVar("temperature", "Temperature variable");
params.setDocUnit("temperature", "0C");
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we just use "C" for Celsius, but need to confirm.

params.addRangeCheckedParam<Real>("activation_temperature",
"activation_temperature >= 0",
"Activation temperature for the creep [in Kelvin]");
params.addParam<Real>("reference_temperature", 20, "Reference temperature [in Celsius]");
"Activation temperature for the creep");
params.setDocUnit("activation_temperature", "K");
params.addParam<Real>("reference_temperature", 20, "Reference temperature");
params.setDocUnit("reference_temperature", "0C");
params.addCoupledVar("humidity", "Humidity variable");
params.addRangeCheckedParam<Real>("drying_creep_viscosity",
bwspenc marked this conversation as resolved.
Show resolved Hide resolved
"drying_creep_viscosity > 0",
Expand Down
25 changes: 17 additions & 8 deletions src/materials/ConcreteThermalMoisture.C
Original file line number Diff line number Diff line change
Expand Up @@ -71,25 +71,34 @@ ConcreteThermalMoisture::validParams()
params.addParam<MooseEnum>(
"aggregate_pore_type", aggregate_pore_type, "aggregate pore structure");

params.addParam<Real>("cement_mass", "cement mass (kg) per m^3");
params.addParam<Real>("aggregate_mass", "aggregate mass (kg) per m^3");
// WGA - unclear if units for following two params is kg or kg/m^3 - assuming kg
bwspenc marked this conversation as resolved.
Show resolved Hide resolved
params.addParam<Real>("cement_mass", "cement mass per m^3");
params.setDocUnit("cement_mass", "kg");
params.addParam<Real>("aggregate_mass", "aggregate mass per m^3");
params.setDocUnit("aggregate_mass", "kg");
params.addParam<Real>("water_to_cement_ratio", "water to cement ratio");
params.addParam<Real>("aggregate_vol_fraction", "volumetric fraction of aggregates");
params.addParam<Real>("concrete_cure_time", "concrete curing time in days");
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
params.addParam<Real>("concrete_cure_time", "concrete curing time in days");
params.addParam<Real>("concrete_cure_time", "concrete curing time");
params.setDocUnit("concrete_cure_time", "d");

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This change is still needed.

params.addParam<Real>("ref_density", "refernece density of porous media Kg/m^3");
params.addParam<Real>("ref_specific_heat", "reference specific heat of concrete J/Kg/0C");
params.addParam<Real>("ref_thermal_conductivity",
"concrete reference thermal conductivity (W/m/C)");
params.addParam<Real>("ref_density", "refernece density of porous media");
HiddenRoom marked this conversation as resolved.
Show resolved Hide resolved
params.setDocUnit("ref_density", "kg/m^3");
params.addParam<Real>("ref_specific_heat", "reference specific heat of concrete");
params.setDocUnit("ref_specific_heat", "J/kg/0C");
HiddenRoom marked this conversation as resolved.
Show resolved Hide resolved
// WGA - Watts / Meters / ??? - what is C?
HiddenRoom marked this conversation as resolved.
Show resolved Hide resolved
params.addParam<Real>("ref_thermal_conductivity", "concrete reference thermal conductivity");
params.setDocUnit("ref_thermal_conductivity", "W/m/C");
HiddenRoom marked this conversation as resolved.
Show resolved Hide resolved

// parameters for Bazant mositure transport model
params.addParam<Real>("D1", "empirical constants (m2/s)");
// WGA - m2 = m^2 ?? - assuming so?
HiddenRoom marked this conversation as resolved.
Show resolved Hide resolved
params.addParam<Real>("D1", "empirical constants");
params.setDocUnit("D1", "m^2/s");
params.addParam<Real>("n", "empirical constants");
params.addParam<Real>("critical_relative_humidity", "empirical constants");
params.addParam<Real>("coupled_moisture_diffusivity_factor",
"coupling coefficient mositure transfer due to heat");

// parameters for Mensi's moisture model
params.addParam<Real>("A", "empirical constants (m2/s)");
params.addParam<Real>("A", "empirical constants");
params.setDocUnit("A", "m^2/s");
params.addParam<Real>("B", "empirical constants");

params.addCoupledVar("relative_humidity", "nonlinear variable name for rel. humidity");
bwspenc marked this conversation as resolved.
Show resolved Hide resolved
Expand Down
1 change: 1 addition & 0 deletions src/materials/DamagePlasticityStressUpdate.C
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ DamagePlasticityStressUpdate::validParams()
"ft_ep_slope_factor_at_zero_ep",
"ft_ep_slope_factor_at_zero_ep <= 1 & ft_ep_slope_factor_at_zero_ep >= 0",
"slope of ft vs plastic strain curve at zero plastic strain");
// WGA - unit needed for this?
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Damage is unitless. Stress and strain have units, but I believe we're flexible on what system the user chooses.

params.addRequiredParam<Real>(
"tensile_damage_at_half_tensile_strength",
"fraction of the elastic recovery slope in tension at 0.5*ft0 after yielding");
Expand Down