Tuesday 20 September 2011

Approximate Error Spline (AES) Method for Grid Convergence Error Estimate

Many times it is difficult to determine if your simulation is grid independent. This is especially the case if your are seeing oscillatory convergence. The AES method has been found to provide better estimates of the grid convergence error than the usual Richardson Extrapolation technique. This method was developed by Celik et. al. The papers that were used to develop the excel program are:

Celik, I., & Li, J. (n.d.). Assesment of Numerical Uncertainty for the Calculations of Turbulent Flow over a Backward-Facing Step. Int. J. Numer. Meth. Fluids, 49, 1015–1031.

Celik, I., Li, J., Hu, G., & Shaffer, C. (n.d.). Limitations of Richardson Extrapolation and Some Possible Remedies. J. Fluids Eng., 127, 795–805.

The excel program developed by Vivid Numerics Inc. is available for download here:

AES method.xls

The method requires that the user enter the volume of the simulation domain at each grid level (Should be the same), the number of cells at each grid, the number of spatial dimensions (usually 2 or 3) and finally the flow or stress parameter that the user is interested in. This may be velocity, pressure, von Mises stress, a principal stress, a displacement, etc. The program then provides an estimate of the error for each grid result and an estimated true value. As with any program this one should be used with care and not followed blindly. Problems in the mesh (sliver cells, inverted cells) or in the setup may produce spurious results with this program.


Disclaimer
The information presented in this entry is for information only. Any use of this information is at the readers/users own risk. Vivid Numerics Inc. and its owners and employees assume no responsibility if this information is implemented and the results are used for any critical or non-critical studies or analyses.

Adding Thermal Boundary Conditions in a Structural Analysis in ANSYS

Thermal boundary conditions are sometime needed in a ANSYS structural analysis. An example of a time when this is required is when an FSI analysis is being setup using ANSYS and CFX where stresses in the structural components due to applied loads and thermal loads are important. The following command snippet can be put into a ANSYS structural analysis to apply thermal loads (assuming that the element types have been modified to accept a temperature degree of freedom).

In each command snippet everything should be left untouched with the exception of  text in between <>. For example <reference Temp> should be replaced with 293 to set the reference temperature in the boundary conditions. The < and > should be removed when a variable, named selection, or value is entered.

All text that comes after ! is commented out. Therefore only commands after /SOLU are implemented in ansys. The rest before that is for documentation and information.

Temperature Boundary Condition

!   Commands inserted into this file will be executed just prior to the Ansys SOLVE command.
!   These commands may supersede command settings set by Workbench.

!   Active UNIT system in Workbench when this object was created:  Metric (m, kg, N, s, V, A)

!   Specifies a temperature boundary condition for a transient run in a Ansys structural sim.
!   Format is:
!   TREF, <reference Temp>
!   cmsel, s, <named selection to apply convection BC to>
!   d, all, CONV, <Temp>
!   allsel
!   trnopt, full

/SOLU
TREF, <reference temperature>
cmsel, s, <named sel>
d, all, TEMP, <Temp>
allsel
trnopt, full

Convection Boundary Condition

!   Commands inserted into this file will be executed just prior to the Ansys SOLVE command.
!   These commands may supersede command settings set by Workbench.

!   Active UNIT system in Workbench when this object was created:  Metric (m, kg, N, s, V, A)

!   Specifies a convection boundary condition for a transient run in a Ansys structural sim.
!   Format is:
!   TREF, <reference Temp>
!   cmsel, s, <named selection to apply convection BC to>
!   sf, all, CONV, <heat transfer coefficient>, <Bulk temp>
!   allsel
!   trnopt, full

/SOLU
TREF, <reference Temp>
cmsel, s, <named sel>
sf, all, CONV, <heat transfer coefficient>, <Bulk temp>
allsel
trnopt, full