Skip to content

Commit

Permalink
Correcting moisture diffusivity model (idaholab#245)
Browse files Browse the repository at this point in the history
  • Loading branch information
jain651 committed Aug 11, 2021
1 parent b345fc7 commit be6b496
Show file tree
Hide file tree
Showing 38 changed files with 10,344 additions and 2,988 deletions.
11 changes: 11 additions & 0 deletions doc/content/bib/blackbear.bib
Original file line number Diff line number Diff line change
Expand Up @@ -233,3 +233,14 @@ @article{OH2011124
keywords = {Ductile fracture simulation, Finite element analysis, Stress-modified fracture strain},
abstract = {This paper proposes a new method to simulate ductile failure using finite element analysis based on the stress-modified fracture strain model. A procedure is given to determine the stress-modified fracture strain as a function of the stress triaxiality from smooth and notched bar tensile tests with FE analyses. For validation, simulated results using the proposed method are compared with experimental data for cracked bar (tensile and bend) tests, extracted from API X65 pipes, and for full-scale burst test of gouged pipes, showing overall good agreements. Advantages in the use of the proposed method for practical structural integrity assessment are discussed.}
}

@article{poyet2009temperature,
title={Temperature dependence of the sorption isotherms of cement-based materials: Heat of sorption and Clausius--Clapeyron formula},
author={Poyet, St{\'e}phane and Charles, S{\'e}bastien},
journal={Cement and Concrete Research},
volume={39},
number={11},
pages={1060--1067},
year={2009},
publisher={Elsevier}
}
155 changes: 98 additions & 57 deletions doc/content/source/materials/ConcreteThermalMoisture.md
Original file line number Diff line number Diff line change
Expand Up @@ -207,25 +207,35 @@ These various heat transfer constitutive models can be conveniently chosen and s

### Moisture capacity

[!cite](xi_moisture_1994_a,xi_moisture_1994_b) developed a concrete moisture capacity model based on the Brunauer-Emmett-Teller (BET) adsorption isotherm theory, which was implemented here. The total water content $W$ in concrete at a constant temperature $T$ is referred as water adsorption isotherm, which was proposed by [!cite](xi_moisture_1994_a) as:
The Following three models have been considered for moisture diffusion in concrete

1. [!cite](xi_moisture_1994_a);
2. [!cite](bazant1979pore) model for normal-strength concrete at high temperature;
3. [!cite](mensi1988sechage) model for high-strength concrete.

Details of these models are provided below:

1. [!cite](xi_moisture_1994_a)

[!cite](xi_moisture_1994_a,xi_moisture_1994_b) developed a concrete moisture capacity model based on the Brunauer-Emmett-Teller (BET) adsorption isotherm theory, which was implemented here. The total water content $W$ in concrete at a constant temperature $T$ is referred as water adsorption isotherm, which was proposed by [!cite](xi_moisture_1994_a) as:

!equation id=adsorption_isotherm
W = \frac{CkV_mH}{(1-kH)[1+(C-1)kH]}

where
where

$C$ = $\exp\left(\frac{C_0}{T}\right) \\
C_0 = 855$ \\
$H$ = relative humidity \\
$T$ = absolute temperature in $K$ \\
$W$ = quantity of vapor absorbed at pressure $p$ (g water/g cement) \\
$V_m$ = monolayer capacity: mass of adsorbate required to cover \\
the adsorbent with a single molecular layer \\
$k$ = empirical constant
$C$ = $\exp\left(\frac{C_0}{T}\right) \\
C_0 = 855$ \\
$H$ = relative humidity \\
$T$ = absolute temperature in $K$ \\
$W$ = quantity of vapor absorbed at pressure $p$ (g water/g cement) \\
$V_m$ = monolayer capacity: mass of adsorbate required to cover \\
the adsorbent with a single molecular layer \\
$k$ = empirical constant

The monolayer capacity, $V_m$, is defined as the mass of adsorbate required to cover the surface of the adsorbent with a single molecular layer. To
evaluate $W$ at a given relative humidity value $V_m$ and the empirical constant $k$ in the above equation need to be evaluated first. This is done separately
for cement and aggregate materials as follows:
The monolayer capacity, $V_m$, is defined as the mass of adsorbate required to cover the surface of the adsorbent with a single molecular layer. To
evaluate $W$ at a given relative humidity value $V_m$ and the empirical constant $k$ in the above equation need to be evaluated first. This is done separately
for cement and aggregate materials as follows:

- **Monolayer capacity, $V_m$**

Expand Down Expand Up @@ -340,6 +350,17 @@ $\left(\frac{\partial{W}}{\partial{H}}\right)_{cp}$ = moisture capacity of cemen
The total moisture capacity ${\partial W}/{\partial H}$ (with the units of g water/g material) is a function of water content $W$, temperature $T$
and relative humidity, $H$, and strongly depends on the concrete texture.

2. [!cite](bazant1979pore)

Since moisture capacity is undefined for this model, it is considered as unit as follows:
!equation id=moisture_capacity
\frac{\partial W}{\partial H} = 1

3. [!cite](mensi1988sechage)

Since moisture capacity is undefined for this model, it is considered as unit as follows:
!equation id=moisture_capacity
\frac{\partial W}{\partial H} = 1

## Moisture diffusion

Expand All @@ -350,7 +371,7 @@ A comprehensive set of constitutive models and parameters for moisture diffusion
The governing equation for moisture diffusion in concrete is formulated by using relative humidity, $H$, as the primary variable:

!equation id=moisture_governing
\frac{\partial{W}}{\partial{H}} \frac{\partial{H}}{\partial{t}} = \nabla (D_h\nabla H) + \nabla (D_{ht}\nabla T) + \frac{\partial{W_d}}{\partial{t}}
\frac{\partial{W}}{\partial{H}} \frac{\partial{H}}{\partial{t}} = \nabla (D_h\nabla H) + \nabla (D_{ht}\nabla T)

where

Expand All @@ -360,14 +381,13 @@ $P_{vs}$ = saturate vapor pressure $= P_{atm}\exp\left(4871.3\frac{T-100}{373.15
$P_{atm}$ = standard atmospheric pressure $= 101.325 Pa$ \\
$D_h$ = moisture diffusivity (also referred as humidity diffusivity), $kg/(m^2\cdot s)$\\
$D_{ht}$= coupled moisture diffusivity under the influence of a temperature gradient, $kg/(m^2\cdot s\cdot K)$\\
$W_d$= total mass of free evaporable water released into the pores by dehydration of the cement paste\\
$t$ = time, $s$

The term on the left side of [!eqref](moisture_governing) represents time-dependent effects, and is provided by [ConcreteMoistureTimeIntegration](ConcreteMoistureTimeIntegration.md). The first term on the right side of [!eqref](moisture_governing) represents Fickian diffusion, and the second term represents Soret diffusion. These are both provided by [ConcreteMoistureDiffusion](ConcreteMoistureDiffusion.md). The third term on the right hand side of this equation represents a source due to dehydrated water, and is provided by [ConcreteMoistureDehydration](ConcreteMoistureDehydration.md).

Moisture diffusivity $D_h$ depends on the relative humidity, $H$. Thus the moisture diffusion governing equation is highly nonlinear. The following sections describes in detail the constitutive models for moisture diffusivity.

### Moisture diffusivity
### Moisture diffusivity and coupling parameters with heat diffusion

The moisture diffusivity of concrete, $D_h$, is a complex function of temperature, $T$, relative humidity, $H$, and pore structure of concrete. Various diffusion mechanisms often
interact, such as molecular diffusion in large pores (usually 50nm - 10 microns and beyond) and microcracks, Knudson diffusion in mesopores (2.5nm - 50 nm) and
Expand All @@ -376,73 +396,94 @@ mechanisms separately. Instead, they tend to reproduce the general combined tren

Calculation of $D_h$ starts with the calculation of a reference moisture diffusivity, $D_{h,0}$, at a given temperature, $T$, and relative humidity, $H$. Three reference moisture diffusivity $D_{h,0}$ models are implemented as:

1. [!cite](mensi1988sechage)
1. [!cite](xi_moisture_1994_a)

!equation id=Dh0_mensi
D_{h,0} = Ae^{BC}
[!cite](xi_moisture_1994_a) evaluate the moisture diffusivity for concrete according to

where
!equation id=Dh
D_{h,0} = D_{Hcp}\left[1 + \frac{g_i}{\frac{1-g_i}{3} + \frac{1}{\frac{D_{Hagg}}{D_{Hcp}}-1}}\right],

$D_{h,0}$ = humidity diffusion coefficient of concrete\\
$A = 3.8 \times 10^{-13} m^2/s$ \\
$B = 0.05$ \\
$C$ = free water content in L/m$^3$
where

$C$ is a function of relative humidity, $H$, in concrete as given by
$D_{h}$ = humidity diffusion coefficient of concrete \\
$D_{Hcp}$ = humidity diffusion coefficient of cement paste \\
$D_{Hagg}$ = humidity diffusion coefficient of aggregate (= 0 m$^2$/s) \\
$g_i$ = the volume fraction of aggregate

!equation id=C_mensi
C = HC_0
The humidity diffusion coefficient for cement paste is expressed as [!cite](xi_moisture_1994_a):

$D_{Hcp}$ [m$^2$/s] = $\alpha_h$ + $\beta_h$ $(1-2^{-10\gamma_h(H-1)})$ * 1e-4 / 86400\\
$\alpha_h$ [cm$^2$/day] = 1.05 - 3.8$\frac{w}{c}$ + 3.56$(\frac{w}{c})^2$\\
$\beta_h$ [cm$^2$/day]= -14.4 + 50.4$\frac{w}{c}$ - 41.8$(\frac{w}{c})^2$\\
$\gamma_h$ = 31.3 - 136$\frac{w}{c}$ + 162$(\frac{w}{c})^2$

where $C_0$ is constant takes a value of 130 (in L/m$^3$).
where $\alpha_h$, $\beta_h$ and $\gamma_h$ are coefficients from test data. Since the value of the humidity diffusivity coefficient for aggregates, $D_{Hagg}$, typically
is negligible compared with the value of $D_{Hcp}$, it is assumed to be zero in the current implementation. Note that this model is applicable for concrete with w/c > 0.5.

Since no coupling between heat and moisture transfer is considered the value of $D_{ht}$, $C_{a}$, are $C_{w}$ considered as zero.

2. [!cite](bazant1982finite)

!equation id=Dh0_bazant
D_{h,0} = D_1f_H
[!cite](bazant1982finite) describe the moisture diffusivity as a function of temperature and relative humidity according to

where $D_1 = 3.10 \times 10^{-10}m^2/s$ and
!equation id=Dh_bazant
D_h = \left\{\begin{array}{lll}
D_1 f_{1H} f_{2T} & \text{for} & T \le 95 \degree\text{C} \\
D_1 f_{2T}(T=95 \degree C) f_{3T} & \text{for} & T > 95 \degree\text{C}
\end{array}\right.

where $D_1 = 3.10 \times 10^{-10}m^2/s$ and f_{1H}, f_{2T}, and f_{3T} are given by

!equation id=fH
f_H = \left\{\begin{array}{lll}
\alpha_D + \frac{1-\alpha_D}{1+\left(\frac{1-H}{1-0.75}\right)^n} & \text{for} & T \le 95\degree C\\
1 & \text{for} & T > 95 \degree C
f_{1H} = \left\{\begin{array}{lll}
\alpha_D + \frac{1-\alpha_D}{1+\left(\frac{1-H}{1-0.H_c}\right)^n} & \text{for} & H \le 1\\
1 & \text{for} & H > 1
\end{array}\right.

Also, $f_H = 1$ when $H > 1$ and $\alpha_D$ is given by
!equation id=f2T
f_2(T) = \exp\left(\frac{Q}{R}\left(\frac{1}{(T_{ref} + 273.15)}-\frac{1}{(T + 273.15)}\right)\right)

!equation id=D_bazant
!equation id=f3T
\begin{array}{lll}
f_3(T) = \exp\left(\frac{T-95}{0.881 + 0.214(T-95)}\right) & \text{for} & T > 95 \degree C
\end{array}

where $\alpha_D$ is given by

!equation id=alfaD_bazant
\alpha_D = \frac{1}{1+\frac{19(95-T)}{70}}

where $T$ is in $\degree$C. $\alpha \in [0.037:1]$ from $T\in[0\degree C : 95\degree C]$ and $n\in[6:16]$.
$Q$ is activation energy for water migration along the adsorption layers in the necks, and $R$ is gas constant with $Q/R$=2700 K, and $T$ is in $\degree$C. $\alpha \in [0.037:1]$ from $T\in[0\degree C : 95\degree C]$ and $n\in[6:16]$.

It's obvious that all three reference moisture diffusivity models strongly depend on the value of humidity $H$, and indirectly on the temperature $T$. Once the value of
reference moisture diffusivity $D_{h,0}$ is obtained, the actual concrete moisture diffusivity $D_h$ required by the moisture diffusion governing equation, [!eqref](moisture_governing),
can then be calculated by
It has been reported by [!cite](bazant1982finite) that the additional moisture diffusion due to thermal gradients included in the moisture governing equation is negligible. Thus the value of $D_{ht}$ is set to $1.0\times10^{-5} \times D_h$ by default. This parameter can, however, be set to an arbitrary value if desired.

Since the values of parameters such as $C_{a}$ and $C_{w}$ are not provided in the numerical model, they are taken from different references. [!cite](poyet2009temperature) observed that $C_{a}$ vary between 42 kJ/mol and 80 kJ/mol for concrete, therefore, an average value is considered for general concrete, i.e., 60 kJ/mol. $C_{w}$ is obtained as follows

!equation id=Cw
C_w = \rho_{water} c_p

where \rho_{water} is density of water (1000 kg/m$^3$) and $c_p$ is heat capacity of water (= 4180 J/kg-$\degree C$)

!equation id=Dh_coupled
D_h = \left\{\begin{array}{lll}
D_{h, 0}f_1(T) & \text{for} & T \le 95 \degree C \\
D_{h, 0}f_1(95\degree C)f_2(T) & \text{for} & T > 95 \degree C
\end{array}\right.

3. [!cite](mensi1988sechage)

!equation id=Dh0_mensi
D_{h} = Ae^{BC}

where

!equation id=f1T
\begin{array}{lll}
f_1(T) = \exp\left(\frac{Q}{R}\left(\frac{1}{T_{ref}}-\frac{1}{T}\right)\right) & \text{for} & T \le 95° C
\end{array}
$A = 1.042 \times 10^{-13} m^2/s$ \\
$B = 0.05$ \\
$C$ = initial water content in concrete (kg/m$^3$)

in which $T$ is the absolute temperature ($K$), $Q$ is activation energy for water migration along the adsorption layers in the necks, and $R$ is gas constant
with $Q/R$=2700 K, and
$C$ is given by

!equation id=f2T
\begin{array}{lll}
f_2(T) = \exp\left(\frac{T-95}{0.881 + 0.214(T-95)}\right) & \text{for} & T > 95 \degree C
\end{array}
!equation id=C_mensi
C = w/c \times M_{cement}

### Coupled moisture diffusion by thermal gradient, $D_{ht}$
where $M_{cement}$ mass of cement in concrete mix.

It has been reported by Bazant et al. [!cite](bazant1982finite) that the additional moisture diffusion due to thermal gradients included in the moisture governing equation is negligible. Thus the value of $D_{ht}$ is set to $1.0\times10^{-5} \times D_h$ by default. This parameter can, however, be set to an arbitrary value if desired.
Since no coupling between heat and moisture transfer is considered the value of $D_{ht}$, $C_{a}$, are $C_{w}$ considered as zero.

!syntax parameters /Materials/ConcreteThermalMoisture

Expand Down
54 changes: 23 additions & 31 deletions include/materials/ConcreteThermalMoisture.h
Original file line number Diff line number Diff line change
Expand Up @@ -26,57 +26,49 @@ class ConcreteThermalMoisture : public Material
virtual void initQpStatefulProperties();
virtual void computeProperties();

MooseEnum _thermal_conductivity_model;
MooseEnum _thermal_capacity_model;
MooseEnum _aggregate_type;
MooseEnum _cement_type;
MooseEnum _aggregate_pore_type;

MooseEnum _moisture_diffusivity_model;

private:
Real _water_to_cement;
Real _cure_time;
MooseEnum _thermal_transport_model;
MooseEnum _moisture_transport_model;

// parameters for concrete mix proportions
Real _cement_mass;
Real _aggregate_mass;
Real _water_to_cement;

// parameters for Bazant mositure diffusivity model
Real _D1;
Real _n_power;

// parameters for Mensi's moisture diffusivity model
Real _A;
Real _B;
Real _C0;

// parameters for constant thermal transport model
Real _input_density_of_concrete;
Real _input_specific_heat_of_concrete;
Real _input_thermal_conductivity_of_concrete;

// parameters for ASCE and KODUR thermal transport model
MooseEnum _aggregate_type;

// parameters for Bazant mositure transport model
Real _D1;
Real _n_power;
Real _Hc;
Real _alfa_Dht;

///@{ some intrinsic material properties
MaterialProperty<Real> & _diffusivity;
MaterialProperty<Real> & _permeability;
MaterialProperty<Real> & _storativity;
MaterialProperty<Real> & _porosity;
///@}
// parameters for Mensi's moisture transport model
Real _A;
Real _B;

// parameters for Xi's moisture transport model
MooseEnum _cement_type;
MooseEnum _aggregate_pore_type;
Real _agg_vol_fraction;
Real _cure_time;

//@{ material properties asscociated with coupled mositure/thermal transfer through concrete
MaterialProperty<Real> & _thermal_capacity;
MaterialProperty<Real> & _thermal_conductivity;
MaterialProperty<Real> & _ca;
MaterialProperty<Real> & _moisture_capacity;
MaterialProperty<Real> & _moisture_content;
MaterialProperty<Real> & _cw;
MaterialProperty<RealGradient> & _darcy_moisture_flux;
MaterialProperty<Real> & _moisture_capacity;
///@}

MaterialProperty<Real> & _Dh;
MaterialProperty<Real> & _Dht;
MaterialProperty<Real> & _WH; // hydrated water mass per m^3 of concrete
MaterialProperty<Real> & _te; // equvalent hydration time -used in compute dehydrated water
const MaterialProperty<Real> & _te_old; // equvalent hydration time
MaterialProperty<Real> & _eqv_age; // equvalent age used in Xi's mositure capacity model
const MaterialProperty<Real> & _eqv_age_old; // equvalent age

Expand Down
Loading

0 comments on commit be6b496

Please sign in to comment.