State. and ZIP Code) ... Technical Report. PRO.M ... B. Neta. Naval Postgraduate School. Department of Mathematics. Code MA ...... Florida State University.
VPS-MA-91-009
NAVA POSTGRADUATE SCHOOL Monterey, California AD-A235 489
SB
ELECTE
SOFTWARE FOR THE PARALLEL SOLUTION OF SYSTEMS OF ORDINARY DIFFERENTIAL EQUATIONS
Levi Lustman Beny Neta
February 1991 Approved for public release; distribution unlimited Prepared for: Naval Postgraduate School Monterey, CA 93943
'I
0
UNCLASSIFIED
REPORT DOCUMENTATION PAGE 1.1 REPORT SICURIIY LLASII(AIION
ID
"II'I.
MAhNI.NU
UNCLASSIFIED Ja SELUIIY ILLASSIFILAIIUN AUINOMII '
J DIIItIIUNS AVAuLAdILI! Y 0
ID DE(LASSII
Approved for public release; distribution unlimited
AT ION I DOWNGRADING SLHL DULL
.1 PEISTOIMINUj URNJA
ION ItLPUOI Numet)LtS
MO)NIU~iNij OUtANiIAiIUN RLI'ORI NUMdEMIJl
NPS-MA-91-009
NPS-MA-9 1-009
NAMI:U 09P4IUHMIN6. ORULANIZAIIUN
lid
Naval Postgraduate School
bb OUII: SYMBO0L (if applicable)
Id NAME OF MNIIOtiN~G CIRjANi1AIIUN
IFMA
Naval Postgraduate School
6c ADDRESS (Ciy. State. and ZIP Code)
Monterey, CA
lb ADDRESS (City, State. andl ZIP Coc:1
93943
Monterey, CA
84 PjAWME OF FUNUINGISPONSURiNG ORGANIZATION
j
Naval Postgraduate School
8bD OFFI(E SYMBOL III aDIt able)
n ce e r( MontII
93943
9 PROCUREMENT INSTRUMENT IOENIIFICATION NUMBER
&MN Direct Funding
A
Sc ADDRESS (City. State, and ZIP Code) Motry
RE PORT
10 SOURCE OF FUNDING NUMPERS PAO0,ECT
A993PROGRAM
ELEM ENT N O
cA r t93943 i a t o n
UNIT IWORK~ SSION N O
TASK
ACCE
NO.
NO
Software for the Parallel Solution of Systems of Ordinary Differential Equations 12 PiRSONAL AUTHOR(S)
Levi Lustman and Beny Neta 0a1 TYPE OP REPORT 16 SUPPLEMENIARY
17 FIELD
114
13l.b TIME COVERED
Technical Report
PRO.M1/291
. 2/25/91j
DATE OF REPORT lye r. on?i. Day)
15 PAGE COUNT
28 February 191
28
NOTATION
(OSAII COOES SUB-GROUP
18 SUBJECTF If MS
IGROUP
lContinue on reverse if necessary and
idenity
by block
numbev)
ordinary differential equations, parallel processing, hypercube
19 ABs (RACI (Continue on reverse ifnecessary and identity by block number)
This report contains software for the solution of systems of ordinary differential
*equations on an INTEL iPSC/2 hypercube. from the second author.
A diskette is available upon request
20
OISIMUTION IAVAILAILITY OF ABSTRACT 1K3INsCtASSIFIIco1NLMITED SAME AS jja IIAME OF II(SPUNSIIILE INDIVIDUAL
0j
Levi Lustman and Beny Neta DU FORM 1473.814 MAR
21. ABSTRACT SECURITY CLASSIFICATION
nP
E oTic USERS
UNCLASSIFIED 2IA~E~TeN nde Area Code)
I 83 APR edition may be used untlexhausted All other edition%are obsoletteUCASFE
22c. 0FF I4~b~-~ MA/A
SYMBOL
SECURITY CIASSIFICATION Or THIS PAGE
Software for the Parallel Solution of Systems of Ordinary Differential Equations
L. Lustman B. Neta
Naval Postgraduate School Department of Mathematics Code MA Monterey, CA 93943
D-T$A
6
Acession For'
NTIS GRA , DTIC TAB Unannounced
01 0
Justification By_ Distribution/ Availatliity Codes
Avail and/or. Speo a
Dist
I.
,
Abstract This report contains software for the solution of systems of ordinary differential equations on an INTEL iPSC/2 hypercube. A diskette is available upon request from the second author.
, ma=a mar ~ m m mmmm
m
1
1.
Introduction
In this report we supply software for the numerical solution of systems of ordinary differential equations (ODEs) on an INTEL iPSC/2 hypercube. The first program can only be used to solve linear initial or boundary value systems of ODEs and based on an algorithm developed by Katti and Neta (1989) and improved by Lustman et al (1990). The second program is based on polynomial extrapolation and Gragg's scheme and is useful for nonlinear ODEs as well. This algorithm is described in Lustman, Neta and Gragg (1991).
2
2.
Linear Systems
In this section we give the software for the solution of linear systems of ODEs: y'(x) = Ay(x) +g(x), a < x < b y(a) = y The algorithm used was developed by Katti and Neta (1989) and improved by Lustman et al (1990). The host and node program are given. The subroutines sa, sf and putex give the matrix A, the right hand side of (1) and the exact solution (for debugging purposes) respectively. An example of input and output corresponding to these subroutines are attached.
3
C C
HOST c c solving initial value problems by multiple shooting c on INTEL iPSC/2 hypercube having 8 (maxnp) processors C
c
see
Lustman, Neta & Katti
C
" change everywhere, in both node and host programs, ndim=3 c c to whatever value is appropriate. C
program mshivph integer intype, inlen, outype, out len integer ymtype, ymlength integer n ,np,ndim,nin,nout, m , mnp integer allnodes, hostpid, nodepid parameter (nmax=lOO) parameter (ndim=3, nout~1) parameter (maxnp=8) parameter (nin=nmax*maxnp+ndim+lO) parameter (intype=lO,outype=20, inlen=4*nin # ymtype=30,ymlength=ndim* (ndim+l) *4 # outlen=4*nout,allnodes= -1 # hostpid=8, nodepid=14) common/cmn/n, ndimc, ninc, noutc #,m,mp,h, left,right,g,x real g (ndim) , x (O:nmax*maxnp) , yin (1) real vout (flout) , left , right equivalence # (n,vin(l)),(ndimc,vin(2)),(ninc,vin(3)) # ' (noutc,vin(4)) ,(m,vin(5)), (mp,vin(6)) #1 (h,vin(7)), (left,vin(8)), (right,vin(9)) #: (g (1) , vin(10) ) #, (x(O) ,vin(lO+ndim)) ndimc=ndim ninc=nin noutc=nout '61 call getcube('shoot',' call setpid (hostpid) print*,' got the maximal cube,',numnodeso,' nodes' call load( 'node' ,allnodes,nodepid) print*,' after load' print*,' enter ',ndim,' initial values g' read*, (g(i) ,i=l,ndim) print*,' enter endpoints of interval' read*, left, right print*,'solve for ',left,,