`block face apply`

command

Syntax

- block face apply keyword <history s > <range>
Primary keywords:

convection flux point-load point-load-x point-load-y point-load-z stress-principal stress stress-xx stress-xy stress-xz stress-yy stress-yz stress-zz westergaard

Apply a condition at block faces within the range.

- convection f1 f2 <[blockfaceapplyblock]>
f1 is the temperature, \(T_e\), of the medium at which convection occurs. f2 is the convective heat-transfer coefficient, \(h\) (e.g., in \(W⁄m^{2}\)º C). A convective boundary condition is applied over the range of faces specified. The history keyword is not active for convection.

- flux f <[blockfaceapplyblock]>
f is the initial thermal flux (e.g., in \(W⁄m^2\)). A flux is applied over the range of faces specified. This command is used to specify a constant flux into (f > 0) or out of (f < 0) a thermal boundary of the grid. Decay of the flux can be represented by a FISH history using the optional keyword history. For example, the following FISH function performs an exponential decay of the applied flux:

[theini = 0.0] [deconst = -1.0] fish def decay decay=math.exp(deconst*(thermal.age-thini)) end block face apply flux=10 hist fish @decay

- point-load v1 location v2 <[blockfaceapplyblock]>
Apply a point load of \(v1\) at location \(v2\) (deformable blocks only). Gridpoint forces are calculated by interpolating from the input location.

- point-load-x f location v <[blockfaceapplyblock]>
Apply a point load of \(f\) in the x direction at location \(v2\) (deformable blocks only). Gridpoint forces are calculated by interpolating from the input location.

- point-load-y f location v <[blockfaceapplyblock]>
Apply a point load of \(f\) in the y direction at location \(v2\) (deformable blocks only). Gridpoint forces are calculated by interpolating from the input location.

- point-load-z f location v <[blockfaceapplyblock]>
Apply a point load of \(f\) in the z direction at location \(v2\) (deformable blocks only). Gridpoint forces are calculated by interpolating from the input location.

- stress-principal keyword ... <[blockfaceapplyblock]>
Apply stress on block faces within the range.

- direction-intermediate v
Set intermediate principal stress direction.

- direction-maximum v
Set maximum principal stress direction.

- direction-minimum v
Set minimum principal stress direction.

- intermediate f
Set intermediate principal stress.

- maximum f
Set maximum principal stress.

- minimum f
Set minimum principal stress.

- dip-maximum f
Set maximum principal stress dip.

- dip-direction-maximum f
Set maximum principal stress dip direction.

- dip-intermediate f
Set intermediate principal stress dip.

- dip-direction-intermediate f
Set intermediate principal stress dip direction.

- dip-minimum f
Set minimum principal stress dip.

- dip-direction-minimum f
Set minimum principal stress dip direction.

- gradient-z
Set the stress gradient in the z direction. Only the z gradient direction may be specified. The other directions are scaled appropriately to prevent stress rotation.

- origin v
Specify the location of the stress measurement.

- stress fsxx0 fsyy0 fszz0 fsxy0 fsxz0 fsyz0 <keyword> <[blockfaceapplyblock]>
Set boundary stress parameters: \(xx\)-stress, \(yy\)-stress, \(zz\)-stress \(xy\)-stress, \(xz\)-stress, \(yz\)-stress. If a gradient is given, these stresses are assumed to be applied at 0,0,0

A range phrase must be specified for the \(block face apply stress\) command.

Note

All loads and stresses are assumed to be constant and permanent by default, and are

*added*to the existing permanent loads. Transient (time-varying) loading is applied if a \(fish\) or \(table\) keyword is given on the*same*command line as the load or stress (see below).- gradient-z fsxxz fsyyz fszzz fsxyz fsxzz fsyzz
Specify the stress gradients in the z direction.

If gradients are specified, boundary stresses vary linearly, where sxx0, etc. are stresses at origin (0,0,0), defined by the stress keyword, and where:

\(sxx =sxxo + (sxxx∗x) + (sxxy∗y) + (sxxz∗z)\) \(syy =syyo + (syyx∗x) + (syyy∗y) + (syyz∗z)\) \(szz =szzo + (szzx∗x) + (szzy∗y) + (szzz∗z)\) \(sxy =sxyo + (sxyx∗x) + (sxyy∗y) + (sxyz∗z)\) \(sxz =sxzo + (sxzx∗x) + (sxzy∗y) + (sxzz∗z)\) \(syz =syzo + (syzx∗x) + (syzy∗y) + (syzz∗z)\)

The gradient-x, gradient-y, and gradient-z keywords must follow the

`block face stress`

command on the same input line. (Use … at the end of the line if a continuation line is required.)Note, the assigned stresses always act at the origin (0,0,0). Example:

block face apply stress -5,0,0,0,0,0 & grad-z 5,0,0,0,0,0 & range pos-z -1 1 ; This command applies a gradient to the xx-stress varying from −10 ; at z = −1 to zero at z = 1.

- stress-xx f <gradient v > <[blockfaceapplyblock]>
Set boundary stress in the \(xx\)-direction. The optional \(gradient\) keyword can be used to specify the change in xx stress in the x, y and z directions. If a gradient is given, the stress value \(f\) is assumed to be applied at 0,0,0.

- stress-xy f <gradient v > <[blockfaceapplyblock]>
Set boundary stress in the \(xy\)-direction. The optional \(gradient\) keyword can be used to specify the change in xy stress in the x, y and z directions. If a gradient is given, the stress value \(f\) is assumed to be applied at 0,0,0.

- stress-xz f <gradient v > <[blockfaceapplyblock]>
Set boundary stress in the \(xz\)-direction. The optional \(gradient\) keyword can be used to specify the change in xz stress in the x, y and z directions. If a gradient is given, the stress value \(f\) is assumed to be applied at 0,0,0.

- stress-yy f <gradient v > <[blockfaceapplyblock]>
Set boundary stress in the \(yy\)-direction. The optional \(gradient\) keyword can be used to specify the change in yy stress in the x, y and z directions. If a gradient is given, the stress value \(f\) is assumed to be applied at 0,0,0.

- stress-yz f <gradient v > <[blockfaceapplyblock]>
Set boundary stress in the \(yz\)-direction. The optional \(gradient\) keyword can be used to specify the change in xx stress in the x, y and z directions. If a gradient is given, the stress value \(f\) is assumed to be applied at 0,0,0.

- stress-zz f <gradient v > <[blockfaceapplyblock]>
Set boundary stress in the \(zz\)-direction. The optional \(gradient\) keyword can be used to specify the change in xx stress in the x, y and z directions. If a gradient is given, the stress value \(f\) is assumed to be applied at 0,0,0.

- westergaard keyword ... <[blockfaceapplyblock]>
Add additional dynamic masses to gridpoints on the face of blocks to simulate the effects of an adjacent mass of water. This procedure was established by Westergaard (1933).

- density-water f
Set density of the water.

- depth f
Set average depth of water in the reservoir (constant added mass). Not used if water surface is specified.

- direction f
Set gravitational vector (if different from static gravity definition).

- project i
The full solution involves a 3 × 3 matrix for each gridpoint. In 3DEC, the matrix is diagonalized. By default, each row is added into the diagonal. This keyword (proj = 1) provides a better solution by calculating the diagonal based on the surface normal.

- remove
Remove any previously defined added masses.

- surface v
Set water surface location if depth is to be calculated.

- mass-x
Add mass in the \(x\)-direction only.

- mass-y
Add mass in the \(y\)-direction only.

- mass-z
Add mass in the \(z\)-direction only.

`block face apply`

Keyword Block

The keywords below are applicable to each of the following keywords of the `block face apply`

command:

Was this helpful? ... | 3DEC © 2019, Itasca | Updated: Oct 08, 2020 |