Next Generation Fire Engineering
ScaRC is ready for use in FDS
Alternative solver for the FDS pressure equation
- Dr. Susanne Kilian
hhpberlin - Ingenieure für Brandschutz 10245 Berlin
ScaRC is ready for use in FDS Alternative solver for the FDS pressure - - PowerPoint PPT Presentation
ScaRC is ready for use in FDS Alternative solver for the FDS pressure equation Dr. Susanne Kilian hhpberlin - Ingenieure fr Brandschutz 10245 Berlin Next Generation Fire Engineering 1 Agenda 4 2 3 1 Poisson solver ScaRC UGLMAT FFT
Next Generation Fire Engineering
hhpberlin - Ingenieure für Brandschutz 10245 Berlin
Next Generation Fire Engineering
Poisson solver
Pressure equation
FFT solver
UGLMAT solver
ScaRC solver
Next Generation Fire Engineering
Numerical fire simulations
Next Generation Fire Engineering
Pressure equation
Source terms of previous time step. e.g. radiation, combustion pyrolysis, …
Strongly coupled with velocity field, to be solved at least twice per time step
Next Generation Fire Engineering
5-point stencil in 2D
7-point stencil in 3D
Discretization of Pressure equation
Pressure equation
cell-centered
Next Generation Fire Engineering
Discretization of Pressure equation
Pressure equation
Presecribed inflow Open
Pressure Device
Simple example to explain the concepts
Next Generation Fire Engineering
1 global matrix, 1 global right hand side vector
Discretization of Pressure equation
Pressure equation
Global discretization
Next Generation Fire Engineering
1 global matrix, 1 global right hand side vector
Global discretization Set of local discretizations Discretization of Pressure equation
Pressure equation
M local matrices, M local right hand side vectors
Next Generation Fire Engineering
1 global matrix, 1 global right hand side vector
Global discretization Set of local discretizations Discretization of Pressure equation
Pressure equation
M local matrices, M local right hand side vectors
Next Generation Fire Engineering
Pressure equation There are different possibilities to discretize …
Mesh 1 Mesh 2 Mesh 3 Mesh 4
Next Generation Fire Engineering
Pressure equation
Mesh 1 Mesh 2 Mesh 3 Mesh 4
… at cells inside and around a solid obstruction
Next Generation Fire Engineering
Pressure equation
Regular matrix stencils
Cells inside obstructions are included Mesh 1
Structured
8x8 cells
Next Generation Fire Engineering
Pressure equation
8x8 cells
Cells inside obstructions are included
Regular matrix stencils
Structured
Irregular matrix stencils
Unstructured
Cells inside obstructions are excluded Mesh 1 Mesh 1
Next Generation Fire Engineering
Pressure equation
Sparse 64 x 64 -matrix 288 non-zeros Sparse 60 x 60 -matrix 260 non-zeros
Need of more robust solvers (slower!) Highly optimized solvers usable (fast!) Highly regular Poisson matrix
Irregular Poisson matrix
Structured Unstructured
Mesh 1 Mesh 1
Cell number Cell number
8x8 cells Sparsity patterns
Next Generation Fire Engineering
Pressure equation
Sparse 64 x 64 -matrix 288 non-zeros Sparse 60 x 60 -matrix 260 non-zeros
Need of more robust solvers (slower!) Highly optimized solvers usable (fast!)
Structured Unstructured
Different from rest
Highly regular Poisson matrix
Irregular Poisson matrix
8x8 cells Sparsity patterns Mesh 1 Mesh 1
Cell number Cell number
Next Generation Fire Engineering
Next Generation Fire Engineering
FFT solver
Local structured discretizations to solve the local Poisson problems by FFT’s
local FFT local FFT local FFT local FFT
Use of optimized CRAYFISHPAK, extremely fast and robust
Next Generation Fire Engineering
local FFT local FFT local FFT local FFT
Exact values not known,
Artifical boundaries
Mathematical solvability requires internal boundary conditions for local FFTs …
FFT solver
Next Generation Fire Engineering
… average of neighboring cells from previous time step is used
local FFT local FFT local FFT local FFT
Local communication required per FDS time step
FFT solver
local communication
Next Generation Fire Engineering
Question: How accurate is the velocity field at mesh interfaces?
FFT solver No global discretization,
Mesh 1 Mesh 2 Mesh 3 Mesh 4
Next Generation Fire Engineering
Local velocity components may be different along mesh interfaces
FFT solver
Mesh 3 Mesh 2
Mesh 1 Mesh 2 Mesh 3 Mesh 4
Next Generation Fire Engineering
Question: How accurate is the velocity field along inner obstructions?
FFT solver
Mesh 1 Mesh 2 Mesh 3 Mesh 4
Structured grids only, internal boundary conditions cannot be specified
Next Generation Fire Engineering
Velocity components may penetrate into the inner obstructions
FFT solver
Mesh 1
Mesh 1 Mesh 2 Mesh 3 Mesh 4
Next Generation Fire Engineering
local FFT local FFT local FFT local FFT
FFT solver
Next Generation Fire Engineering
FFT solver
local FFT local FFT local FFT local FFT
Pressure Iteration
error < VELOCITY_TOLERANCE ? ite < MAX_PRESSURE_ITERATIONS ?
Remedy: Use additional corrective iteration
local communication
Repeat local FFT’s until errors are corrected
Next Generation Fire Engineering
Start iteration: Initial velocity errors
Mesh 3 Mesh 2
FFT solver
Mesh 1
Mesh 1 Mesh 2 Mesh 3 Mesh 4
Next Generation Fire Engineering
Intermediate iteration: Velocity errors are reduced more and more
FFT solver
Mesh 1
Mesh 1 Mesh 2 Mesh 3 Mesh 4
Mesh 3 Mesh 2
Next Generation Fire Engineering
End of iteration: Velocity errors are below specified tolerance
FFT solver
Mesh 1
Mesh 1 Mesh 2 Mesh 3 Mesh 4
Mesh 3 Mesh 2
Next Generation Fire Engineering
Pressure Iteration
FFT solver
local communication
local FFT local FFT local FFT local FFT
error < VELOCITY_TOLERANCE ? ite < MAX_PRESSURE_ITERATIONS ?
Next Generation Fire Engineering
FFT solver
local FFT local FFT local FFT local FFT
Pressure Iteration
error < VELOCITY_TOLERANCE ? ite < MAX_PRESSURE_ITERATIONS ?
Usually very fast convergence
local communication
Convergence speed?
Next Generation Fire Engineering
Question: How quickly does new local information spread?
FFT solver
new inflow
No global discretization,
Next Generation Fire Engineering
FFT solver
Mesh 1 Mesh 2 Mesh 3 Mesh 4
No global data transfer,
Next Generation Fire Engineering
FFT solver
Mesh 1 Mesh 2 Mesh 3 Mesh 4
Information can only be transferred mesh-by-mesh …
local communication
Next Generation Fire Engineering
FFT solver … successively using next-neighbor communications
Mesh 1 Mesh 2 Mesh 3 Mesh 4
local communication
Next Generation Fire Engineering
FFT solver
Mesh 1 Mesh 2 Mesh 3 Mesh 4
Time delay compared to 1-mesh, especially for large mesh counts
local communication
Next Generation Fire Engineering
FFT solver
local FFT local FFT local FFT local FFT
Pressure Iteration
error < VELOCITY_TOLERANCE ? ite < MAX_PRESSURE_ITERATIONS ?
For large mesh counts or very transient cases slow convergence and large overhead
local communication
Possible troubles
Next Generation Fire Engineering
Next Generation Fire Engineering
UGLMAT solver Parallel LU-decomposition
matrices and
Next Generation Fire Engineering
UGLMAT solver Parallel LU-decomposition
matrices and
Next Generation Fire Engineering
Huge memory requirements as grid is refined
has much more non-zero entries than due to ‚fill-in’
~1,9 Billions ~ 8 Millions
UGLMAT solver
Next Generation Fire Engineering
Next Generation Fire Engineering
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC solver
Global basic iteration
Global structured discretization Data-parallel iterative method for global Poisson matrix
Next Generation Fire Engineering
Erfahrungen
Erfahrungen
Ausblick
Local basic iteration Local basic iteration Local basic iteration Local basic iteration
Not used as stand-alone solvers, but only as corrections to global solution
Global basic iteration
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC solver
Next Generation Fire Engineering
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC
Local basic iteration Local basic iteration Local basic iteration Local basic iteration
local communication global communication
Local solvers offer fine grid accuracy Basic information transfer is provided globally
Global basic iteration
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC solver
Next Generation Fire Engineering
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC
Global basic iteration Local basic iteration Local basic iteration Local basic iteration Local basic iteration
local communication global communication
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC solver
Next Generation Fire Engineering
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC Use of different discretization techniques
Use of different global solvers
Use of different local solvers
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC solver
Next Generation Fire Engineering
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC
Local FFT Local FFT Local FFT Local FFT Pressure Iteration
error < VELOCITY_TOLERANCE ? ite < MAX_PRESSURE_ITERATIONS ?
Fix errors at inner obstructions Optimize globally (CG) Optimize locally (FFT)
local communication global communication
Global data-parallel Conjugate Gradient method
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC solver
Next Generation Fire Engineering
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC
local communication global communication
Global CG-Method Local FFT Local FFT Local FFT Local FFT Pressure Iteration
error < VELOCITY_TOLERANCE ? ite < MAX_PRESSURE_ITERATIONS ?
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC solver
Next Generation Fire Engineering
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC
Pressure Iteration
error < VELOCITY_TOLERANCE ? ite < MAX_PRESSURE_ITERATIONS ?
local communication global communication
Global data-parallel Multigrid method
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC solver Fix errors at inner obstructions Improve global coupling (MG)
Next Generation Fire Engineering
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC
Local LU Local LU Local LU Local LU
No need for pressure iteration Optimize globally (CG) Optimize locally (LU)
local communication global communication
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC solver
Global data-parallel Conjugate Gradient method
Next Generation Fire Engineering
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC
local communication global communication
Global CG-Method Local LU Local LU Local LU Local LU
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC solver
Next Generation Fire Engineering
Still to do/to improve
Verification & Validation
Erfahrungen
Erfahrungen
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC solver
Next Generation Fire Engineering
0.1 0.2 0.3 0.4 0.5
1 2 3 0.1 0.2 0.3 0.4 0.5 20 40 60 80 100
Number of required pressure iterations
Increased number of pressure iterations (Ø 28) Only accurate for tight pressure iteration
FFT default and tight (tol=10-5 m/s)
Pressure device
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC solver
Next Generation Fire Engineering
0.1 0.2 0.3 0.4 0.5
1 2 3 0.1 0.2 0.3 0.4 0.5 2 4 6 8 10
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC
Less pressure iterations: 1 (default), max 9 (tight) Accurate for all variants
Different variants of ScaRC and UGLMAT
Number of required pressure iterations
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC solver
Pressure device
Next Generation Fire Engineering
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC
0,5 m/s
dancing_eddies
10 Meshes 4 Meshes
Pressure Device Obstruction plate
0,5 m/s
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC solver
Next Generation Fire Engineering
Erfahrungen
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC
0.5 1 1.5 2
0.1 0.2 0.5 1 1.5 2
0.1 0.2
Accurate only for tight tolerance, but increased number of pressure iterations (Ø 28)
FFT default and tight (tol=10-5 m/s) ScaRC default and tight (tol=10-5 m/s)
Accurate already for default tolerance, max 4 pressure iterations for tight tolerance
Pressure Device
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC solver
Next Generation Fire Engineering
Erfahrungen
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC Many internal obstructions which cause frequent changes of flow direction
inflow with VOLUME_FLOW = 1
duct_flow
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC solver
8 Meshes
Next Generation Fire Engineering
Erfahrungen
Erfahrungen
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC
FFT and ScaRC (tol=10-3 m/s) UGLMAT, UScaRC
Structured Unstructured
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC solver
Next Generation Fire Engineering
Erfahrungen
Erfahrungen
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC
shunn3 NS_Analytical_Solution
ScaRC 16 meshes Preserves periodic behavior
u
mixture fraction
Z
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC solver
Next Generation Fire Engineering
hhpberlin Ingenieure für Brandschutz GmbH Hauptsitz Rotherstraße 19 · 10245 Berlin Amtsgericht Berlin-Charlottenburg Register-Nr.: HRB 78 927 Ust-ID Nr.: DE217656065 Geschäftsführung: Dipl.-Ing. Karsten Foth Dipl.-Inf. BW [VWA] Stefan Truthän Beirat: Dipl.-Ing. Margot Ehrlicher
Dr.-Ing. Karl-Heinz Schubert
Next Generation Fire Engineering
Erfahrungen
Erfahrungen
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC solver
Discretization Solver Pressure iteration Structured FFT Internal obstructions & Mesh interfaces ScaRC Internal obstructions Unstructured UScaRC
Next Generation Fire Engineering
0.5 1 1.5 2
0.1 0.2 0.5 1 1.5 2 20 40 60 80 100
Erfahrungen
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC
Pressure trace in upper device
Number of required pressure iterations
Pressure iteration causes additional effort Only accurate for tight pressure iteration
Pressure Device
Erfahrungen
Erfahrungen
Ausblick
Erfahrungen
ScaRC solver