Verification and Validation Using Code-Based Sensitivity Techniques

Slides:



Advertisements
Similar presentations
Bounded Model Checking of Concurrent Data Types on Relaxed Memory Models: A Case Study Sebastian Burckhardt Rajeev Alur Milo M. K. Martin Department of.
Advertisements

Yi Heng Second Order Differentiation Bommerholz – Summer School 2006.
Design of Experiments Lecture I
A System to Generate Test Data and Symbolically Execute Programs Lori A. Clarke September 1976.
Assimilation Algorithms: Tangent Linear and Adjoint models Yannick Trémolet ECMWF Data Assimilation Training Course March 2006.
A Discrete Adjoint-Based Approach for Optimization Problems on 3D Unstructured Meshes Dimitri J. Mavriplis Department of Mechanical Engineering University.
Engineering Optimization – Concepts and Applications Engineering Optimization Concepts and Applications Fred van Keulen Matthijs Langelaar CLA H21.1
From Cooper & Torczon1 Implications Must recognize legal (and illegal) programs Must generate correct code Must manage storage of all variables (and code)
1 Chapter 2 Problem Solving Techniques INTRODUCTION 2.2 PROBLEM SOLVING 2.3 USING COMPUTERS IN PROBLEM SOLVING : THE SOFTWARE DEVELOPMENT METHOD.
Data Structures and Programming.  John Edgar2.
5.3 Machine-Independent Compiler Features
A Brief Overview of Methods for Computing Derivatives Wenbin Yu Department of Mechanical & Aerospace Engineering Utah State University, Logan, UT.
1 Validation & Verification Chapter VALIDATION & VERIFICATION Very Difficult Very Important Conceptually distinct, but performed simultaneously.
ECE 720T5 Winter 2014 Cyber-Physical Systems Rodolfo Pellizzoni.
Verification and Validation Overview References: Shach, Object Oriented and Classical Software Engineering Pressman, Software Engineering: a Practitioner’s.
From Use Cases to Test Cases 1. A Tester’s Perspective  Without use cases testers will approach the system to be tested as a “black box”. “What, exactly,
Jump to first page (c) 1999, A. Lakhotia 1 Software engineering? Arun Lakhotia University of Louisiana at Lafayette Po Box Lafayette, LA 70504, USA.
Derivatives In modern structural analysis we calculate response using fairly complex equations. We often need to solve many thousands of simultaneous equations.
Major objective of this course is: Design and analysis of modern algorithms Different variants Accuracy Efficiency Comparing efficiencies Motivation thinking.
Problem Solving Techniques. Compiler n Is a computer program whose purpose is to take a description of a desired program coded in a programming language.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 22 Slide 1 Software Verification, Validation and Testing.
High Integrity Ada in a UML and C world Peter Amey, Neil White Presented by Liping Cai.
NCHRP Project Development of Verification and Validation Procedures for Computer Simulation use in Roadside Safety Applications SURVEY OF PRACTITIONERS.
Texas A&M University, Department of Aerospace Engineering AN EMBEDDED FUNCTION TOOL FOR MODELING AND SIMULATING ESTIMATION PROBLEMS IN AEROSPACE ENGINEERING.
System To Generate Test Data: The Analysis Program Syed Nabeel.
Anders Nielsen Technical University of Denmark, DTU-Aqua Mark Maunder Inter-American Tropical Tuna Commission An Introduction.
Verification vs. Validation Verification: "Are we building the product right?" The software should conform to its specification.The software should conform.
Priorities and Strategies Meeting, 02/07/05 1 Computational Science in LACSI  PDE discretization on unstructured meshes Current focus: polyhedral mimetic.
Sung-Dong Kim, Dept. of Computer Engineering, Hansung University Java - Introduction.
An Introduction to AD Model Builder PFRP
Traffic Simulation L2 – Introduction to simulation Ing. Ondřej Přibyl, Ph.D.
Advanced Computer Systems
Introduction to Compiler Construction
Lecture 1 Introduction Richard Gesick.
John D. McGregor Session 9 Testing Vocabulary
Software Verification and Validation
Verification and Validation
Programming with ANSI C ++
Chapter 8 – Software Testing
Chapter 18.
Objectives of the Presentation
Verification and Validation Overview
Code-Based Sensitivities for Verification and Validation
Software Requirements
Verification & Validation
Introduction Enosis Learning.
Verification and Validation
John D. McGregor Session 9 Testing Vocabulary
CSCI/CMPE 3334 Systems Programming
Many-core Software Development Platforms
Chapter 10 Verification and Validation of Simulation Models
Gabor Madl Ph.D. Candidate, UC Irvine Advisor: Nikil Dutt
Introduction Enosis Learning.
John D. McGregor Session 9 Testing Vocabulary
The Future of Fortran is Bright …
Chapter 18.
Roberto Battiti, Mauro Brunato
Lecture 09:Software Testing
Objective of This Course
Verification and Validation Unit Testing
GENERAL VIEW OF KRATOS MULTIPHYSICS
Subject: Language Processor
Linearization and Newton’s Method
Presented By: Darlene Banta
Linearization and Newton’s Method
point when a program element is bound to a characteristic or property
Chapter 7 Software Testing.
RUN-TIME STORAGE Chuen-Liang Chen Department of Computer Science
Support for Adaptivity in ARMCI Using Migratable Objects
Derivatives and Gradients
Presentation transcript:

Verification and Validation Using Code-Based Sensitivity Techniques The LACSI Code-Based Sensitivity Project Mike Fagan Rice University Dept. of Computational and Applied Mathematics http://lacsi.rice.edu/review/slides/Fagan_LACSI_review.ppt

The Problem Development of computer models of physical phenomena requires a “reality” check. If the computer model output matches the real data, then all is well If the model output does not match, then ??? Underlying mathematics/physics is inadequate to capture the salient features of the phenomena under study. VALIDATION problem. Program implementing the model is incorrect. VERIFICATION problem Together, referred to as V&V (alternative spelling VnV)

V&V Techniques Validation Verification Obtain “best” fit with (some portion of) the data Evaluate if “best” is good enough Evaluate tuned simulation on other data, see if fit is adequate Best fits may be obtained with Newton’s Method Verification For now, this means testing. If simulation model is a differential equation, then Method of Manufactured Solutions (MMS) Roundoff error estimation: run-time error bounds (Wilkinson)

A Common Subproblem Newton’s method  compute derivatives MMS  compute derivatives Runtime error bounds  compute derivatives Some additional uses of derivatives (optimal) design Taylor series techniques for DEs Newton-Krylov iterations

Finite Differences Hand Coding Research Overview Purpose : Efficiently,accurately, and with minimal human intervention compute sensitivities of computer codes. “Sensitivity” means ( calculus ) derivative Accomplish this through Automatic Differentiation (AD) 3 Ways to Compute Derivatives: Finite Differences Hand Coding Automatic Differentiation Finite Differences Hand Coding

State of the Art in AD Fortran 77 Fortran 90 C,C++ Adifor 3.0 First to use compiler technology 1995 Wilkinson prize to Adifor 2 Price/Distribution model fits well TAF (TAMC), TAPENADE Fortran 90 Adifor 3.0, TAF, TAPENADE all support a little C,C++ ADIC, ADOL-C, FADBAD

Roadmap AD research Software Engineering and Construction Sample Validation

AD Research Areas of inquiry Memory usage for adjoint methods Improved derivative methods for simple assignment statements Techniques for advanced language features Array slices, structured data Pointers, dynamic memory allocation Operator overloading Multiple data representations Association-by-name or Association-by-address Activity Analysis for advanced programming languages AD for MPI programs

Software Engineering and Development Develop a framework for multi-language AD. Component Model: separating language knowledge from differentiation. Leverage other work (Open64) Develop a Fortran 90 AD tool (with Unit Tests) 80 Unit tests, all pass Ubiksolve, a component of the Truchas system Good Truchas Surrogate (Brian Lally) Linear solvers, so differentiation is easy to check 50% run and verified

AD and V & V at Los Alamos Rudy Henninger: Ralph Nelson: Mesa 1D, 2D anti-armor codes Caravana lagrangian test code (hydro methods from FLAG code) Truchas 1d (metal casting code) Ralph Nelson: TRAC (reactor safety code)

Detonation Shock Dynamics (DSD) Curvature Equation How could one tune these 6 parameters??

DSD - better fit of 6 parameters - SNL DAKOTA package drives the optimization process - Gradients provided by AD of DSD solver - ~40 passes improves the fit

Laboratory Interactions Visit summer 2001 -- Gave a talk Visit summer 2002 -- visit w Rudy to work on explosion code SIAM Session on Validation of Metal Flow Simulations, talk on verification of DEs LACSI Symposium session on Verification and Validation talk on verification of DEs Visit summer 2003 -- gave a talk Methods conference 2004 Truchas conference 2004, talk on Adifor90 6 Registered Adifor users at LANL T-10,T-11,EES-5,XMH, CCS-2,X5

Runtime Error Analysis Doug Kothe indicated at the LACSI Priorities and Strategies meeting in 2004 that the V&V groups at LANL are concerned about roundoff error Can get estimated linearized forward error analysis by computing For each statement executed in the program. Approximate dx by machine epsilon * x