Skip to main content

STConvectiveMatrix

Theory

Now we want to compute the space-time convective finite element matrix for following PDE.

uit+ckuixk+\frac{\partial u_i}{\partial t} + c_k \frac{\partial u_i}{\partial x_k} + \cdots

We would like to compute the following matrices.

4M(I,J,a,b)=aδuiIQnNITackNJTbxkdQbuiJ{}^{4}M(I,J,a,b) = {}^{a}\delta u_{iI} \quad \int_{Q_n} N^I T_a c_k \frac{\partial N^J T_b}{\partial x_k} {dQ} \quad {}^{b}u_{iJ} 4M(I,J,a,b)=aδuiIQnckNITaxkNJTbdQbuiJ{}^{4}M(I,J,a,b) = {}^{a}\delta u_{iI} \quad \int_{Q_n} c_k \frac{\partial N^I T_a}{\partial x_k} N^J T_b {dQ} \quad {}^{b}u_{iJ}

Now we want to compute the space-time convective finite element matrix for following PDE.

Ut+f(U)x+g(U)y+h(U)z+\frac{\partial \textbf{U}}{\partial t} + \frac{\partial \textbf{f(U)}}{\partial x} + \frac{\partial \textbf{g(U)}}{\partial y} + \frac{\partial \textbf{h(U)}}{\partial z} + \cdots

where U,f,g,hRm\textbf{U}, \textbf{f}, \textbf{g}, \textbf{h} \in R^m. In this case we wish to compute the following matrices.

4M(I,J,a,b)=δaUiIQnNITaNJTbxdQbfiJ{}^{4}M(I,J,a,b) = \delta {}^{a} U_{iI} \quad \int_{Q_n} N^I T_a \frac{\partial N^J T_b}{\partial x} {dQ} \quad {}^{b}f_{iJ} 4M(I,J,a,b)=δaUiIQnNITaxNJTbdQbfiJ{}^{4}M(I,J,a,b) = \delta {}^{a} U_{iI} \quad \int_{Q_n} \frac{\partial N^I T_a}{\partial x} N^J T_b {dQ} \quad {}^{b}f_{iJ} 4M(I,J,a,b)=δaUiIQnNITaNJTbxdQbgiJ{}^{4}M(I,J,a,b) = \delta {}^{a} U_{iI} \quad \int_{Q_n} N^I T_a \frac{\partial N^J T_b}{\partial x} {dQ} \quad {}^{b}g_{iJ} 4M(I,J,a,b)=δaUiIQnNITaxNJTbdQbgiJ{}^{4}M(I,J,a,b) = \delta {}^{a} U_{iI} \quad \int_{Q_n} \frac{\partial N^I T_a}{\partial x} N^J T_b {dQ} \quad {}^{b}g_{iJ} 4M(I,J,a,b)=δaUiIQnNITaNJTbxdQbhiJ{}^{4}M(I,J,a,b) = \delta {}^{a} U_{iI} \quad \int_{Q_n} N^I T_a \frac{\partial N^J T_b}{\partial x} {dQ} \quad {}^{b}h_{iJ} 4M(I,J,a,b)=δaUiIQnNITaxNJTbdQbhiJ{}^{4}M(I,J,a,b) = \delta {}^{a} U_{iI} \quad \int_{Q_n} \frac{\partial N^I T_a}{\partial x} N^J T_b {dQ} \quad {}^{b}h_{iJ}

Now we want to compute the space-time convective finite element matrix for following PDE.

uit+ckuixk+\frac{\partial u_i}{\partial t} + c_k \frac{\partial u_i}{\partial x_k} + \cdots

We would like to compute the following matrices.

4M(I,J,a,b)=δauiIQnNITatckhNJTbxkdQbuiJ{}^{4}M(I,J,a,b) = \delta {}^{a}u_{iI} \int_{Q_n} \frac{ \partial N^I T_a}{\partial t} c_{k}^{h} \frac{\partial N^J T_b}{\partial x_k} {dQ} \quad {}^{b}u_{iJ} 4M(I,J,a,b)=δauiIQnckhNITaxkNJTbtdQbuiJ{}^{4}M(I,J,a,b) = \delta {}^{a}u_{iI} \int_{Q_n} c_{k}^{h} \frac{\partial N^I T_a}{\partial x_k} \frac{\partial N^J T_b}{\partial t} {dQ} \quad {}^{b}u_{iJ}

Now we want to compute the space-time convective finite element matrix for following PDE.

Ut+f(U)x+g(U)y+h(U)z+\frac{\partial \textbf{U}}{\partial t} + \frac{\partial \textbf{f(U)}}{\partial x} + \frac{\partial \textbf{g(U)}}{\partial y} + \frac{\partial \textbf{h(U)}}{\partial z} + \cdots

where U,f,g,hRm\textbf{U}, \textbf{f}, \textbf{g}, \textbf{h} \in R^m. In this case we wish to compute the following matrices.

4M(I,J,a,b)=aδUiIQnNITatNJTbxdQbfiJ{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} \frac{\partial N^I T_a}{\partial t} \frac{\partial N^J T_b}{\partial x} {dQ} \quad {}^{b}f_{iJ} 4M(I,J,a,b)=aδUiIQnNITaxNJTbtdQbfiJ{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} \frac{\partial N^I T_a}{\partial x} \frac{\partial N^J T_b}{\partial t} {dQ} \quad {}^{b}f_{iJ} 4M(I,J,a,b)=aδUiIQnNITatNJTbydQbgiJ{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} \frac{\partial N^I T_a}{\partial t} \frac{\partial N^J T_b}{\partial y} {dQ} \quad {}^{b}g_{iJ} 4M(I,J,a,b)=aδUiIQnNITayNJTbtdQbgiJ{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} \frac{\partial N^I T_a}{\partial y} \frac{\partial N^J T_b}{\partial t} {dQ} \quad {}^{b}g_{iJ} 4M(I,J,a,b)=aδUiIQnNITatNJTbzdQbhiJ{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} \frac{\partial N^I T_a}{\partial t} \frac{\partial N^J T_b}{\partial z} {dQ} \quad {}^{b}h_{iJ} 4M(I,J,a,b)=aδUiIQnNITazNJTbtdQbhiJ{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} \frac{\partial N^I T_a}{\partial z} \frac{\partial N^J T_b}{\partial t} {dQ} \quad {}^{b}h_{iJ}

Now we want to compute the space-time convective finite element matrix for following PDE.

Ut+A1Ux+A2Uy+A3Uz+\frac{\partial \textbf{U}}{\partial t} + \mathbf{A_1} \frac{\partial \textbf{U}}{\partial x} + \mathbf{A_2} \frac{\partial \textbf{U}}{\partial y} + \mathbf{A_3} \frac{\partial \textbf{U}}{\partial z} + \cdots

where URm\textbf{U} \in R^m, AiRm×m\mathbf{A_i} \in R^{m \times m}. In this case we wish to compute the following matrices.

4M(I,J,a,b)=aδUiIQnNITa[A1]ijNJTbxdQbfjJ{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} N^I T_a [ \mathbf{A_1} ]_{ij} \frac{\partial N^J T_b}{\partial x} {dQ} \quad {}^{b}f_{jJ} 4M(I,J,a,b)=aδUiIQn[A1]jiNITaxNJTbdQbfjJ{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [ \mathbf{A_1} ]_{ji} \frac{\partial N^I T_a}{\partial x} N^J T_b {dQ} \quad {}^{b}f_{jJ} 4M(I,J,a,b)=aδUiIQnNITa[A2]ijNJTbydQbgjJ{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} N^I T_a [\mathbf{A_2}]_{ij} \frac{\partial N^J T_b}{\partial y} {dQ} \quad {}^{b}g_{jJ} 4M(I,J,a,b)=aδUiIQn[A2]jiNITayNJTbdQbgjJ{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [\mathbf{A_2}]_{ji} \frac{\partial N^I T_a}{\partial y} N^J T_b {dQ} \quad {}^{b}g_{jJ} 4M(I,J,a,b)=aδUiIQnNITa[A3]ijNJTbzdQbhjJ{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} N^I T_a [\mathbf{A_3}]_{ij} \frac{\partial N^J T_b}{\partial z} {dQ} \quad {}^{b}h_{jJ} 4M(I,J,a,b)=aδUiIQn[A3]jiNITazNJTbdQbhjJ{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [\mathbf{A_3}]_{ji} \frac{\partial N^I T_a}{\partial z} N^J T_b {dQ} \quad {}^{b}h_{jJ}

The shape of each 4M(:,:,a,b){}^{4}M(:,:,a,b) is (NNS×m,NNS×m)(N_{NS} \times m, N_{NS} \times m). In this case there will be coupling between different components of U\mathbf{U}. This coupling is due to Ai\mathbf{A_i}. The structure of any of the above 4M{}^{4}\mathbf{M} is given as

4M(:,:,a,b)=[M11M1mMm1Mmm]{}^{4}\mathbf{M}(:,:,a,b) = \begin{bmatrix} \mathbf{M_{11}} & \cdots & \mathbf{M_{1m}} \\ \vdots & \ddots & \vdots \\ \mathbf{M_{m1}} & \cdots & \mathbf{M_{mm}} \\ \end{bmatrix}

Each Mij\mathbf{M_{ij}} has shape (Nns×Nns)(N_{ns} \times N_{ns}).

Now we want to compute the space-time convective finite element matrix for following PDE.

Ut+A1Ux+A2Uy+A3Uz+\frac{\partial \textbf{U}}{\partial t} + \mathbf{A_1} \frac{\partial \textbf{U}}{\partial x} + \mathbf{A_2} \frac{\partial \textbf{U}}{\partial y} + \mathbf{A_3} \frac{\partial \textbf{U}}{\partial z} + \cdots

where URm\textbf{U} \in R^m, AiRm×m\mathbf{A_i} \in R^{m \times m}. In this case we wish to compute the following matrices.

4M(I,J,a,b)=aδUiIQnNITat[A1]ijNJTbxdQbfjJ{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} \frac{\partial N^I T_a}{\partial t} [ \mathbf{A_1} ]_{ij} \frac{\partial N^J T_b}{\partial x} {dQ} \quad {}^{b}f_{jJ} 4M(I,J,a,b)=aδUiIQn[A1]jiNITaxNJTbtdQbfjJ{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [ \mathbf{A_1} ]_{ji} \frac{\partial N^I T_a}{\partial x} \frac{\partial N^J T_b}{\partial t} {dQ} \quad {}^{b}f_{jJ} 4M(I,J,a,b)=aδUiIQnNITat[A2]ijNJTbydQbgjJ{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} \frac{\partial N^I T_a}{\partial t} [\mathbf{A_2}]_{ij} \frac{\partial N^J T_b}{\partial y} {dQ} \quad {}^{b}g_{jJ} 4M(I,J,a,b)=aδUiIQn[A2]jiNITayNJTbtdQbgjJ{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [\mathbf{A_2}]_{ji} \frac{\partial N^I T_a}{\partial y} \frac{\partial N^J T_b}{\partial t} {dQ} \quad {}^{b}g_{jJ} 4M(I,J,a,b)=aδUiIQnNITat[A3]ijNJTbzdQbhjJ{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} \frac{\partial N^I T_a}{\partial t} [\mathbf{A_3}]_{ij} \frac{\partial N^J T_b}{\partial z} {dQ} \quad {}^{b}h_{jJ} 4M(I,J,a,b)=aδUiIQn[A3]jiNITazNJTbtdQbhjJ{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [\mathbf{A_3}]_{ji} \frac{\partial N^I T_a}{\partial z} \frac{\partial N^J T_b}{\partial t} {dQ} \quad {}^{b}h_{jJ}

The shape of each 4M(:,:,a,b){}^{4}M(:,:,a,b) is (NNS×m,NNS×m)(N_{NS} \times m, N_{NS} \times m). In this case there will be coupling between different components of U\mathbf{U}. This coupling is due to Ai\mathbf{A_i}. The structure of any of the above 4M{}^{4}\mathbf{M} is given as

4M(:,:,a,b)=[M11M1mMm1Mmm]{}^{4}\mathbf{M}(:,:,a,b) = \begin{bmatrix} \mathbf{M_{11}} & \cdots & \mathbf{M_{1m}} \\ \vdots & \ddots & \vdots \\ \mathbf{M_{m1}} & \cdots & \mathbf{M_{mm}} \\ \end{bmatrix}

Each Mij\mathbf{M_{ij}} has shape (Nns×Nns)(N_{ns} \times N_{ns}).

Now consider the following terms in a pde.

A0Ut+A1Ux+A2Uy+A3Ut+\mathbf{A_0} \frac{\partial U}{\partial t} + \mathbf{A_1} \frac{\partial U}{\partial x} + \mathbf{A_2} \frac{\partial \mathbf{U}}{\partial y} + \mathbf{A_3} \frac{\partial U}{\partial t} + \cdots 4M(I,J,a,b)=aδUiIQn[A0]kiNITat[A1]kjNJTbxdQbfjJ{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [ \mathbf{A_0}]_{ki} \frac{\partial N^I T_a}{\partial t} [ \mathbf{A_1} ]_{kj} \frac{\partial N^J T_b}{\partial x} {dQ} \quad {}^{b}f_{jJ} 4M(I,J,a,b)=aδUiIQn[A1]kiNITax[A0]kjNJTbtdQbfjJ{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [ \mathbf{A_1} ]_{ki} \frac{\partial N^I T_a}{\partial x} [\mathbf{A_0}]_{kj} \frac{\partial N^J T_b}{\partial t} {dQ} \quad {}^{b}f_{jJ} 4M(I,J,a,b)=aδUiIQn[A0]kiNITat[A2]kjNJTbydQbgjJ{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [ \mathbf{A_0}]_{ki}\frac{\partial N^I T_a}{\partial t} [\mathbf{A_2}]_{kj} \frac{\partial N^J T_b}{\partial y} {dQ} \quad {}^{b}g_{jJ} 4M(I,J,a,b)=aδUiIQn[A2]kiNITay[A0]kjNJTbtdQbgjJ{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [\mathbf{A_2}]_{ki} \frac{\partial N^I T_a}{\partial y} [ \mathbf{A_0}]_{kj} \frac{\partial N^J T_b}{\partial t} {dQ} \quad {}^{b}g_{jJ} 4M(I,J,a,b)=aδUiIQn[A0]kiNITat[A3]kjNJTbzdQbhjJ{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [ \mathbf{A_0}]_{ki}\frac{\partial N^I T_a}{\partial t} [\mathbf{A_3}]_{kj} \frac{\partial N^J T_b}{\partial z} {dQ} \quad {}^{b}h_{jJ} 4M(I,J,a,b)=aδUiIQn[A3]kiNITaz[A0]kjNJTbtdQbhjJ{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [\mathbf{A_3}]_{ki} \frac{\partial N^I T_a}{\partial z} [ \mathbf{A_0}]_{kj} \frac{\partial N^J T_b}{\partial t} {dQ} \quad {}^{b}h_{jJ}

Methods

STConvectiveMatrix 1

Implementation: STCM_1

!!! note "Interface"

CALL ConvectiveMatrix( test, trial, c, term1, term2)

!!! example ""

M(I,J,a,b)=InΩcjNITaxjNJTbdΩdtM\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{c_j}\frac{{\partial {N^I}{T_a}}}{{\partial {x_j}}} \cdot {N^J}{T_b}d\Omega dt} } }
CALL ConvectiveMatrix(test, trial, c, term1=del_x, term2=del_none, projectOn='test')
M(I,J,a,b)=InΩNITacjNJTbxjdΩdtM\left(I,J,a,b\right)=\int_{I_{n}}\int_{\Omega}N^{I}T_{a}c_{j}\frac{\partial N^{J}T_{b}}{\partial x_{j}}d\Omega dt
CALL ConvectiveMatrix(test, trial, c, term1=del_none, term2=del_x, projectOn='trial')
  • C denotes the convective velocity. It can be Rank-1, Rank-2, Rank-3 array wrapped inside the [[FEVariable_]].
  • If the convective velocity is constant in both space and time, C should be a rank-1, C(:).
  • The spatial nodal values of convective velocity, when it is constant in time domain, is given by a rank-2 array C(:,:)
  • The temporal values of convective velocity, when it is constant in time domain, is given by a rank-2 array C(:,:)
  • Space-time nodal values of convective velocity is given by a rank-3 array C(:,:,:)

You can learn more about this method from following pages

  • [[STConvectiveMatrix_test_1]] Line2 for space and time, constant velocity
  • [[STConvectiveMatrix_test_2]] Line2 for space and time, spatial nodal velocity
  • [[STConvectiveMatrix_test_3]] Line2 for space and time, space-time nodal velocity
  • [[STConvectiveMatrix_test_4]] Line2 for space and time, constant velocity

STConvectiveMatrix 2

Implementation: STCM_2 and STCM_3

M(I,J,a,b)=InΩNITaxcNJTbdΩdtM\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial x}} c \cdot {N^J}{T_b}d\Omega dt} } }

This matrix can be computed using the following command.

mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_none, c )
M(I,J,a,b)=InΩNITaycNJTbdΩdtM\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial y}} c \cdot {N^J}{T_b}d\Omega dt} } }

This matrix can be computed using the following command.

mat2=ConvectiveMatrix( test, trial, term1=del_y, term2=del_none, c )
M(I,J,a,b)=InΩNITazcNJTbdΩdtM\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial z}} c \cdot {N^J}{T_b}d\Omega dt} } }

This matrix can be computed using the following command.

mat2=ConvectiveMatrix( test, trial, term1=del_z, term2=del_none, c )
M(I,J,a,b)=InΩNJTbcNJTbxdΩdtM\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial x}}d\Omega dt} } }

This matrix can be computed using the following command.

mat2=ConvectiveMatrix( test, trial, term1=del_none, term2=del_x, c )
M(I,J,a,b)=InΩNJTbcNJTbydΩdtM\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial y}}d\Omega dt} } }

This matrix can be computed using the following command.

mat2=ConvectiveMatrix( test, trial, term1=del_none, term2=del_y, c )
M(I,J,a,b)=InΩNJTbcNJTbzdΩdtM\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial z}}d\Omega dt} } }

This matrix can be computed using the following command.

mat2=ConvectiveMatrix( test, trial, term1=del_none, term2=del_z, c )
M(I,J,a,b)=InΩNITaxicNJTbdΩdtM\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial x_{i}}} c \cdot {N^J}{T_b}d\Omega dt} } }

This matrix can be computed by setting dim=-1 as shown in the following command.

mat2=ConvectiveMatrix( test, trial, term1=del_x_all, term2=del_none,c)
M(I,J,a,b)=InΩNJTbcNJTbxidΩdtM\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial x_{i}}}d\Omega dt} } }

This matrix can be computed using the following command.

mat2=ConvectiveMatrix( test, trial, term1=del_none, term2=del_x_all,c)

!!! note "" You can learn more about this subroutine from following pages.

  • [[STConvectiveMatrix_test_21]] Line2 in space and time, FEVariable is constant
  • [[STConvectiveMatrix_test_22]] Line2 in space and time, FEVariable is space-nodal values
  • [[STConvectiveMatrix_test_23]] Line2 in space and time, FEVariable is space-time values
  • [[STConvectiveMatrix_test_24]] Triangle3 in space and Line2 in time, FEVariable is constant
  • [[STConvectiveMatrix_test_25]] Triangle3 in space and Line2 in time, FEVariable is spatial nodal values
  • [[STConvectiveMatrix_test_26]] Triangle3 in space and Line2 in time, FEVariable is space-time nodal values
  • [[STConvectiveMatrix_test_27]] Triangle3 in space and Line2 in time, FEVariable is space-time nodal values

STConvectiveMatrix 3

Implementation: STCM_4 and STCM_5.

M(I,J,a,b)=InΩcNITaxNJTbtdΩdtM(I,J,a,b)=\int_{I_{n}}\int_{\Omega}c\frac{\partial N^{I}T_{a}}{\partial x}\frac{\partial N^{J}T_{b}}{\partial t}d\Omega dt
mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_t,c)
M(I,J,a,b)=InΩcNITayNJTbtdΩdtM(I,J,a,b)=\int_{I_{n}}\int_{\Omega}c\frac{\partial N^{I}T_{a}}{\partial y}\frac{\partial N^{J}T_{b}}{\partial t}d\Omega dt
mat2=ConvectiveMatrix( test, trial, term1=del_y, term2=del_t,c)
M(I,J,a,b)=InΩcNITazNJTbtdΩdtM(I,J,a,b)=\int_{I_{n}}\int_{\Omega}c\frac{\partial N^{I}T_{a}}{\partial z}\frac{\partial N^{J}T_{b}}{\partial t}d\Omega dt
mat2=ConvectiveMatrix( test, trial, term1=del_z, tzerm2=del_t,c)
M(I,J,a,b)=InΩcNITatNJTbxdΩdtM(I,J,a,b)=\int_{I_{n}}\int_{\Omega}c\frac{\partial N^{I}T_{a}}{\partial t}\frac{\partial N^{J}T_{b}}{\partial x}d\Omega dt
mat2=ConvectiveMatrix( test, trial, term1=del_t, term2=del_x,c)
M(I,J,a,b)=InΩcNITatNJTbydΩdtM(I,J,a,b)=\int_{I_{n}}\int_{\Omega}c\frac{\partial N^{I}T_{a}}{\partial t}\frac{\partial N^{J}T_{b}}{\partial y}d\Omega dt
mat2=ConvectiveMatrix( test, trial, term1=del_t, term2=del_y,c)
M(I,J,a,b)=InΩcNITatNJTbzdΩdtM(I,J,a,b)=\int_{I_{n}}\int_{\Omega}c\frac{\partial N^{I}T_{a}}{\partial t}\frac{\partial N^{J}T_{b}}{\partial z}d\Omega dt
mat2=ConvectiveMatrix( test, trial, term1=del_t, term2=del_z,c)
M(I,J,a,b)=InΩcNITaxiNJTbtdΩdtM(I,J,a,b)=\int_{I_{n}}\int_{\Omega}c\frac{\partial N^{I}T_{a}}{\partial x_{i}}\frac{\partial N^{J}T_{b}}{\partial t}d\Omega dt
mat2=ConvectiveMatrix( test, trial, term1=del_x_all, term2=del_t,c)
M(I,J,a,b)=InΩcNITatNJTbxidΩdtM(I,J,a,b)=\int_{I_{n}}\int_{\Omega}c\frac{\partial N^{I}T_{a}}{\partial t}\frac{\partial N^{J}T_{b}}{\partial x_{i}}d\Omega dt
mat2=ConvectiveMatrix( test, trial, term1=del_t, term2=del_x_all,c)

You can learn more about these methods from following pages 🚀💎🔗

  • [[STConvectiveMatrix_test_31]]
  • [[STConvectiveMatrix_test_32]]

STConvectiveMatrix 4

Implementation: STCM_6 and STCM_7.

M(I,J,a,b)=InΩNITaxcpNJTbxpdΩdtM(I,J,a,b)=\int_{I_{n}}\int_{\Omega}\frac{\partial N^{I}T_{a}}{\partial x}c_{p}\frac{\partial N^{J}T_{b}}{\partial x_{p}}d\Omega dt
mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_x,c=c, projectOn="trial")
M(I,J,a,b)=InΩNITaycpNJTbxpdΩdtM(I,J,a,b)=\int_{I_{n}}\int_{\Omega}\frac{\partial N^{I}T_{a}}{\partial y}c_{p}\frac{\partial N^{J}T_{b}}{\partial x_{p}}d\Omega dt
mat2=ConvectiveMatrix( test, trial, term1=del_y, term2=del_x,c=c, projectOn="trial")
M(I,J,a,b)=InΩNITazcpNJTbxpdΩdtM(I,J,a,b)=\int_{I_{n}}\int_{\Omega}\frac{\partial N^{I}T_{a}}{\partial z}c_{p}\frac{\partial N^{J}T_{b}}{\partial x_{p}}d\Omega dt
mat2=ConvectiveMatrix( test, trial, term1=del_z, term2=del_x,c=c, projectOn="trial")
M(I,J,a,b)=InΩNITaxpcpNJTbxdΩdtM(I,J,a,b)=\int_{I_{n}}\int_{\Omega}\frac{\partial N^{I}T_{a}}{\partial x_{p}}c_{p}\frac{\partial N^{J}T_{b}}{\partial x}d\Omega dt
mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_x,c=c, projectOn="test")
M(I,J,a,b)=InΩNITaxpcpNJTbydΩdtM(I,J,a,b)=\int_{I_{n}}\int_{\Omega}\frac{\partial N^{I}T_{a}}{\partial x_{p}}c_{p}\frac{\partial N^{J}T_{b}}{\partial y}d\Omega dt
mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_y,c=c, projectOn="test")
M(I,J,a,b)=InΩNITaxpcpNJTbzdΩdtM(I,J,a,b)=\int_{I_{n}}\int_{\Omega}\frac{\partial N^{I}T_{a}}{\partial x_{p}}c_{p}\frac{\partial N^{J}T_{b}}{\partial z}d\Omega dt
mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_z,c=c, projectOn="test")
M(I,J,a,b)=InΩNITaxicpNJTbxpdΩdtM(I,J,a,b)=\int_{I_{n}}\int_{\Omega}\frac{\partial N^{I}T_{a}}{\partial x_{i}}c_{p}\frac{\partial N^{J}T_{b}}{\partial x_{p}}d\Omega dt
mat2=ConvectiveMatrix( test, trial, term1=del_x_all, term2=del_x,c=c, &
& projectOn="trial")
M(I,J,a,b)=InΩNITaxpcpNJTbxidΩdtM(I,J,a,b)=\int_{I_{n}}\int_{\Omega}\frac{\partial N^{I}T_{a}}{\partial x_{p}}c_{p}\frac{\partial N^{J}T_{b}}{\partial x_i}d\Omega dt
mat2=ConvectiveMatrix( test, trial, term1=del_x, &
& term2=del_x_all,c=c, projectOn="test")

You can learn more about these methods from following pages.

  • [[STConvectiveMatrix_test_41]]
  • [[STConvectiveMatrix_test_42]]

STConvectiveMatrix 5

Implementation: STCM_8

M(I,J,a,b)=InΩNITatNJTbxpcpdΩdtM(I,J,a,b)=\int_{I_{n}}\int_{\Omega}\frac{\partial N^{I}T_{a}}{\partial t}\frac{\partial N^{J}T_{b}}{\partial x_{p}}c_{p}d\Omega dt
    mat2=ConvectiveMatrix( test, trial, term1=del_t, term2=del_x, c)
!! or
mat2=ConvectiveMatrix( test, trial, term1=del_t, term2=del_y, c)
!! or
mat2=ConvectiveMatrix( test, trial, term1=del_t, term2=del_z, c)
!! or
mat2=ConvectiveMatrix( test, trial, term1=del_t, term2=del_x_all, c)
M(I,J,a,b)=InΩNITaxpcpNJTbtdΩdtM(I,J,a,b)=\int_{I_{n}}\int_{\Omega}\frac{\partial N^{I}T_{a}}{\partial x_{p}}c_{p}\frac{\partial N^{J}T_{b}}{\partial t}d\Omega dt
    mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_t, c)
!! or
mat2=ConvectiveMatrix( test, trial, term1=del_y, term2=del_t, c)
!! or
mat2=ConvectiveMatrix( test, trial, term1=del_z, term2=del_t, c)
!! or
mat2=ConvectiveMatrix( test, trial, term1=del_x_all, term2=del_t, c)
!! or

You can learn how to use these methods from following pages.

  • [[STConvectiveMatrix_test_51]]
  • [[STConvectiveMatrix_test_52]]

STConvectiveMatrix 6

Implementation: STCM_1b

M(I,J,a,b)=InΩρcjNITaxjNJTbdΩdtM\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} \rho {{c_j}\frac{{\partial {N^I}{T_a}}}{{\partial {x_j}}} \cdot {N^J}{T_b}d\Omega dt} } }
    mat2=ConvectiveMatrix( test, trial, term1=del_x_all, term2=del_none, &
& c=c, rho=rho, projectionOn='test' )
!! or
mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_none, &
& c=c, rho=rho, projectionOn='test' )
!! or
mat2=ConvectiveMatrix( test, trial, term1=del_y, term2=del_none, &
& c=c, rho=rho, projectionOn='test' )
!! or
mat2=ConvectiveMatrix( test, trial, term1=del_z, term2=del_none, &
& c=c, rho=rho, projectionOn='test' )
M(I,J,a,b)=InΩρNITacjNJTbxjdΩdtM\left(I,J,a,b\right)=\int_{I_{n}}\int_{\Omega} \rho N^{I}T_{a}c_{j}\frac{\partial N^{J}T_{b}}{\partial x_{j}}d\Omega dt
    mat2=ConvectiveMatrix( test, trial, term1=del_none, term2=del_x_all, &
& c=c, rho=rho, projectionOn='trial')
!! or
mat2=ConvectiveMatrix( test, trial, term1=del_none, term2=del_x, &
& c=c, rho=rho, projectionOn='trial')
!! or
mat2=ConvectiveMatrix( test, trial, term1=del_none, term2=del_y, &
& c=c, rho=rho, projectionOn='trial')
!! or
mat2=ConvectiveMatrix( test, trial, term1=del_none, term2=del_z, &
& c=c, rho=rho, projectionOn='trial')

You can learn more about this method from following pages

  • [[STConvectiveMatrix_test_61]]

STConvectiveMatrix 7

Implementation: STCM_6b and STCM_7b

M(I,J,a,b)=InΩρcpNITaxpNJTbxdΩdtM(I,J,a,b)=\int_{I_{n}}\int_{\Omega} \rho c_{p}\frac{\partial N^{I}T_{a}}{\partial x_{p}}\frac{\partial N^{J}T_{b}}{\partial x} d\Omega dt
    mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_x, &
& c=c, rho=rho, projectionOn='test')
M(I,J,a,b)=InΩρcpNITaxpNJTbydΩdtM(I,J,a,b)=\int_{I_{n}}\int_{\Omega} \rho c_{p}\frac{\partial N^{I}T_{a}}{\partial x_{p}}\frac{\partial N^{J}T_{b}}{\partial y}d\Omega dt
    mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_y, &
& c=c, rho=rho, projectionOn='test')
M(I,J,a,b)=InΩρcpNITaxpNJTbzdΩdtM(I,J,a,b)=\int_{I_{n}}\int_{\Omega} \rho c_{p}\frac{\partial N^{I}T_{a}}{\partial x_{p}}\frac{\partial N^{J}T_{b}}{\partial z}d\Omega dt
    mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_z, &
& c=c, rho=rho, projectionOn='test')
M(I,J,a,b)=InΩρNITaxcpNJTbxpdΩdtM(I,J,a,b)=\int_{I_{n}}\int_{\Omega} \rho \frac{\partial N^{I}T_{a}}{\partial x}c_{p}\frac{\partial N^{J}T_{b}}{\partial x_{p}}d\Omega dt
    mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_x, &
& c=c, rho=rho, projectionOn='trial')
M(I,J,a,b)=InΩρNITaycpNJTbxpdΩdtM(I,J,a,b)=\int_{I_{n}}\int_{\Omega} \rho \frac{\partial N^{I}T_{a}}{\partial y}c_{p}\frac{\partial N^{J}T_{b}}{\partial x_{p}}d\Omega dt
    mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_y, &
& c=c, rho=rho, projectionOn='trial')
M(I,J,a,b)=InΩρNITazcpNJTbxpdΩdtM(I,J,a,b)=\int_{I_{n}}\int_{\Omega} \rho \frac{\partial N^{I}T_{a}}{\partial z}c_{p}\frac{\partial N^{J}T_{b}}{\partial x_{p}}d\Omega dt
    mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_z, &
& c=c, rho=rho, projectionOn='trial')

You can learn more about this method from following pages.

  • [[STConvectiveMatrix_test_71]]
M(I,J,a,b)=InΩρNITaxicpNJTbxpdΩdtM\left(I,J,a,b\right)=\int_{I_{n}}\int_{\Omega}\rho\frac{\partial N^{I}T_{a}}{\partial x_{i}}c_{p}\frac{\partial N^{J}T_{b}}{\partial x_{p}}d\Omega dt
    mat2=ConvectiveMatrix( test, trial, term1=del_x_all, term2=del_x, &
& c=c, rho=rho, projectionOn='trial')
M(I,J,a,b)=InΩρcpNITaxpNJTbxidΩdtM\left(I,J,a,b\right)=\int_{I_{n}}\int_{\Omega}\rho c_{p}\frac{\partial N^{I}T_{a}}{\partial x_{p}}\frac{\partial N^{J}T_{b}}{\partial x_{i}}d\Omega dt
    mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_x_all, &
& c=c, rho=rho, projectionOn='test')

You can learn more about this method from following pages

  • [[STConvectiveMatrix_test_72]]

STConvectiveMatrix 8

Implementation: STCM_8b

M(I,J,a,b)=InΩρcpNITaxpNJTbtdΩdtM\left(I,J,a,b\right)=\int_{I_{n}}\int_{\Omega}\rho c_{p}\frac{\partial N^{I}T_{a}}{\partial x_{p}}\frac{\partial N^{J}T_{b}}{\partial t}d\Omega dt
    mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_t, &
& c=c, rho=rho, projectionOn='test')
!! or
mat2=ConvectiveMatrix( test, trial, term1=del_y, term2=del_t, &
& c=c, rho=rho, projectionOn='test')
!! or
mat2=ConvectiveMatrix( test, trial, term1=del_z, term2=del_t, &
& c=c, rho=rho, projectionOn='test')
!! or
mat2=ConvectiveMatrix( test, trial, term1=del_x_all, term2=del_t, &
& c=c, rho=rho, projectionOn='test')
M(I,J,a,b)=InΩρNITatcpNJTbxpdΩdtM\left(I,J,a,b\right)=\int_{I_{n}}\int_{\Omega}\rho\frac{\partial N^{I}T_{a}}{\partial t}c_{p}\frac{\partial N^{J}T_{b}}{\partial x_{p}}d\Omega dt
    mat2=ConvectiveMatrix( test, trial, term1=del_t, term2=del_x, &
& c=c, rho=rho, projectionOn='trial')
!! or
mat2=ConvectiveMatrix( test, trial, term1=del_t, term2=del_y, &
& c=c, rho=rho, projectionOn='trial')
!! or
mat2=ConvectiveMatrix( test, trial, term1=del_t, term2=del_z, &
& c=c, rho=rho, projectionOn='trial')
!! or
mat2=ConvectiveMatrix( test, trial, term1=del_t, term2=del_x_all, &
& c=c, rho=rho, projectionOn='trial')

You can learn more about this method from following pages

  • [[STConvectiveMatrix_test_81]]