strategic goals: to align the many efforts at sandia involved in developing software for the...
TRANSCRIPT
Strategic Goals:To align the many efforts at Sandia involved in developing software for the modeling and simulation of physical systems (mostly PDEs):
1. To enable the Rapid development of new Production codes 2. To embed the codes with Transformational design, analysis,
and decision-support capabilities3. To benefit from Synergy & reduce Redundancy
Agile Components for the Rapid Development of Production Applications Andy Salinger, CSRI,
Sandia National Laboratories
Consensus Vision: Our goals will best be met by delivering:• A full range of independent yet interoperable software
componentsCapabilitiesInterfaces
• Software quality tools and procedures • Prototype applications that demonstrate use cases, vertical
integration, and verification, and provide pull
SAND2008-7503P
Element Level FillMaterial Models
Sensitivities
Field ManagerDiscretization Library
Remeshing
UQ Solver
Nonlinear SolverTime Integration
Optimization
Objective Function
Local Fill
Mesh Database
Mesh Tools I/O Management
Input File ParserUtilitiesUQ (non-invasive)
Parameter Studies Solution Control
Mesh I/O
Optimization
Geometry Database
Discretizations
Derivative Tools
Adjoints
UQ / PCEPropagation Constraints
Error Estimates
Continuation
Constrained Solves
Sensitivity AnalysisStability Analysis
V&V, CalibrationParameter List
Feature ExtractionEmbedded Verification
VisualizationPostProcessing
Data Reduction
Adaptivity
Model Reduction
Memory Management
System Models
MultiPhysics Coupling
OUU, ReliabilityComputational Steering
Communicators
MultiCoreParallelization Tools
PartitioningLoad Balancing
Analysis Tools (black-box)
Physics Fill
Composite Physics
Data Structures
Direct Solvers
Linear Algebra
Architecture-Dependent Kernels
Preconditioners
Iterative Solvers
Eigen Solver
System UQ
Analysis Tools (embedded)
Matrix Partitioning
Inline Meshing
MMS Source Terms
Grid TransfersMesh Quality
Mesh Database
Solution Database
Runtime Compiler
Derivatives
Regression Testing
Bug Tracking
Version Control
Software Quality
Porting
Performance TestingCode Coverage
Mailing Lists
Release Process
Unit Testing
Web Pages
Build SystemBackups
Agile Components
Neighbor Search / SortData Structures
Particle Code Tools
Input File
Mesh Tools
UtilitiesPostProcessing
Analysis Tools (black-box) Composite Physics
Linear Algebra
Analysis Tools (embedded)
Mesh Database
Phalanx “Fill” Manager
Discretizations
Derivative Tools
Physics Fill
Some Collected Interfaces
ITAPS Interfaces
Stratimikos ModelEvaluator
FEIEpetra
XML
template <Scalar>
Mesh File
Mesh I/O Interface
ResponseOnly M.E.
Software Quality
cmakeSVNmailman
TriKota
Response Only Model Evaluator: an “Application” or “Problem” Abstraction
A Model Evaluator registers what Input and Output it can handle.
I can make use of: I can compute:
Response Only Model Evaluator:
= Dakota
Analysis Tools (embedded)
ResponseOnly M.E.
TriKota
DirectApplicInterface
“TriKota” is an adapter between Dakota’s “DirectApplicInterface”and Trilinos’ “ResponseOnlyModelEvaluator”
for (int i=0; i<numVars; i++) (*modelEval_p)[i]=xC[i];
TriKota::Driver dakota;
RCP<EpetraExt::ModelEvaluator> App = rcp(new MyResponseOnlyME(dakota.getAnalysisComm()) );
RCP<TriKota::DirectApplicInterface> trikota_interface = rcp(new TriKota::DirectApplicInterface
(dakota.getProblemDescDB(), App), false);
dakota.run(trikota_interface);
Main_Dakota.cpp
Joint work with Bartlett, Adams, Eldred, Gay
Analysis Tools (black-box)
TriKota contains sophisticated coding such as...
Post Processing
Mesh Database
ITAPS Interfaces
VTK visualization software hooked up togeneric ITAPS Mesh Database Interface
Joint work with Nathan Fabian (1426)with help from Vitus Leung & Karen Devine
vtkITAPS
A frame is dumped every time step from a RythmosObserver object.
Visualization
Linear Solvers
Adaptivity
Sacado AD
ModelEvaluator
Inline Meshing
Mesh I/O
MeshField Interface
Input File Parser
FEI/DOF
Zoltan
Intrepid
Stokhos UQ
Dakota OPT
Dakota UQ
Moocho
Rythmos
Adjoint in Time LOCA
Phalanx Field Manager
Error Estimates
Transient Sensitivities
4D
Mesquite
Improved Environment
Test Harness
MMS Tests
SVN
Solvers/Analysis Mesh/Element Software/Verification
OUUUncertainty Inversion
Encore
ROM
DG, FV
In-core Geometry
Code Coverage
Order Verification
in situ Visualization
MultiPoint Opt
2nd Mesh Database
MultiCore
MultiPhysics
Performance Testing
DemoApp Timeline
System Solver
Shape Optimization
Solution Verification
Build System1D Mesh/Element
Physics
1D Heat Eq
1D Transient
2D Heat Eq
1D Acoustics
2D Acoustics
Nightly IntegrationTesting
Unit Tests
2D Elastics
3D PDEs
Multi-Physics App
Hybrid-Discretization
Sensitivity Analysis
GUI Input File Editor
DONE
PLANNED
trivial 2D Mesh/Element
Mesh DataB.
STARTED WITH
NOX
3/08: Started with Working 1D FEM Code (Sacado::FEApp) [Phipps] and aTrilinos-like Application Environment (Tramonto) [Willenbring, Phenow, Heroux]