Derive Brinkman force variable defined as a source term with TRT operator. It evaluates spacetime function defined in lua file for Brinkman coefficient variable and multiplies it with negative velocity to obtain the force term. This force term is then converted to state value which is to be added to the state with respect to TRT operator. Reference: 1) Zhaoli Guo and T. S. Zhao. “Lattice Boltzmann Model for Incompressible Flows through Porous Media”. In: Physical Review E 66.3 (2002), p. 036304. doi: 10.1103/PhysRevE.66.036304. 2) Irina Ginzburg. “Consistent lattice Boltzmann schemes for the Brinkman model of porous flow and infinite Chapman-Enskog expansion”. In: Phys. Rev. E 77 (6 June 2008), p. 066704. doi: 10.1103/PhysRevE.77.066704.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(tem_varSys_op_type), | intent(in) | :: | fun |
Description of the method to obtain the variables, here some preset values might be stored, like the space time function to use or the required variables. |
||
| type(tem_varSys_type), | intent(in) | :: | varSys |
The variable system to obtain the variable from. |
||
| integer, | intent(in) | :: | elempos(:) |
Position of the TreeID of the element to get the variable for in the global treeID list. |
||
| type(tem_time_type), | intent(in) | :: | time |
Point in time at which to evaluate the variable. |
||
| type(treelmesh_type), | intent(in) | :: | tree |
global treelm mesh info |
||
| integer, | intent(in) | :: | nElems |
Number of values to obtain for this variable (vectorized access). |
||
| integer, | intent(in) | :: | nDofs |
Number of degrees of freedom within an element. |
||
| real(kind=rk), | intent(out) | :: | res(:) |
Resulting values for the requested variable. Linearized array dimension: (n requested entries) x (nComponents of this variable) x (nDegrees of freedom) Access: (iElem-1)fun%nComponentsnDofs + (iDof-1)*fun%nComponents + iComp |