Presentation is loading. Please wait.

Presentation is loading. Please wait.

MATH 212 NE 217 Douglas Wilhelm Harder Department of Electrical and Computer Engineering University of Waterloo Waterloo, Ontario, Canada Copyright © 2011.

Similar presentations


Presentation on theme: "MATH 212 NE 217 Douglas Wilhelm Harder Department of Electrical and Computer Engineering University of Waterloo Waterloo, Ontario, Canada Copyright © 2011."— Presentation transcript:

1 MATH 212 NE 217 Douglas Wilhelm Harder Department of Electrical and Computer Engineering University of Waterloo Waterloo, Ontario, Canada Copyright © 2011 by Douglas Wilhelm Harder. All rights reserved. Advanced Calculus 2 for Electrical Engineering Advanced Calculus 2 for Nanotechnology Engineering Method of Lines

2 2 Outline This topic introduces the method of lines –Used for solving heat-conduction/diffusion and wave equations –Finite differences discretizes both time and space –Discretize only space –Use a high-quality ODE solver to find the solution over time

3 Method of Lines 3 Outcomes Based Learning Objectives By the end of this laboratory, you will: –You will understand the method of lines –You will be able to implement it using the Matlab functions implemented in previous terms

4 Method of Lines 4 Integration-by-Parts in Higher Dimensions Up to this point, we have discretized both the space and time dimensions –We will look at another approach that discretizes only the space dimensions

5 Method of Lines 5 Discretizing in Space Consider the heat-conduction/diffusion equation Discretizing the space component in one dimension gives: We will demonstrate this only in one dimension; however, the generalization to 2 and 3 dimensions is obvious…

6 Method of Lines 6 Discretizing in Time With finite differences, we divided time into discrete steps, as well: which allowed us to find

7 Method of Lines 7 Review of Finite Differences We are given the initial state of the system by u init (x) Divide the space interval into n points with n – 1 intervals

8 Method of Lines 8 Review of Finite Differences We evaluate the initial state at each of the n points

9 Method of Lines 9 Review of Finite Differences Next, given these initial values, we take the finite-difference equation to approximate the state at the next time t 2 = t 1 +  t equatio –The boundary values are defined by functions a(t) and b(t)

10 Method of Lines 10 Review of Finite Differences Now, with this approximation, we approximate the values at times t 3, t 4, etc.

11 Method of Lines 11 Method of Lines As an alternative approach, associate with each spatial point an unknown function u k (t) –Two exceptions: u 1 (t) = a(t) u n (t) = b(t) This approach was popularized by the chemical engineer William E. Schiesser in his 1991 text The Numerical Method of Lines

12 Method of Lines 12 Method of Lines In order to substitute u k (t) into our mixed partial-/finite-difference equation, we note that the solution at location x – h is u k – 1 (t) and the solution at x + h is u k + 1 (t) : We also have the initial condition: u k (t initial ) = u init (x k )

13 Method of Lines 13 Systems of IVPs Therefore, we have a system of n – 2 initial-value problems but with n unknown functions:

14 Method of Lines 14 Systems of IVPs There are two unknown functions, however, these are given by our boundary conditions:

15 Method of Lines 15 Systems of IVPs We therefore have a system of n – 2 initial-value problems –With n = 9 :

16 Method of Lines 16 Systems of IVPs Note that we can rewrite the differential equations: Thus,

17 Method of Lines 17 Systems of IVPs We can therefore write this as: where

18 Method of Lines 18 IVP Solvers from Previous Courses From MATH 211, you implemented the function function [ ts, ys ] = dp45n( f, t_int, y1, h, eps_step) where t int = [t initial, t final ] that uses the adaptive Dormand-Prince method to approximate a solution to a system of initial-value problems where we allow a maximum error of  step where we start with an initial step size in time of h starting at t initial and going to t final

19 Method of Lines 19 IVP Solvers from Previous Courses We can write the function function du = f( t, u ) M = diag( -2*ones( n - 2, 1 ) ) +... diag( ones( n - 3, 1 ), 1 ) +... diag( ones( n - 3, 1 ), -1 ); du = (kappa/h^2)*(M*u + [a(t); zeros( n – 4, 1 ); b(t)]); end

20 Method of Lines 20 Example: Dirichlet Conditions To give a specific example, consider the following heat- conduction/diffusion problem: that is,  = 0.2, on [0, 1] with with n = 9 points

21 Method of Lines 21 Example: Dirichlet Conditions To give this a description: –A bar is initial uniform at 1 –For the first second, the left-hand side is placed in contact with a heat sink at 0, after which it is switched with a heat source of 2 –For the first two seconds, the right-hand side is in contact with a body also at 1, after which it is switched with a heat sink at 0

22 Method of Lines 22 Example: Dirichlet Conditions Thus, we have: function du = f111( t, u ) n = 9; M = diag( -2*ones( n - 2, 1 ) ) +... diag( ones( n - 3, 1 ), 1 ) +... diag( ones( n - 3, 1 ), -1 ); kappa = 0.2; h = 1/8; a = @(t)(2*(t > 1)); b = @(t)(t < 2); du = (kappa/h^2)*(M*u + [a(t); zeros( n - 4, 1 ); b(t)]); end

23 Method of Lines 23 Example: Dirichlet Conditions This can be driven by: u_init = @(x)(x*0 + 1); a = @(t)(2*(t > 1)); b = @(t)(t < 2); n = 9; xs = linspace( 0, 1, n )'; [ts, us] = dp45( @f111, [0, 3], u_init( xs(2:end - 1) ), 1, 0.0001); us = [a(ts); us; b(ts)]; mesh( ts, xs, us );

24 Method of Lines 24 Example: Dirichlet Conditions With two orientations, the output is the plot:

25 Method of Lines 25 Example: Dirichlet Conditions Note that  t is larger while the system converges but becomes smaller at the discontinuities

26 Method of Lines 26 Example: Insulated Conditions To give a specific example, consider the following heat- conduction/diffusion problem: that is,  = 0.2, on [0, 1] with and an insulated right-hand boundarywith n = 9 points

27 Method of Lines 27 Example: Insulated Conditions Using the 2 nd -order divided difference approximation of the derivative: and substituting our approximations for u(b, t), u(b – h, t), and u(b – 2h, t) equate this to zero, we have: or

28 Method of Lines 28 Example: Insulated Conditions We could then substitute into the last equation to get

29 Method of Lines 29 Example: Insulated Conditions Thus, we have: function du = f112( t, u ) n = 9; M = diag( -2*ones( n - 2, 1 ) ) +... diag( ones( n - 3, 1 ), 1 ) +... diag( ones( n - 3, 1 ), -1 ); M(n - 2, n - 2) = -2/3; M(n - 2, n - 3) = 2/3; kappa = 0.2; h = 1/8; a = @(t)(t > 1); du = (kappa/h^2)*(M*u + [a(t); zeros( n - 4, 1 ); 0]); end Recall:

30 Method of Lines 30 Example: Insulated Conditions This can be driven by: u_init = @(x)(x*0 + 1); a = @(t)(t > 1); n = 9; xs = linspace( 0, 1, n )'; [ts, us] = dp45( @f111, [0, 3], u_init( xs(2:end - 1) ), 1, 0.0001); us = [a(ts); us; (4*us(end,:) - us(end - 1,:))/3]; mesh( ts, xs, us );

31 Method of Lines 31 Example: Insulated Conditions With two orientations, the output is the plot:

32 Method of Lines 32 Example: Neumann Conditions Suppose that the right-hand side is a more general Neumann condition: Again, use the approximation and substituting our approximations for u(b, t), u(b – h, t), and u(b – 2h, t) equate this to zero, we have: or

33 Method of Lines 33 The Wave Equation We can also have an initial-value problem for the wave equation: This can, of course, be generalized to two and three dimensions: –There is one unknown function for each point

34 Method of Lines 34 The Wave Equation Recall that our function dp45.m only works with a 1 st -order differential equation –We must therefore convert the 2 nd -order ODE into a 1 st -order ODE

35 Method of Lines 35 The Wave Equation We therefore have a system of 2(n – 2) initial-value problems –With n = 9 :

36 Method of Lines 36 The Wave Equation Note that we can rewrite the differential equations:

37 Method of Lines 37 The Wave Equation We can therefore write this with :

38 Method of Lines 38 The Wave Equation Where the function f is defined as:

39 Method of Lines 39 The Wave Equation Thus, we have: function [dw] = f113( t, w ) n = 17; c = 1; h = 1/8; r = (c/h)^2; Id = ones( n - 2, 1 ); Id_off = ones( n - 3, 1 ); Z = zeros( n - 2, n - 2 ); M = diag( -2*r*Id ) + diag( r*Id_off, 1 ) + diag( r*Id_off, -1 ); M = [Z eye( n - 2, n - 2 ); M Z]; v = zeros( 2*n - 4, 1 ); a = @(t)(sin(3*t)); b = @(t)(0*t); v(n - 1) = r*a(t); v(end) = r*b(t); dw = M*w + v; end

40 Method of Lines 40 The Wave Equation This can be driven by: u_init = @(x)(x*0); du_init = @(x)(x*0); a = @(t)(sin(3*t)); b = @(t)(0*t); n = 17; xs = linspace( 0, 1, n )'; U_init = [u_init( xs(2:end - 1) ); du_init( xs(2:end - 1) )]; [ts, us] = dp45( @f113, 0, 10, U_init, 1, 0.0001); size( us ) u = [a(ts); us(1:(n - 2), :); b(ts)]; mesh( ts, xs, u ); du = [cos(3*ts); us((n - 1):end, :); 0*ts]; % Plot the derivative... mesh( ts, xs, du );

41 Method of Lines 41 The Wave Equation The plot of the solution and the derivative are here:

42 Method of Lines 42 Finite Element Methods It will also work equally effectively for finite element methods: –The elements define the relationship between a function defined at a point and its neighbouring functions

43 Method of Lines 43 Summary In this topic, we have covered the method of lines: –We discretize only the space component –This creates a system of initial-value problems –This may be solved using a high-accuracy adaptive ODE solver

44 Method of Lines 44 References [1]Schiesser, W. E., The Numerical Method of Lines, Academic Press, 1991.

45 Method of Lines 45 Usage Notes These slides are made publicly available on the web for anyone to use If you choose to use them, or a part thereof, for a course at another institution, I ask only three things: –that you inform me that you are using the slides, –that you acknowledge my work, and –that you alert me of any mistakes which I made or changes which you make, and allow me the option of incorporating such changes (with an acknowledgment) in my set of slides Sincerely, Douglas Wilhelm Harder, MMath dwharder@alumni.uwaterloo.ca


Download ppt "MATH 212 NE 217 Douglas Wilhelm Harder Department of Electrical and Computer Engineering University of Waterloo Waterloo, Ontario, Canada Copyright © 2011."

Similar presentations


Ads by Google