node14.html
来自「htmdoc for html coding」· HTML 代码 · 共 857 行 · 第 1/3 页
HTML
857 行
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 3.2 Final//FR"><!-- Converted with LaTeX2HTML 95.1 (Fri Jan 20 1995) --><!-- by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --><!-- Modified Simulog 03/97 --><HTML><HEAD><TITLE>1.2 The modules</TITLE><LINK REL=STYLESHEET TYPE="text/css" HREF="./Modulef.css" TITLE="Modulef CSS"><meta name="description" value="1.2 The modules"><meta name="keywords" value="Guide5"><meta name="resource-type" value="document"><meta name="distribution" value="global"></HEAD><BODY BGCOLOR="#FFFFFF"><P> <IMG SRC="../icons/smallmod.gif" WIDTH=211 HEIGHT=50 ALIGN=BOTTOM ALT="Modulef"><A NAME=tex2html471 HREF="node13.html"><IMG BORDER=0 ALIGN=BOTTOM SRC="../icons/previous_motif.gif" ALT="previous"></A><A NAME=tex2html477 HREF="node12.html"><IMG BORDER=0 ALIGN=BOTTOM SRC="../icons/up_motif.gif" ALT="up"></A><A NAME=tex2html479 HREF="node15.html"><IMG BORDER=0 ALIGN=BOTTOM SRC="../icons/next_motif.gif" ALT="next"></A><A NAME=tex2html481 HREF="node2.html"><IMG BORDER=0 ALIGN=BOTTOM SRC="../icons/contents_motif.gif" ALT="contents"></A><A HREF="../Guide5-18/node14.html"><IMG BORDER=0 SRC="../icons/zoom18.gif" ALIGN=BOTTOM ALT="[BIG]"></A><A HREF="../Guide5-14/node14.html"><IMG BORDER=0 SRC="../icons/zoom14.gif" ALIGN=BOTTOM ALT="[Normal]"></A><A HREF="../Guide5-10/node14.html"><IMG BORDER=0 SRC="../icons/zoom10.gif" ALIGN=BOTTOM ALT="[small]"></A><BR><B> Next: </B> <A NAME=tex2html480 HREF="node15.html">1.3 The algorithms</A><B>Up: </B> <A NAME=tex2html478 HREF="node12.html">1 Direct methods</A><B> Prev: </B> <A NAME=tex2html472 HREF="node13.html">1.1 Introduction</A><B><A HREF="node2.html" >Contents</A></B><HR SIZE=3 WIDTH="75%"><H1><A NAME=SECTION04120000000000000000>1.2 The modules</A></H1><P><P><P>This part gives a presentation of the different modules currently available in the code, along with theirutilization context and parameters. Concrete computational examples are given in chapter 6.<P><H2><A NAME=SECTION04121000000000000000>1.2.1 ASEMBV: assembly of B</A></H2><P><A NAME=asembv> </A><P><DL COMPACT><DT>Aim:<DD> Assemble the element right-hand-sides (forces, pressures, stresses, flux, <b>...</b>) by packets, in order to use the computer's parallelization and vectorization possibilities to the best.<P><DT>Utilization:<DD> <P><UL><LI> dimension array M (in the blank common),<LI> call INITI, <LI> create the input data structure, TAE (and eventually NDL1). </UL><P>Call the module:<P><PRE> CALL ASEMBV(M,NOT,NDSM,NCODSB,NFTAE,NITAE, + NFNDL1,NINDL1,NFB,NIB,NTB)</PRE><P>where:<UL><LI> M: the super array,<LI> NOT: the number of the array to assemble of the element arrays in structure TAE,<LI> NDSM: the number of RHSs,<LI> NCODSB: the storage code of the output data structures B(always non-symmetric, i.e. NCODSB = -1),<LI> NFTAE: the number of the support file of I.D.S. TAE,<LI> NITAE: its level number,<LI> NFNDL1: the number of the support file of I.D.S. NDL1,<LI> NINDL1: its level number,<LI> NFB: the number of the support file of O.D.S. B,<LI> NIB: its level number,<LI> NTB: the number of arrays associated with O.D.S. B (to be input as data if NTB <b>></b> 0).</UL> </DL><P><H2><A NAME=SECTION04122000000000000000>1.2.2 ASMAPS: assembly of MUA</A></H2><P><DL COMPACT><DT>Aim:<DD> Assemble the element symmetric or non-symmetric matrices, in the form of a skyline matrix<A NAME=1501> </A>, <b>A</b> (stiffness matrix, mass matrix, <b>...</b>), in secondarymemory.<P><DT>Utilization:<DD> <P><UL><LI> dimension array M (in the blank common),<LI> call INITI, <LI> create the input data structure, TAE (and eventually NDL1),<LI> execute module PREPAC to initialize structure MUA, and create pointer MUA4.<P></UL><P>Call the module:<P><PRE> CALL ASMAPS(M,NOT,NFTAE,NITAE,NFNDL1,NINDL1, + NFMUAE,NIMUAE,NFMUAS,NIMUAS)</PRE><P>where<P><UL><LI> M: the super array,<LI> NOT: the number of the array to assemble of the element arrays in structure TAE,<LI> NFTAE: the number of the support file of the I.D.S. TAE (always <b>></b> 0),<LI> NITAE: its level number,<LI> NFNDL1: the number of the support file of I.D.S. NDL1,<LI> NINDL1: its level number,<LI> NFMUAE: the number of the support file of I.D.S. MUA, direct access file (always <b><</b> 0),<LI> NIMUAE: its level number,<LI> NFMUAS: the number of the support file of O.D.S. MUA, direct access file (always <b><</b> 0),<LI> NIMUAS: its level number. The O.D.S. can be identical to the I.D.S. (NIMUAS = NIMUAE)or distinct (NIMUAS <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img3.gif"> NIMUAE).</UL> </DL><P><H2><A NAME=SECTION04123000000000000000>1.2.3 ASMBMS: assembly of B</A></H2><P><DL COMPACT><DT>But:<DD> Assembly of the element RHSs(forces, pressures, stresses, flux, <b>...</b>) in secondary memory.<P><DT>Utilization:<DD> <UL><LI> dimension array M (in the blank common),<LI> call INITI,<LI> create input data structure TAE (and eventually NDL1).</UL><P>Call the module:<PRE> CALL ASMBMS(M,NOT,NDSM,NCODSB,NFTAE,NITAE, + NFNDL1,NINDL1,NFB,NIB,NTB)</PRE><P>where:<P><UL><LI> M: the super array,<LI> NOT: the number of the array to assemble of the element arrays in structure TAE,<LI> NDSM: the number of RHSs,<LI> NCODSB: the storage code for output data structure B(always non-symmetric, NCODSB = -1),<LI> NFTAE: the number of the support file of I.D.S. TAE,<LI> NITAE: its level number,<LI> NFNDL1: the number of the support file of I.D.S. NDL1,<LI> NINDL1: its level number,<LI> NFB: the number of the support file of O.D.S. B, direct access file (always <b><</b> 0),<LI> NIB: its level number,<LI> NTB: the number of arrays associated with O.D.S. B (to be input as data if NTB <b>></b> 0)</UL> </DL><P><H2><A NAME=SECTION04124000000000000000>1.2.4 ASSMUA: assembly of MUA</A></H2><P><DL COMPACT><DT>Aim:<DD> Assemble the element matrices by packets, in the form of a skyline matrix, <b>A</b> <A NAME=1516> </A> (stiffness matrix, mass matrix, <b>...</b>), in order touse the computer's parallelization and vectorization possibilities to the best.<P><DT>Utilization:<DD> <P><UL><LI> dimension array M (in the blank common),<LI> call INITI,<LI> create the input data structure TAE (and eventually NDL1),<LI> execute module PREPAC to initialize structure MUA, and create pointer MUA4.</UL><P>Call the module:<P><PRE> CALL ASSMUA(M,NOT,NFTAE,NITAE,NFNDL1,NINDL1, + NFMUAE,NIMUAE,NFMUAS,NIMUAS)</PRE><P>where:<P><UL><LI> M: the super array,<LI> NOT: the number of the array to assemble of the element arrays in structure TAE,<LI> NFTAE: the number of the support file of I.D.S. TAE,<LI> NITAE: its level number,<LI> NFNDL1: the number of the support file of I.D.S. NDL1,<LI> NINDL1: its level number,<LI> NFMUAE: the number of the support file of I.D.S. MUA (incomplete),<LI> NIMUAE: its level number,<LI> NFMUAS: the number of the support file of O.D.S. MUA,<LI> NIMUAS: its level number. The O.D.S. can be identical to the I.D.S. (NIMUAS = NIMUAE), or distinct (NIMUAS <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img3.gif"> NIMUAE).</UL> </DL><P><H2><A NAME=SECTION04125000000000000000>1.2.5 CHOLPC: Cholesky factorization</A></H2><P><DL COMPACT><DT>Aim:<DD> Perform the Cholesky factorization<A NAME=1524> </A>, in main memory, ofa positive definite symmetric matrix <b>A</b><A NAME=1525> </A>, already assembled in structure MUA.<P><DT>Utilization:<DD> <UL><LI> dimension array M (in the blank common),<LI> call INITI,<LI> create the input data structure MUA (and eventually NDL1),<LI> execute module PREPAC, then module ASSMUA to create the input data structure MUA, and eventuallymodule CLIMPC to impose the boundary conditions.</UL><P>Call the module:<P><PRE> CALL CHOLPC(M,EPS,NENTRE,NFNDL1,NINDL1, + NFMUAE,NIMUAE,NFMUAS,NIMUAS,NRETOU)</PRE><P>where:<P><UL><LI> M: the super array,<LI> EPS: the minimum value accepted for a pivot <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img35.gif"> according to the criterion<IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img36.gif">,<LI> NENTRE: if NENTRE = 0 the module returns to the calling program as soon as a pivot is smaller than EPS, or continue the computations if NENTRE = 1,<LI> NFNDL1: the number of the support file of I.D.S. NDL1,<LI> NINDL1: its level number,<LI> NFMUAE: the number of the support file of I.D.S. MUA,<LI> NIMUAE: its level number,<LI> NFMUAS: the number of the support file of O.D.S. MUA,<LI> NIMUAS: its level number (the O.D.S. can be distinct from the I.D.S., for example if we want to assembleseveral element arrays of structure TAE in an independent manner),<LI> NRETOU: output parameter: NRETOU = 1 if at least one pivot was judged too small, NRETOU = 0 if not.</UL> </DL><P><H2><A NAME=SECTION04126000000000000000>1.2.6 CHOLPS: Cholesky factorization in secondary memory</A></H2><P><DL COMPACT><DT>Aim:<DD> Perform the Cholesky factorization, in secondary memory in direct access<A NAME=1536> </A>,of a positive definite symmetric matrix <b>A</b><A NAME=1537> </A>, already assembled in a MUA structure.<P><DT>Utilization:<DD> <P><UL><LI> dimension array M (in the blank common),<LI> call INITI,<LI> create the input data structure MUA (and eventually NDL1),<LI> execute module PREPAC, then module ASMAPS to create the input data structure MUA, andeventually module CLIMPS to impose the boundary conditions.</UL><P>Call the module:<P><PRE> CALL CHOLPS(M,EPS,NENTRE,NFNDL1,NINDL1, + NFMUAE,NIMUAE,NFMUAS,NIMUAS,NRETOU)</PRE><P>where:<P><UL><LI> M: the super array,<LI> EPS: the minimum value accepted for a pivot <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img35.gif"> according to the criterion<IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img36.gif">,<LI> NENTRE: if NENTRE = 0 the module returns to the calling program as soon as a pivot is smaller than EPS, or continue the computations if NENTRE = 1,<LI> NFNDL1: the number of the support file of I.D.S. NDL1,<LI> NINDL1: its level number,<LI> NFMUAE: the number of the support file of I.D.S. MUA,direct access file (always <b><</b> 0),<LI> NIMUAE: its level number,<LI> NFMUAS: the number of the support file of O.D.S. MUA, direct access file (always <b><</b> 0),<LI> NIMUAS: its level number. The O.D.S. can be identical to the I.D.S. (NIMUAS = NIMUAE), or distinct (NIMUAS <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img3.gif"> NIMUAE).<P><DL COMPACT><DT>Note:<DD> If NFMUAE and NFMUAS are distinct, the number of words in their pages must be equal!<P> </DL><LI> NRETOU: output parameter: NRETOU = 1 if at least one pivot was judged too small, NRETOU = 0 if not.</UL> </DL><P><H2><A NAME=SECTION04127000000000000000>1.2.7 CLIMPC: boundary conditions</A></H2>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?