Improving Swift Hal Levison (PI), SwRI Martin Duncan (CoI), Queen’s University Mark Lewis (CoI), Trinity University David Kaufmann, SwRI.

Slides:



Advertisements
Similar presentations
Ryuji Morishima (UCLA/JPL). N-body code: Gravity solver + Integrator Gravity solver must be fast and handle close encounters Special hardware (N 2 ):
Advertisements

3.4 N-body Simulation Introduction to Programming in Java: An Interdisciplinary Approach · Robert Sedgewick and Kevin Wayne · Copyright.
1 Lucifer’s Hammer Derek Mehlhorn William Pearl Adrienne Upah A Computer Simulation of Asteroid Trajectories Team 34 Albuquerque Academy.
Module on Computational Astrophysics Professor Jim Stone Department of Astrophysical Sciences and PACM.
Ch. 7: Dynamics.
ECIV 301 Programming & Graphics Numerical Methods for Engineers Lecture 4 Programming and Software EXCEL and MathCAD.
Simulating Self Gravitating Planetesimal Disks on the Graphics Processing Unit (GPU) Alice C. Quillen Alex Moore University of Rochester Poster DPS 2008.
Derek C. Richardson (U Maryland) PKDGRAV : A Parallel k-D Tree Gravity Solver for N-Body Problems FMM 2004.
Linear, not Angular, Momentum: In this section, we deal with linear momentum (mv) of particles only. Another section of your book talks about linear (mv.
Simulations of The Three- Body Problem: Finding Chaos in the Cosmos Craig Huber and Leah Zimmerman San Francisco State University Mathematics 490 Professor.
Copyright © 2006 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 1 Mathematical Modeling and Engineering Problem solving.
Version 4 for Windows NEX T. Welcome to SphinxSurvey Version 4,4, the integrated solution for all your survey needs... Question list Questionnaire Design.
© 2011 Autodesk Freely licensed for use by educational institutions. Reuse and changes require a note indicating that content has been modified from the.
Business Portal Project Community Seminars & Workshops GEOG June 2011 W. Millen, C. Jhagroo, J. Pickering, F. Fahad & T. Banchuen.
MA/CS 375 Fall MA/CS 375 Fall 2002 Lecture 13.
1 Web Based Interface for Numerical Simulations of Nonlinear Evolution Equations Ryan N. Foster & Thiab Taha Department of Computer Science The University.
Introduction to Parallel Programming MapReduce Except where otherwise noted all portions of this work are Copyright (c) 2007 Google and are licensed under.
Free Mini Course: Applying SysML with MagicDraw
First Dutch OpenFOAM Day
L15: Putting it together: N-body (Ch. 6) October 30, 2012.
Erin Catto Blizzard Entertainment Numerical Integration.
Advanced Analysis Environments What is the role of Java in physics analysis? Will programming languages at all be relevant? Can commercial products help.
Javier Junquera Molecular dynamics in the microcanonical (NVE) ensemble: the Verlet algorithm.
PTC ½ day – Experience in PS2 and SPS H. Bartosik, Y. Papaphilippou.
Upgrade to Real Time Linux Target: A MATLAB-Based Graphical Control Environment Thesis Defense by Hai Xu CLEMSON U N I V E R S I T Y Department of Electrical.
A Spring 2005 CS 426 Senior Project By Group 15 John Studebaker, Justin Gerthoffer, David Colborne CSE Dept., University of Nevada, Reno Advisors (CSE.
Development of ORBIT Data Generation and Exploration Routines G. Shelburne K. Indireshkumar E. Feibush.
OpenSees on NEEShub Frank McKenna UC Berkeley. Bell’s Law Bell's Law of Computer Class formation was discovered about It states that technology.
2-4 Solving Equations with Variables on Both Sides.
Session 1 SESSION 1 Working with Dreamweaver 8.0.
Navigation and Ancillary Information Facility NIF Preview of a Web-based GUI Interface to SPICE “WebGeocalc” The NAIF and UCD Teams August 22, 2011 SPICE.
1 Computer Programming (ECGD2102 ) Using MATLAB Instructor: Eng. Eman Al.Swaity Lecture (1): Introduction.
Extensible Simulation of Planets and Comets A Thesis Presentation By: Natalie Wiser-Orozco November 14, 2008 Committee Members: Dr. Keith Schubert Dr.
Chapter 1: Getting Started with MATLAB MATLAB for Scientist and Engineers Using Symbolic Toolbox.
1 CSC 222: Computer Programming II Spring 2004 See online syllabus at: Course goals:
Chris Theis. C. TheisFLUKA users meeting 02/082 Overview SimpleGeo 3.0 & the next release Plugins 2.0 & the next release 2.1.
Touchstone Automation’s DART ™ (Data Analysis and Reporting Tool)
The european ITM Task Force data structure F. Imbeaux.
SLINGSHOT PROJECT By Dale Henderson Jarly López Robert Kemp Stacey Cotty.
_______________________________________________________________CMAQ Libraries and Utilities ___________________________________________________Community.
Mark Marron 1, Deepak Kapur 2, Manuel Hermenegildo 1 1 Imdea-Software (Spain) 2 University of New Mexico 1.
240-Current Research Easily Extensible Systems, Octave, Input Formats, SOA.
A Technical Introduction to the MD-OPEP Simulation Tools
MA/CS 375 Fall MA/CS 375 Fall 2002 Lecture 12.
1 Yield Analysis and Increasing Engineering Efficiency Spotfire Users Conference 10/15/2003 William Pressnall, Scott Lacey.
Debugging parallel programs. Breakpoint debugging Probably the most widely familiar method of debugging programs is breakpoint debugging. In this method,
NEES Cyberinfrastructure Center at the San Diego Supercomputer Center, UCSD George E. Brown, Jr. Network for Earthquake Engineering Simulation NEES TeraGrid.
Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd ed., by B. Wilkinson & M
Introduction to MATLAB 7 MATLAB Programming for Engineer Hassan Migdadi Spring 2013.
BOĞAZİÇİ UNIVERSITY DEPARTMENT OF MANAGEMENT INFORMATION SYSTEMS MATLAB AS A DATA MINING ENVIRONMENT.
Texas A&M University, Department of Aerospace Engineering AN EMBEDDED FUNCTION TOOL FOR MODELING AND SIMULATING ESTIMATION PROBLEMS IN AEROSPACE ENGINEERING.
1 CSC 427: Data Structures and Algorithm Analysis Fall 2006 See online syllabus (also available through Blackboard): Course goals:
1 Dynamics Differential equation relating input torques and forces to the positions (angles) and their derivatives. Like force = mass times acceleration.
Introduction to Matlab  Matlab is a software package for technical computation.  Matlab allows you to solve many numerical problems including - arrays.
Sequencing The most simple type of program uses sequencing, a set of instructions carried out one after another. Start End Display “Computer” Display “Science”
Postgraduate Computing Lectures PAW 1 PAW: Physicist Analysis Workstation What is PAW? –A tool to display and manipulate data. Learning PAW –See ref. in.
Mark Marron 1, Deepak Kapur 2, Manuel Hermenegildo 1 1 Imdea-Software (Spain) 2 University of New Mexico 1.
C OMPUTATIONAL R ESEARCH D IVISION 1 Defining Software Requirements for Scientific Computing Phillip Colella Applied Numerical Algorithms Group Lawrence.
1 The PISCES Project Don J. Pearson JSC/DM Flight Design & Dynamics Division May 2002
“Moh’d Sami” AshhabSummer 2008University of Jordan MATLAB By (Mohammed Sami) Ashhab University of Jordan Summer 2008.
Celestial Mechanics I Introduction Kepler’s Laws.
Celestial Mechanics VI The N-body Problem: Equations of motion and general integrals The Virial Theorem Planetary motion: The perturbing function Numerical.
Wednesday NI Vision Sessions
Texas A&M University, Department of Aerospace Engineering AUTOMATIC GENERATION AND INTEGRATION OF EQUATIONS OF MOTION BY OPERATOR OVER- LOADING TECHNIQUES.
CSC 427: Data Structures and Algorithm Analysis
Software for scientific calculations
(Mohammed Sami) Ashhab
GENERAL VIEW OF KRATOS MULTIPHYSICS
Visualizing the Attracting Structures Results and Conclusions
N-Body Gravitational Simulations
Presentation transcript:

Improving Swift Hal Levison (PI), SwRI Martin Duncan (CoI), Queen’s University Mark Lewis (CoI), Trinity University David Kaufmann, SwRI

Outline of Talk 1.Project Background and Goals What is Swift, why improve it, and how? 2.Project Status Swifter, the redesigned Swift A new algorithm for SyMBA SWIFTVis, a Java-based analysis tool 3.Future Plans

What is Swift? (1 of 2) 1.S/W package (subroutine library + drivers) 2.Integrates a set of gravitationally interacting bodies together with a set of test particles 3.Written in ANSI standard Fortran 77 4.Industry standard for the planetary science community

What is Swift? (2 of 2) 1.Wisdom-Holman Mapping (WHM) 2.Regularized Mixed Variable Symplectic method (RMVS) 3.Fourth-order T+U Symplectic method (TU4) 4.Symplectic Massive Body Algorithm (SyMBA) 1.Bulirsch-Stoer method Symplectic IntegratorsNon-symplectic Integrators

Why Improve Swift? 1.SyMBA has not yet been released as part of Swift because… a single, stable version has not yet been finalized, the efficiency of the SyMBA code needs to be improved, and SyMBA is very complex and not very user-friendly 2.The Swift I/O can be made more user-friendly 3.Faster methods of calculating interparticle forces can be employed 4.Swift is currently a serial code, not parallelized

How to Improve Swift? 1.Reorganize the data for SyMBA and other Swift integrators into arrays of structures to improve efficiency and clarify the code to make it more user-friendly 2.Make these structure arrays dynamically allocated to avoid fixed-size limitations 3.Modify the integration parameter input facility to allow for more user-friendly input files 4.Utilize tree or Fast Multipole methods for interparticle force calculations 5.Write a parallelized version of Swift

Swifter Overview 1.Written in ANSI standard Fortran 90 because… it is well-suited for number-crunching applications, it supports dynamic memory allocation it supports data structures it supports pointers it facilitates the transition to Swifter for current Swift users 2.Program data reorganized into dynamically allocated arrays of nested structures 3.Structures are accessed primarily by means of pointers 4.New keyword-driven parameter input file format 5.Widely used RADAU15 integrator has been added

Swift Memory Layout BASIC DATA INTEGRATOR-SPECIFIC DATA MAIN PROGRAM STEPPER SUBROUTINE

Swifter Memory Layout NEXT PREVIOUS NEXT PREVIOUS BASIC DATA INTEGRATOR-SPECIFIC DATA MASS POSITION VELOCITY etc. BODY 1BODY 2BODY 3 BODY 6BODY 5BODY 4

Parameter File Swift vs. Swifter 0.0e e e e7 F T F T T F F bin.dat unknown ! ! start the run at time = 0 ! T0 0.0E0 TSTOP E9 DT E0 PL_IN pl.in TP_IN tp.in IN_TYPE ASCII ISTEP_OUT BIN_OUT bin.dat OUT_TYPE REAL4 OUT_FORM EL OUT_STAT UNKNOWN ISTEP_DUMP CHK_RMIN -1.0 CHK_RMAX CHK_EJECT -1.0 CHK_QMIN -1.0 CHK_QMIN_COORD HELIO CHK_QMIN_RANGE ENC_OUT enc.dat BIG_DISCARD yes

What is SyMBA? First symplectic integrator for planet formation and evolution. An example of terrestrial planet formation

What is SyMBA? An example of planetary system stability:

What is SyMBA? The Hamiltonian for the gravitational N-body problem, expressed in inertial frame coordinates, is where p i is the momentum of particle i and r ij = |q i – q j | is the distance between particles i and j. The equations of motion are derived in the usual way from the Hamiltonian:

What is SyMBA? SyMBA makes use of this Hamiltonian expressed in “democratic heliocentric” coordinates (heliocentric positions and barycentric momenta). It can be written where Second-order time step is Unfortunately this scheme fails during close solar encounters.

What is SyMBA? The following splitting of the Hamiltonian solved the problem of close encounters with the Sun: where and

What is SyMBA? The time rate of change of the momentum due to H ’ Sun is Because the right-hand side of this equation is independent of m i, there is a singularity in the calculation of the acceleration for zero-mass test particles, and bad numerical behavior for bodies of sufficiently low mass, in the transition region where F is changing.

New SyMBA Algorithm The solution to this problem may lie in the use of “Yosemite” coordinates, developed by John Chambers. and Using these coordinates the Hamiltonian reads

SWIFTVis 1.Java-based graphical data analysis utility 2.Customized for Swift and Swift users 3.Freely available and platform independent 4.Graphical display of analysis session, which can be saved and reused with new input data 5.Raw data source  Filter  Plot 6.Supported filters include: select, thinning, function, sort, merge, binned, and movie

SWIFTVis Demo (1 of 21)

SWIFTVis Demo (2 of 21)

SWIFTVis Demo (3 of 21)

SWIFTVis Demo (4 of 21)

SWIFTVis Demo (5 of 21)

SWIFTVis Demo (6 of 21)

SWIFTVis Demo (7 of 21)

SWIFTVis Demo (8 of 21)

SWIFTVis Demo (9 of 21)

SWIFTVis Demo (10 of 21)

SWIFTVis Demo (11 of 21)

SWIFTVis Demo (12 of 21)

SWIFTVis Demo (13 of 21)

SWIFTVis Demo (14 of 21)

SWIFTVis Demo (15 of 21)

SWIFTVis Demo (16 of 21)

SWIFTVis Demo (17 of 21)

SWIFTVis Demo (18 of 21)

SWIFTVis Demo (19 of 21)

SWIFTVis Demo (20 of 21)

SWIFTVis Demo (21 of 21)

Future Plans 1.Complete the rewrite of SyMBA 2.Complete the SWIFTVis utility 3.Package and release the serial version of Swifter 4.Establish a support web site for Swifter 5.Continue development of alternative force calculation methods (symplectic tree algorithm, FMM) 6.Purchase the parallel computer cluster 7.Begin development of the parallel version of Swifter