+ All Categories
Home > Documents > OEV_poster_gernot_a0

OEV_poster_gernot_a0

Date post: 25-Nov-2014
Category:
Upload: michael-koller
View: 105 times
Download: 0 times
Share this document with a friend
Popular Tags:
1
AN ADAPTIVE SOLVER FOR AN ADAPTIVE SOLVER FOR PARABOLIC PARTIAL PARABOLIC PARTIAL DIFFERENTIAL EQUATIONS DIFFERENTIAL EQUATIONS Student Author: DI Gernot Pulverer Faculty Advisor: Prof. Dr. Ewa B. Weinmüller This work was supported by the project “Development of adaptive software for singular boundary value problems” of the Austrian Science Fund (FWF) under grant no. P17253-N12, project leader: A.o. Univ. Prof. Dr. Ewa B. Weinmüller BIBLIOGRAPHY BIBLIOGRAPHY [1] I. Rachunková, O. Koch, G. Pulverer, and E. Weinmüller. On a singular boundary value problem arising in the theory of shallow membrane caps. Math. Anal. and Appl., 332:523-541, 2007 [2] S. Stanek, G. Pulverer, and E. Weinmüller. Analysis and numerical solution of positive and dead core solutions of singular two-point boundary value problems. Comp. Math. Appl ., 56:1820-1837, 2008. [3] G. Kitzhofer, O. Koch, P. Lima, and E. Weinmüller. Efficient numerical solution of the density profile equation in hydrodynamics. J. Sci. Comput., 32:411-424, 2006. [4] W. Auzinger, G. Kneisl, O. Koch, and E. Weinmüller. A collocation code for boundary value problems in ordinary differential equations. Numer. Algorithms, 33:27, 2003. [5] E. Rothe. Zweidimensionale parabolische Randwertaufgaben als Grenzfall eindimensionaler AN EXAMPLE AN EXAMPLE As an example, consider the imaginary time Schrödinger equation: Here, V:R→R is a smooth potential that is 2π- periodic. The following initial/boundary conditions are used: with 0 ≤ t ≤ b and –π ≤ x ≤ π. For numerical calculations we use and Figure 1 shows the numerical solution of the imaginary time Schrödinger equation. The lines drawn in x direction visualize the size of the time steps. INTRODUCTION INTRODUCTION The aim of the work presented in this poster is an efficient solution of initial/boundary value problems (IBVPs) of partial differential equations (PDEs) of the type with initial and boundary conditions where the solution u(x,t) is a vector-valued function and a ≤ x ≤ b, t ≥ 0. SOFTWARE SOFTWARE TRANSFORMATION TRANSFORMATION In order to solve Problem (1) (3), the transverse method of lines approach is used, compare [5]. This method is based on a discretization in time so that each time step of the resulting procedure leads to a boundary value problem (BVP) for a system of ordinary differential equations (ODEs). For the time discretization we apply the implicit Euler method. subject to initial/boundary conditions (2) – (3). With v n (x) := u(x,t n ), n ≥ 0, t 0 = 0, in each time step a system of ODEs of second order for v n+1 needs to be solved: with boundary conditions Note that v n is given as the numerical solution of the BVP (4) – (5) of the previous time step and v 0 (x) = u 0 (x). Thus, Problem (4) – (5) is indeed a BVP for a system of ODEs. The approximation for u is a polynomial function which satisfies the differential equation at m interior collocation points The code Timetraveller is a Matlab solver for the numerical solution of IBVPs of PDEs. Using the transverse method of lines, a sequence of BVPs for ODEs results from semi-discretization in time. These problems can be solved by our Matlab code BVPSuite to find the numerical solution adaptively in both, space and time. The Matlab solver BVPSuite is equipped with an error estimation procedure and a grid adaptation strategy and has already been successfully applied to a variety of problems, see for example [1] – [3]. BVPSuite uses the collocation method for the solution of the BVPs. The numerical approximation is computed on a mesh In Timetraveller, the error estimation is based on the mesh-halving principle in both, the space and the time direction. In space, the error estimator of BVPSuite divides each interval [ξ i , ξ i+1 ] into two sub-intervals of equal length to calculate a numerical solution on a denser mesh and thereby estimate the error. In time, a step from t n to t n+1 and two steps with a halved step size from t n to t n+1 are made to get the two solutions for the error estimation. Comparing the solutions at t n+1 provides the error estimate Based on the error estimate, the grid is adapted in order to satisfy the tolerance on a mesh with a number of mesh points as small as possible. The important question is how to optimally locate these points and how many are necessary to satisfy the required tolerance in a most efficient way. CONCEPT OF ADAPTIVITY CONCEPT OF ADAPTIVITY The efficient solution of problem (4) (5) requires the implementation of an adaptive algorithm for the numerical solution of 2pBVPs for ODEs, see for instance [4] and references therein. Figure 2 shows the mesh of an adaptive approach compared to an equidistant mesh. Note that both meshes allow the solution of the corresponding 2pBVP to the same accuracy, though in the equidistant mesh the number of points is 7 times larger than in the non-equidistant mesh. For difficult problems the number of time steps may become large. Since every time step requires the solution of a full two-point BVP (2pBVP), an efficient way of solving these problems is crucial and a powerful grid adaptation algorithm is necessary. Adapting the mesh to decrease the number of points is accomplished via a monitor function which identifies the regions where more points are needed to improve the accuracy of the numerical solution. ADAPTIVE MESH SELECTION ADAPTIVE MESH SELECTION Figure 3 shows how a monitor function is used to transform a uniform mesh in x into a non-uniform mesh in ξ(x). There are different choices for the monitor function such as arc length, defect, local or global error. For our calculations we use the residual which is given by inserting the collocation solution p(x) into (4). We first update the mesh density function Φ on a coarse mesh. To satisfy a tolerance requirement, we then compute the necessary number of points where q is the order of the method. ALGORITHM ALGORITHM Most codes are using an adaptive approach that changes the mesh density function Φ and the number of mesh points N in the same step. But the estimation of N is based on the error estimate for the numerical solution on the last mesh density. Thus, these codes are at great risk to solve to a much higher accuracy than requested. To overcome this difficulty we present the following algorithm: Update Φ on a coarse mesh as long as Ñ ≤ 0.9N. If Ñ > 0.9N, keep the density and update N. Update N until the tolerance requirement is met. Figure 4 shows that without this approach, another algorithm would have used over 900 mesh points in the second iteration instead of the 113 which were sufficient in our approach. The difference is caused due to the fact that only if the density has converged, the number of points is accepted. This guarantees that the points are in the best place. The coarse mesh has 50 points, so the update of the density is very cheap compared to the very time consuming calculation of the solution on 900 points.
Transcript
Page 1: OEV_poster_gernot_a0

AN ADAPTIVE SOLVER FOR AN ADAPTIVE SOLVER FOR PARABOLIC PARTIAL PARABOLIC PARTIAL

DIFFERENTIAL EQUATIONSDIFFERENTIAL EQUATIONS

AN ADAPTIVE SOLVER FOR AN ADAPTIVE SOLVER FOR PARABOLIC PARTIAL PARABOLIC PARTIAL

DIFFERENTIAL EQUATIONSDIFFERENTIAL EQUATIONS

Student Author: DI Gernot PulvererFaculty Advisor: Prof. Dr. Ewa B. WeinmüllerThis work was supported by the project “Development of adaptive software for singular boundary value problems” of the Austrian Science Fund (FWF) under grant no. P17253-N12, project leader: A.o. Univ. Prof. Dr. Ewa B. Weinmüller

BIBLIOGRAPHYBIBLIOGRAPHYBIBLIOGRAPHYBIBLIOGRAPHY

[1] I. Rachunková, O. Koch, G. Pulverer, and E. Weinmüller. On a singular boundary value problem arising in the theory of shallow membrane caps. Math. Anal. and Appl., 332:523-541, 2007[2] S. Stanek, G. Pulverer, and E. Weinmüller. Analysis and numerical solution of positive and dead core solutions of singular two-point boundary value problems. Comp. Math. Appl., 56:1820-1837, 2008.[3] G. Kitzhofer, O. Koch, P. Lima, and E. Weinmüller. Efficient numerical solution of the density profile equation in hydrodynamics. J. Sci. Comput., 32:411-424, 2006.[4] W. Auzinger, G. Kneisl, O. Koch, and E. Weinmüller. A collocation code for boundary value problems in ordinary differential equations. Numer. Algorithms, 33:27, 2003.[5] E. Rothe. Zweidimensionale parabolische Randwertaufgaben als Grenzfall eindimensionaler Randwertaufgaben. Math. Ann. 102: 650-670, 1930.

AN EXAMPLEAN EXAMPLEAN EXAMPLEAN EXAMPLE

As an example, consider the imaginary time Schrödinger equation:

Here, V:R→R is a smooth potential that is 2π-periodic. The following initial/boundary conditions are used:

with 0 ≤ t ≤ b and –π ≤ x ≤ π. For numerical calculations we use

and

Figure 1 shows the numerical solution of the imaginary time Schrödinger equation. The lines drawn in x direction visualize the size of the time steps.

INTRODUCTIONINTRODUCTIONINTRODUCTIONINTRODUCTION

The aim of the work presented in this poster is an efficient solution of initial/boundary value problems (IBVPs) of partial differential equations (PDEs) of the type

with initial and boundary conditions

where the solution u(x,t) is a vector-valued function and a ≤ x ≤ b, t ≥ 0.

SOFTWARESOFTWARESOFTWARESOFTWARE

TRANSFORMATIONTRANSFORMATIONTRANSFORMATIONTRANSFORMATION

In order to solve Problem (1) – (3), the transverse method of lines approach is used, compare [5]. This method is based on a discretization in time so that each time step of the resulting procedure leads to a boundary value problem (BVP) for a system of ordinary differential equations (ODEs).

For the time discretization we apply the implicit Euler method.

subject to initial/boundary conditions (2) – (3). With vn(x) := u(x,tn), n ≥ 0, t0 = 0, in each time step a system of ODEs of second order for vn+1

needs to be solved:

with boundary conditions

Note that vn is given as the numerical solution of the BVP (4) – (5) of the previous time step and v0(x) = u0(x). Thus, Problem (4) – (5) is indeed a BVP for a system of ODEs.

The approximation for u is a polynomial function

which satisfies the differential equation at m interior collocation points

The code Timetraveller is a Matlab solver for the numerical solution of IBVPs of PDEs. Using the transverse method of lines, a sequence of BVPs for ODEs results from semi-discretization in time. These problems can be solved by our Matlab code BVPSuite to find the numerical solution adaptively in both, space and time. The Matlab solver BVPSuite is equipped with an error estimation procedure and a grid adaptation strategy and has already been successfully applied to a variety of problems, see for example [1] – [3].

BVPSuite uses the collocation method for the solution of the BVPs. The numerical approximation is computed on a mesh

In Timetraveller, the error estimation is based on the mesh-halving principle in both, the space and the time direction. In space, the error estimator of BVPSuite divides each interval [ξi, ξi+1] into two sub-intervals of equal length to calculate a numerical solution on a denser mesh and thereby estimate the error. In time, a step from tn to tn+1 and two steps with a halved step size from tn to tn+1 are made to get the two solutions for the error estimation. Comparing the solutions at tn+1 provides the error estimate

Based on the error estimate, the grid is adapted in order to satisfy the tolerance on a mesh with a number of mesh points as small as possible. The important question is how to optimally locate these points and how many are necessary to satisfy the required tolerance in a most efficient way.

CONCEPT OF ADAPTIVITYCONCEPT OF ADAPTIVITYCONCEPT OF ADAPTIVITYCONCEPT OF ADAPTIVITY

The efficient solution of problem (4) – (5) requires the implementation of an adaptive algorithm for the numerical solution of 2pBVPs for ODEs, see for instance [4] and references therein.

Figure 2 shows the mesh of an adaptive approach compared to an equidistant mesh. Note that both meshes allow the solution of the corresponding 2pBVP to the same accuracy, though in the equidistant mesh the number of points is 7 times larger than in the non-equidistant mesh.

For difficult problems the number of time steps may become large. Since every time step requires the solution of a full two-point BVP (2pBVP), an efficient way of solving these problems is crucial and a powerful grid adaptation algorithm is necessary.

Adapting the mesh to decrease the number of points is accomplished via a monitor function which identifies the regions where more points are needed to improve the accuracy of the numerical solution.

ADAPTIVE MESH SELECTIONADAPTIVE MESH SELECTIONADAPTIVE MESH SELECTIONADAPTIVE MESH SELECTION

Figure 3 shows how a monitor function is used to transform a uniform mesh in x into a non-uniform mesh in ξ(x).

There are different choices for the monitor function such as arc length, defect, local or global error. For our calculations we use the residual

which is given by inserting the collocation solution p(x) into (4). We first update the mesh density function Φ on a coarse mesh. To satisfy a tolerance requirement, we then compute the necessary number of points

where q is the order of the method.

ALGORITHMALGORITHMALGORITHMALGORITHM

Most codes are using an adaptive approach that changes the mesh density function Φ and the number of mesh points N in the same step. But the estimation of N is based on the error estimate for the numerical solution on the last mesh density. Thus, these codes are at great risk to solve to a much higher accuracy than requested. To overcome this difficulty we present the following algorithm:

Update Φ on a coarse mesh as long as Ñ ≤ 0.9N. If Ñ > 0.9N, keep the density and update N. Update N until the tolerance requirement is met.

Figure 4 shows that without this approach, another algorithm would have used over 900 mesh points in the second iteration instead of the 113 which were sufficient in our approach. The difference is caused due to the fact that only if the density has converged, the number of points is accepted. This guarantees that the points are in the best place. The coarse mesh has 50 points, so the update of the density is very cheap compared to the very time consuming calculation of the solution on 900 points.

Recommended