Encyclopaedia Index
Open-source Fortran files
A large proportion of the Fortran coding of PHOENICS is open to viewing
by all users.
Those who have access to the programmable (ie re-compilable) version, are
also free (at their own risk!) to modify it.
Access is here organised under the headings of:
- core coding,
- coding associated with the twelve options, and
- special-purpose-program coding.
a. PHOENICS-core coding concerned with
- General organization of the calculations
- Material properties
- Turbulence
- Sources, other than of turbulence energy
- Creation of shapes
- Use of special source or boundary-condition patches
- User-created solvers, and other interventions in the
equation-forming and solving process
- Arrangements for output
- Utilities
b.The 12 options, in alphabetical order
-
Advanced multi-phase flow (algebraic-slip; free-surface flows)
-
Advanced chemistry
-
Advanced numerical algorithms
-
Advanced radiation
-
Advanced turbulence models
-
Body-fitted coordinates
-
GENTRA (particle tracking)
-
(Inter-spersed) two-phase flows
-
Multi-block and fine-grid embedding
-
PLANT, the automatic Fortran-code creator
-
Simultaneous solid-stress analysis
c. Special-purpose programs
- HOTBOX
- FLAIR
- ESTER
- CVD
The open-source Fortran files of the PHOENICS core concerned with:
- General organization of the calculations are
- GROUND, the "frame-work" subroutine,
into which users can introduce their own coding, either
directly or by way of
PLANT
- GREX3
an exemplary GROUND, which activates many of the sub-routines in the
following files.
- Material properties, in the order in which they
are referred to in the PROPS file
- Density
- Viscosity
- gxspehe for the
specific heat capacity, and
gxtempr for the related
coding which deduces the temperature when this is not a
directly-solved-for variable
- gxprndtl
for the (laminar) prandtl number or thermal conductivity
- gxthrmx
for the thermal-expansion coefficient
- gxdrdp for
compressibility
and also:
- gxprutil for
associated utility subroutines.
- Turbulence
- gxknvst for
turbulent (effective) kinematic viscosity
- gxmxlen for
length scale of turbulence
- gxturb
for turbulence-energy generation
- gxgenk
for further subroutines use in the calculation of energy generation
- gxwall
for turbulent "wall functions"
- Sources, other than those of turbulence energy
- gxbuoyso for
sources of momentum induced by buoyancy
- gxrotaso for
sources of momentum induced by rotation of coordinates
- gxchemso for
sources of chemical species resulting from reaction
- gxradiat for
sources associated with radiation
- gxmiscso for
miscellaneous sources
- gxblin for
sources associated with the
WIND_PROFILE object
- gxio for
sources associated with
ANGLED_IN and
ANGLED_OUT objects
- gxfire for
sources associated with the
FIRE object
- gxswfan for
sources associated with the
FAN object in 'swirl' mode
- Creation of shapes
- gxshap for
simple algebraically-defined shapes
- gxmask for
shapes created by way of masks
- gxmovpor for
varying or moving porosities
- gxpiston for
a grid which expands and contracts in piston-cylinder manner
- Use of special source or boundary-condition patches
- gxtimpat for
conditions which vary with time
- gxnepat for
neighbour-cell patches
- gxfuldev for
fully-developed flows
- gxprofil for
introducing specific boundary-condition profiles
- User-created solvers
- gxgauss for
a Gauss-Seidel solver
- gxconvec for
modifications to the convection terms for compressible flows
- gxsettim for
re-setting the time step in a fast transient
- Arrangements for output
- gxpara for
providing photon-displayable files in parabolic runs
- gxarrtim for
computing flame (or other) arrival times
- gxusteer for
enabling intervention in EARTH execution by way of USTEER=T
- gxpotflo for
for computing velocity components in potential-flow calculations
- Utilities
- gxutil for
miscellaneous utilities