10 likes | 141 Views
Cell. 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
E N D
Cell • 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 Cell ρ = 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-13s ρ = 3.0 g/cm3 κ = 1.5629×1023 cm2/g Te = 0.01 eV Cv = 5.3783×1019eV/g-K 1000 spatial cells, S2 quadrature order LPWLD discretization, GMRES, Fully-Implicit Δt = 1.0×10-13s Tr = 1 keV Tr = 1 keV X = 0 cm X = 20cm X = 0 cm X = 0.5cm • 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 • discretizationsdiscretizations • 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 PDT Thermal Radiation Transport PackageMarvin L. Adams, Wm. Daryl Hawkins, Ryan G. McClarren, Jim E. MorelDept. of Nuclear Engineering, Texas A&M University • 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-05-6865 • Equilibrium Marshak wave problem (Ryan McClarren) • 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