Numerical integration for physically based animation

Slides:



Advertisements
Similar presentations
Lecture on Numerical Analysis Dr.-Ing. Michael Dumbser
Advertisements

Chapter 6 Differential Equations
A TASTE OF CHAOS By Adam T., Andy S., and Shannon R.
SE301: Numerical Methods Topic 8 Ordinary Differential Equations (ODEs) Lecture KFUPM Read , 26-2, 27-1 CISE301_Topic8L8&9 KFUPM.
Numeriska beräkningar i Naturvetenskap och Teknik 1. Numerical differentiation and quadrature Discrete differentiation and integration Trapezoidal and.
Lecture 18 - Numerical Differentiation
Kinematics of Particles
MAT 594CM S10Fundamentals of Spatial ComputingAngus Forbes Week 2 : Dynamics & Numerical Methods Goal : To write a simple physics simulation Topics: Intro.
Chapter 1 Introduction The solutions of engineering problems can be obtained using analytical methods or numerical methods. Analytical differentiation.
EGR 280 Mechanics 8 – Particle Kinematics I. Dynamics Two distinct parts: Kinematics – concerned with the mathematics that describe the geometry of motion,
Numerical Solutions of Ordinary Differential Equations
Computer graphics & visualization Rigid Body Simulation.
NUMERICAL DIFFERENTIATION The derivative of f (x) at x 0 is: An approximation to this is: for small values of h. Forward Difference Formula.
Applications of Calculus. The logarithmic spiral of the Nautilus shell is a classical image used to depict the growth and change related to calculus.
Chapter 2 Preview Objectives One Dimensional Motion Displacement
Chapter 2 Table of Contents Section 1 Displacement and Velocity
Game Physics – Part IV Moving to 3D
INTRODUCTION & RECTILINEAR KINEMATICS: CONTINUOUS MOTION Today’s Objectives: Students will be able to: 1.Find the kinematic quantities (position, displacement,
Erin Catto Blizzard Entertainment Numerical Integration.
Chapter 17 Boundary Value Problems. Standard Form of Two-Point Boundary Value Problem In total, there are n 1 +n 2 =N boundary conditions.
Introduction to Numerical Analysis I MATH/CMPSC 455 Fall 2011 Instructor: Xiaozhe Hu (Shawn)
CSE 541 Rick Parent ELEMENTARY NUMERICAL METHODS Winter 2012.
Numerical Integration and Rigid Body Dynamics for Potential Field Planners David Johnson.
Computer Animation Algorithms and Techniques
Lecture Fall 2001 Physically Based Animation Ordinary Differential Equations Particle Dynamics Rigid-Body Dynamics Collisions.
Physics 207: Lecture 6, Pg 1 Lecture 6 l Goals:  Discuss circular motion Chapters 5 & 6  Recognize different types of forces and know how they act on.
© Houghton Mifflin Harcourt Publishing Company Preview Objectives One Dimensional Motion Displacement Average Velocity Velocity and Speed Interpreting.
Integration for physically based animation CSE 3541 Matt Boggus.
PS 5-3 Integration –Discrete data –Polynomial functions Differentiation –Discrete data –Polynomial functions Roots (i.e., zeros) of functions –Polynomial.
Trajectory Generation
Chapter 1. Concepts of Motion
DIFFERENTIAL EQUATIONS Note: Differential equations are equations containing a derivative. They can be solved by integration to obtain a general solution.
Today’s class Ordinary Differential Equations Runge-Kutta Methods
Game Technology Animation V Generate motion of objects using numerical simulation methods Physically Based Animation.
An Overview of Mechanics Statics: The study of bodies in equilibrium. Dynamics: 1. Kinematics – concerned with the geometric aspects of motion 2. Kinetics.
Theoretical Mechanics KINEMATICS * Navigation: Right (Down) arrow – next slide Left (Up) arrow – previous slide Esc – Exit Notes and Recommendations:
Sec 21: Generalizations of the Euler Method Consider a differential equation n = 10 estimate x = 0.5 n = 10 estimate x =50 Initial Value Problem Euler.
UW EXTENSION CERTIFICATE PROGRAM IN GAME DEVELOPMENT 2 ND QUARTER: ADVANCED GRAPHICS Advanced Math.
Particle Kinematics Direction of velocity vector is parallel to path Magnitude of velocity vector is distance traveled / time Inertial frame – non accelerating,
Fundamentals of Computer Animation Rigid Body Simulation (1)
Numerical Integration for physically based animation
The student is expected to:
How to Use This Presentation
NUMERICAL DIFFERENTIATION Forward Difference Formula
Introduction & Rectilinear Kinematics:
GENERAL & RECTANGULAR COMPONENTS
Forces - basic physics Springs (Hooke’s law) Damping Gravity
Integral as Net Change Chapter 8.1.
Class Notes 18: Numerical Methods (1/2)
Class Notes 19: Numerical Methods (2/2)
Vector Field Visualization
Ordinary differential equaltions:
Section 1 Displacement and Velocity
Chapter 2 Table of Contents Section 1 Displacement and Velocity
Find the velocity of a particle with the given position function
ORBITAL Trajectories!!! Made by Karol Sanchez
Numerical Analysis Lecture 37.
Section 1 Displacement and Velocity
Outline: 5.1 INTRODUCTION
SE301: Numerical Methods Topic 8 Ordinary Differential Equations (ODEs) Lecture KFUPM (Term 101) Section 04 Read , 26-2, 27-1 CISE301_Topic8L2.
VIRTUAL ENVIRONMENT.
Outline: 5.1 INTRODUCTION
Describing Motion: Kinematics in One Dimension
Computer Animation Algorithms and Techniques
Introduction CSE 541.
CISE301: Numerical Methods Topic 8 Ordinary Differential Equations (ODEs) Lecture KFUPM Read , 26-2, 27-1 CISE301_Topic8L1 KFUPM.
Uncertainty Propagation
Presentation transcript:

Numerical integration for physically based animation CSE 3541 / 5541 Matt Boggus

Recording motion First, save a moving object’s position over time. Then, given time, look up position ; y = f(time) Plot roughly based on dropping a non very bouncy ball

Sampling A fixed amount of time passes between frames, approximate the continuous position curve with discrete samples.

Sampling Low sampling rate (large dt)

Sampling High sampling rate (smaller dt)

Kinematics terms Position (x,y,z) Velocity (x,y,z) Point with respect to the origin Velocity (x,y,z) Speed (vector magnitude) Direction Acceleration (x,y,z) Rate of change of velocity Magnitude and direction r Kinematics - the branch of mechanics concerned with the motion of objects without reference to the forces that cause the motion.

Problem statement Compute an unknown function f(time), using its known derivative f’(time) Known current position and velocity i.e. values at start of Update() Unknown “next” position and velocity i.e. what should values be at end of Update() Known forces acting on object Integrate to compute “next” velocity and position

Example Initial conditions: acceleration Initial conditions: p = 0, v = 5 If we have the function for acceleration, we can integrate it and use initial conditions to solve for the velocity and position functions velocity position

Step in the direction of the derivative Euler integration For arbitrary function f (ti) with known derivative Also draw locations of new point if doubling dt or negating dt Euler pronunciation: like “oiler” Step in the direction of the derivative

Example of inaccuracy during integration For arbitrary function, f(t) Ex: wind, springs The force acting on a point may vary in space, i.e. in most cases

Integration and step size Here x is the same thing as time or t in the previous slides

Inaccuracy and instability

Runge Kutta Integration: 2nd order aka Midpoint Method Compute a “full” Euler step Evaluate f’ at midpoint Take a step from the original point using the midpoint f’ value

Runge Kutta Integration: 2nd order aka Midpoint Method For unknown function, f(t); known f ’(t)

Step size Euler Integration Midpoint Method

Integration comparison Image from http://www.physics.drexel.edu/students/courses/Comp_Phys/Integrators/simple.html

Integration comparison Image based on http://www.physics.drexel.edu/students/courses/Comp_Phys/Integrators/simple.html

Integration comparison Image based on http://www.physics.drexel.edu/students/courses/Comp_Phys/Integrators/simple.html

Additional slides

Other integration techniques Implicit Euler Huen Verlat Leapfrog

OSU CSE course: Numerical Methods 5361 http://coe-portal.cse.ohio-state.edu/pdf-exports/CSE/CSE-5361.pdf 541 (from quarter system) http://web.cse.ohio-state.edu/~crawfis/cse541/index.html

List of 5361/541 topics Mathematical Preliminaries: Derivatives, Taylor Series Representation of Numbers: Accuracy, Precision Root Finding Polynomial Interpolation Numerical Differentiation Numerical Integration Random Numbers and Monte-Carlo Techniques Linear Systems and Gaussian Elimination