Presentation is loading. Please wait.

Presentation is loading. Please wait.

Thermal Radiation Solver

Similar presentations


Presentation on theme: "Thermal Radiation Solver"— Presentation transcript:

1 Thermal Radiation Solver
PDT Thermal Radiation Transport Package Marvin L. Adams, Wm. Daryl Hawkins, Ryan G. McClarren, Jim E. Morel Dept. of Nuclear Engineering, Texas A&M University PDT Introduction Solves the time-dependent linear Boltzmann and thermal radiation equations 3D (XYZ) or 2D (XY) Multigroup in energy Discrete ordinates (quadrature set can vary by energy group) Finite-volume and finite-element methods on arbitrary polyhedral/polygonal cells Various time discretization methods (Fully Implicit, Crank-Nicolson, Trapezoidal BDF2) Various partitioning algorithms (KBA, Volumetric, Hybrid, METIS) Various iterative schemes obtained via scheduling choices (Sweeps, Block-Jacobi, Hybrid) Supports various Krylov methods (GMRES, BiCGSTAB, CG, CGS) Massively parallel with the parallelism obtained via the underlying PTTL parallel components library Written entirely in C++ PDT/BATSRUS Coupling PDT can successfully run radiation transport problems from within BATSRUS PDT exposes to BATSRUS two core interfaces functions pdt_initialize() is called once during BATSRUS setup to initialize PDT data structures and ensure consistency between BATSRUS and PDT inputs. Receives from BATSRUS geometry, grid, material, and cell identification information. pdt_execute() is called by each BATSRUS process and passes to PDT material densities, material average velocities, and electron energy densities for cells owned by the BATSRUS calling process. pdt_execute() communicates the information passed to it by BATSRUS to the appropriate PDT processes so that PDT can use its own domain decomposition (such as KBA) pdt_execute() returns to each BATSRUS process the radiation/matter momentum exchange rate density vector, the radiation /matter energy exchange rate density, and the electron energy density for the appropriate BATSRUS cells belonging to the BATSRUS calling process. Complexity is mostly on PDT side. Coding complete except for redistribution. Initial debugging and verification will be helped by a simplified radiation model (cell- wise infinite-medium), which should give the same solution from PDT as from the embedded BATSRUS diffusion solver PDT Data Structures Elements contain fundamental spatial unknowns and volumetric sources Supports multiple element types Whole-cell elements Corner elements for finite-volume for finite-element discretizations discretizations Cells contain elements and encapsulate material information Cells are stored in a grid Grid is stored as a graph Vertices of the graph correspond to cells Edges of the graph correspond to cell faces Contains methods to store and read angular intensities Graph is a templated C++ class that handles various cell, element, and edge types Cell Cell Test Problems Approximately 50 test problems in the PDT radiation transport test suite Testing various combinations of discretizations, iterative solvers, etc. Includes simple semi-analytic one-cell heat-up problem and light-front propagation problem Adding many more as time goes on Su-Olsen boundary problem detailed in LA-UR Equilibrium Marshak wave problem (Ryan McClarren) ρ = 1.0 g/cm3 κ = 1.0 cm2/g Te = 100 K (0.008 eV) α = 4a, Cv = αTe3 200 spatial cells, S2 quadrature order LPWLD discretization, GMRES, TBDF2 Δt = 1.0×10-13 s X = 0 cm X = 20cm Tr = 1 keV Thermal Radiation Solver PDT solves equations for radiation intensity and electron temperature Much code is shared by the linear Boltzmann solver and the radiation transport solver Group-summed absorption-rate density is the solver unknown Can converge A.R.D. pointwise in addition to norm of the residual Many changes have been made to the solver to improve its robustness and handling of negative energy densities and temperatures Can use opacity data from tables, fits, and simple analytic functions TOPS data Interpolated TOPS data Κ = A+BTC Can use simple analytic functions of temperature for specific heats Cv = A+BTC Several options for time-centering opacities and specific heats: Beginning of time-step Te Extrapolated Te Converged Te Time-step control includes a simple and effective adaptive time-step capability Many performance and memory usage improvements ρ = 3.0 g/cm3 κ = ×1023 cm2/g Te = 0.01 eV Cv = ×1019eV/g-K 1000 spatial cells, S2 quadrature order LPWLD discretization, GMRES, Fully-Implicit Δt = 1.0×10-13 s X = 0 cm X = 0.5cm Tr = 1 keV


Download ppt "Thermal Radiation Solver"

Similar presentations


Ads by Google