Next:
0. License
Contents
Index
FLASH User's Guide
Version 3.0
February 2008 (last updated 29 February 2008)
ASC FLASH Center
University of Chicago
0
. License
0
.
1
Acknowledgments in Publication
0
.
2
Full License Agreement
Contents
1
. Introduction
1
.
1
What's New in FLASH3
1
.
2
What's New in This Release
1
.
3
Known Issues in This Release
1
.
4
About the User's Guide
I
. Getting Started
2
. Quick Start
2
.
1
System requirements
2
.
2
Unpacking and configuring FLASH for quick start
2
.
3
Running FLASH
3
. Setting Up New Problems
3
.
1
Creating a
Config
file
3
.
2
Creating a
Makefile
3
.
3
Creating a
Simulation_data.F90
3
.
4
Creating a
Simulation_init.F90
3
.
5
Creating a
Simulation_initBlock.F90
3
.
6
The runtime parameter file (
flash.par
)
II
. FLASH Software System
4
. Overview of FLASH architecture
4
.
1
Unit Architecture
4
.
1
.
1
Unit Data Modules,
_init
, and
_finalize
routines
4
.
1
.
2
Private Routines
4
.
1
.
3
FLASH Inheritance
4
.
2
Unit Test Framework
5
. The FLASH configuration script (
setup
)
5
.
1
Basic Setup Options
5
.
2
Advanced Setup Options
5
.
3
Using Shortcuts
5
.
4
Setup Variables and Preprocessing
Config
Files
5
.
5
Config
Files
5
.
5
.
1
Configuration file syntax
5
.
6
Creating a Site-specific
Makefile
5
.
7
Files Created During the setup Process
5
.
7
.
1
Informational files
5
.
7
.
2
Code generated by the
setup
call
5
.
7
.
3
Makefiles generated by
setup
6
. The
Flash.h
file
6
.
1
UNK
,
FACE(XYZ)
Dimensions
6
.
2
Property Variables, Species and Mass scalars
6
.
3
Fluxes
6
.
4
Scratch Grid Vars
6
.
5
Fluid Variables Example
6
.
6
Particle Properties
6
.
7
Other Preprocessor Symbols
III
. Driver Unit
7
. Driver Unit
7
.
1
Driver Routines
7
.
1
.
1
Driver_initFlash
7
.
1
.
2
Driver_evolveFlash
7
.
1
.
3
Driver_finalizeFlash
7
.
1
.
4
Driver accessor functions
IV
. Infrastructure Units
8
. Grid Unit
8
.
1
Overview
8
.
2
GridMain
Data Structures
8
.
3
Computational Domain
8
.
4
Boundary Conditions
8
.
4
.
1
Boundary Condition Types
8
.
4
.
2
Boundary Conditions at Obstacles
8
.
4
.
3
Implementing Boundary Conditions
8
.
5
Uniform Grid
8
.
5
.
1
FIXEDBLOCKSIZE Mode
8
.
5
.
2
NONFIXEDBLOCKSIZE mode
8
.
6
Adaptive (AMR) Grid
8
.
6
.
1
Additional Data Structures
8
.
6
.
2
Grid Interpolation
8
.
6
.
3
Refinement
8
.
6
.
4
Nonpermanent Guard Cells
8
.
7
GridMain Usage
8
.
8
GridParticles
8
.
8
.
1
GridParticlesMove
8
.
8
.
2
MoveSieve AMR Implementation
8
.
8
.
3
MoveTree AMR Implementation
8
.
8
.
4
GridMapParticlesToMesh
8
.
9
Grid Solvers module
8
.
9
.
1
Pfft
8
.
9
.
2
Poisson equation
8
.
9
.
3
Using the Poisson solvers
8
.
10
Grid Geometry
8
.
10
.
1
Understanding Curvilinear
8
.
10
.
2
Choosing a Geometry
8
.
10
.
3
Geometry Information in Code
8
.
10
.
4
Available Geometries
8
.
10
.
5
Conservative Prolongation/Restriction on Non-Cartesian Grids
8
.
11
Unit Test
9
. IO Unit
9
.
1
IO Implementations
9
.
2
Output Files
9
.
2
.
1
Checkpoint files - Restarting a Simulation
9
.
2
.
2
Plotfiles
9
.
2
.
3
Particle files
9
.
2
.
4
Integrated Grid Quantities - flash.dat
9
.
2
.
5
General Runtime Parameters
9
.
3
Restarts and Runtime Parameters
9
.
4
Output Scalars
9
.
5
Output User-defined Arrays
9
.
6
Output Grid Variables
9
.
7
Face-Centered Data
9
.
8
Output Filenames
9
.
9
Output Formats
9
.
9
.
1
HDF5
9
.
9
.
2
Output Side Effects
9
.
9
.
3
Parallel-NetCDF
9
.
9
.
4
Direct IO
9
.
10
Working with Output Files
9
.
11
Unit Test
10
. Runtime Parameters Unit
10
.
1
Defining Runtime Parameters
10
.
2
Identifying Valid Runtime Parameters
10
.
3
Routine Descriptions
10
.
4
Example Usage
11
. Multispecies Unit
11
.
1
Defining Species
11
.
2
Initializing Species Information in
Simulation_initSpecies
11
.
3
Routine Descriptions
11
.
4
Example Usage
11
.
5
Unit Test
12
. Physical Constants Unit
12
.
1
Available Constants and Units
12
.
2
Applicable Runtime Parameters
12
.
3
Routine Descriptions
12
.
4
Unit Test
V
. Physics Units
13
. Hydrodynamics Units
13
.
1
Usage
13
.
2
The piecewise-parabolic method (PPM)
13
.
3
The Relativistic Hydrodynamics (RHD)
13
.
3
.
1
Overview
13
.
3
.
2
Equations
13
.
3
.
3
Relativistic Equation of State
13
.
3
.
4
Additional Runtime Parameter
14
. MHD Unit
14
.
1
Description
14
.
2
Usage
14
.
3
Algorithm: the Eight-wave Solver
14
.
4
Algorithm: the Unsplit Staggered Mesh Solver
14
.
5
Non-ideal MHD
15
. Equations of State Unit
15
.
1
Introduction
15
.
2
Gamma Law and Multigamma
15
.
2
.
1
Ideal Gamma Law for Relativistic Hydrodynamics
15
.
3
Helmholtz
15
.
4
Usage
15
.
4
.
1
Initialization
15
.
4
.
2
Runtime Parameters
15
.
4
.
3
Direct and Wrapped Calls
15
.
5
Unit Test
16
. Local Source Terms
16
.
1
Burn Unit
16
.
1
.
1
Algorithms
16
.
1
.
2
Reaction networks
16
.
1
.
3
Detecting shocks
16
.
1
.
4
Energy generation rates and reaction rates
16
.
1
.
5
Temperature-based timestep limiting
16
.
2
Stir Unit
17
. Gravity Unit
17
.
1
Introduction
17
.
2
Externally Applied Fields
17
.
2
.
1
Constant Gravitational Field
17
.
2
.
2
Plane-parallel Gravitational field
17
.
2
.
3
Gravitational Field of a Point Mass
17
.
3
Self-gravity
17
.
3
.
1
Coupling Gravity with Hydrodynamics
17
.
4
Usage
17
.
5
Unit Tests
18
. Particles Unit
18
.
1
Time Integration
18
.
1
.
1
Active Particles
18
.
1
.
2
Passive Particles
18
.
2
Mesh/Particle Mapping
18
.
2
.
1
Quadratic Mesh Mapping
18
.
2
.
2
Cloud in Cell Mapping
18
.
3
Using the Particles Unit
18
.
3
.
1
Particles Runtime Parameters
18
.
3
.
2
Particle Attributes
18
.
3
.
3
Particle I/O
18
.
3
.
4
Unit Tests
19
. Cosmology Unit
19
.
1
Algorithms and equations
19
.
2
Using the cosmology unit
19
.
3
Unit Test
20
. Material Properties Units
20
.
1
Thermal Conductivity
20
.
2
Magnetic Resistivity and Viscosity
20
.
2
.
1
Constant resistivity
20
.
3
Viscosity
20
.
4
Mass Diffusivity
VI
. Monitor Units
21
. Logfile Unit
21
.
1
Meta Data
21
.
2
Runtime Parameters, Physical Constants, and Multispecies Data
21
.
3
Accessor Functions and Timestep Data
21
.
4
Performance Data
21
.
5
Example Usage
22
. Timer and Profiler Units
22
.
1
Timers
22
.
2
Profiler
VII
. Simulation Units
23
. The Supplied Test Problems
23
.
1
Hydrodynamics Test Problems
23
.
1
.
1
Sod Shock-Tube
23
.
1
.
2
Variants of the Sod Problem in Curvilinear Geometries
23
.
1
.
3
Interacting Blast-Wave
Blast2
23
.
1
.
4
Sedov Explosion
23
.
1
.
5
Isentropic Vortex
23
.
1
.
6
Wind Tunnel With a Step
23
.
1
.
7
Driven Turbulence
StirTurb
23
.
1
.
8
Relativistic Sod Shock-Tube
23
.
1
.
9
Relativistic Two-dimensional Riemann
23
.
2
Magnetohydrodynamics Test Problems
23
.
2
.
1
Brio-Wu MHD Shock Tube
23
.
2
.
2
Orszag-Tang MHD Vortex
23
.
2
.
3
MHD Rotor
23
.
2
.
4
MHD Current Sheet
23
.
3
Gravity Test Problems
23
.
3
.
1
Jeans Instability
23
.
3
.
2
Homologous Dust Collapse
23
.
3
.
3
Huang-Greengard Poisson Test
23
.
3
.
4
MacLaurin
23
.
4
Particles Test Problems
23
.
4
.
1
Two-particle
Orbit
23
.
4
.
2
Zel'dovich Pancake
23
.
4
.
3
Modified Huang-Greengard Poisson Test
23
.
5
Burn Test Problem
23
.
5
.
1
Cellular Nuclear Burning
VIII
. Tools
24
. Serial FLASH Output Comparison Utility (
sfocu
)
24
.
1
Building
sfocu
24
.
2
Using
sfocu
25
. FLASH IDL Routines (
fidlr3.0
)
25
.
1
Installing and Running
fidlr3.0
25
.
1
.
1
Setting Up
fidlr3.0
Environment Variables
25
.
1
.
2
Running IDL
25
.
2
xflash3
: A Widget Interface to Plotting FLASH Datasets
25
.
2
.
1
File Menu
25
.
2
.
2
Defaults Menu
25
.
2
.
3
Colormap Menu
25
.
2
.
4
X/Y plot count Menu
25
.
2
.
5
Plotting options available from the GUI
25
.
2
.
6
Plotting buttons
25
.
3
Comparing two datasets
References
Index
About this document ...
Generic Flash Docs User 2008-02-29