node14.html

来自「htmdoc for html coding」· HTML 代码 · 共 857 行 · 第 1/3 页

HTML
857
字号
    <LI>  if NIVEAU = 3, the complete solution <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img55.gif">    is performed,   <LI>  if NIVEAU = 4, the backward substitution <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img56.gif"> is performed,</UL><LI> NCLRL: the number of boundary conditions in terms of linear relations,<LI> NFNDL1:  the number of the support file of I.D.S. NDL1,<LI> NINDL1: its level number,<LI> NFMUA: the number of the support file of I.D.S.  MUA,<LI> NIMUA: its level number,<LI> NFBDCL: the number of the support file of I.D.S.   BDCL,<LI> NIBDCL:  its level number,<LI> NFBE: the number of the support file of I.D.S. B (containing the RHS),<LI> NIBE:  its level number,<LI> NFBS:  the number of the support file of O.D.S. B (containing the solution),<LI> NIBS:  its level number,<DL COMPACT><DT>Note:<DD> If NIBS = NIBE, the solution overwrites the RHS !<P> </DL></UL>  </DL><P><H2><A NAME=SECTION041213000000000000000>1.2.13 DRGAPC: Gauss forward- and backsubstitution</A></H2><P><A NAME=1640>&#160;</A><P> <DL COMPACT><DT>Aim:<DD> Performs  the solution of a linear system in main memory,using Gauss factorization<A NAME=1642>&#160;</A>.The lower triangular matrix  <b>L</b> and the upper triangular matrix <b>U</b> are already stored in structure MUA.<P><DT>Utilization:<DD>  <UL><LI> dimension array M (in the blank common),<LI> call INITI,<LI> create the input data structures MUA and B (and eventually NDL1),<LI> execute module GAUSPC, to perform the Gauss factorization of matrix <b>A</b>:<IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img57.gif"></UL><P>Call the module:<P><PRE>        CALL DRGAPC(M,NIVEAU,NCLRL,NFNDL1,NINDL1,     +            NFMUA,NIMUA,NFBE,NIBE,     +            NFBDCL,NIBDCL,NFBS,NIBS)</PRE><P>where:<P><UL><LI> M: the super array,<LI> NIVEAU: the type of solution chosen:<UL><LI>  if NIVEAU = 0, only the backward substitution <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img58.gif">  is performed,    <LI>  if NIVEAU = 1, only the forward substitution <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img51.gif"> is performed,    <LI>  if NIVEAU = 2, the complete solution <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img59.gif">    is performed,</UL><LI> NCLRL: the number of boundary conditions in terms of linear relations,<LI> NFNDL1:  the number of the support file of I.D.S. NDL1,<LI> NINDL1: its level number,<LI> NFMUA: the number of the support file of I.D.S.  MUA,<LI> NIMUA: its level number,<LI> NFBDCL: the number of the support file of I.D.S.   BDCL,<LI> NIBDCL:  its level number,<LI> NFBE: the number of the support file of I.D.S. B (containing the RHS),<LI> NIBE:  its level number,<LI> NFBS:  the number of the support file of O.D.S. B (containing the solution),<LI> NIBS:  its level number,<DL COMPACT><DT>Note:<DD> If NIBS = NIBE, the solution overwrites the RHS !<P> </DL></UL>  </DL><P><H2><A NAME=SECTION041214000000000000000>1.2.14 FRONT: frontal method</A></H2><P><A NAME=1653>&#160;</A><P><DL COMPACT><DT>Aim:<DD> Assembles the linear system, imposes the boundary conditions, andperforms the solution in main memory using the frontal method.<P><DT>Utilization:<DD>  <UL><LI> dimension array M (in the blank common),<LI> call INITI,<LI> create file NFFRON using module PREPAF.</UL><P>Call the module:<P><PRE>        CALL FRONT(M,NFFRON,NFTAEM,NITAEM,NFTAES,NITAES,     +           NFGAUS,NFBDCL,NIBDCL,NFB,NIB,NTB,     +           NFNDL1,NINDL1,NTYPFR,LF,     +           NOT1,NOT2,NDSM,EPS,VTG)</PRE><P>where:<P><UL><LI> M: the super array,<LI> NFFRON: the number of the data support file for the frontal method(created by module PREPAF, always <b>&gt;0</b>),<LI> NFTAEM: the number of the support file of structure TAE containing the element matrices,<LI> NITAEM: its level number,<LI> NFTAES: the number of the support file of structure TAE containing the element RHSs (can be equal to  NFTAEM)<LI> NITAES: its level number (can be equal to NITAEM),<LI> NFGAUS: the number of the support file containing the results of the frontal method (created by  module FRONT)<LI> NFBDCL: the number of the support file of I.D.S. BDCL,<LI> NIBDCL: its level number,<LI> NFB:  the number of the support file of I.D.S. B (containing the RHS),<LI> NIB: its level number,<LI> NTB: the number of associated arrays,<LI> NFNDL1: the number of the support file of I.D.S. NDL1,<LI> NINDL1: its level number, <LI> NTYPFR: the number of frontal types,<LI> LF: integer array of length NTYPFR, (created by PREPAF)<LI> NOT1: the number of the element matrix array in structure  TAE,<LI> NOT2: the number of the element RHS array in structure TAE,<LI> NDSM: the RHSs,<LI> EPS: the minimum value allowed for an element in the frontal matrix(in absolute value),<LI> VTG:  multiplication value of the diagonal coefficients with prescribed degrees of freedom.<DL COMPACT><DT>Note:<DD> Parameters NTYPFR and LF (array of length NTYPFR) must be input by the user    if modules     <b> PREPAF</b> and <b> FRONT</b> are not executed during the same job.<P> </DL></UL>  </DL><P><H2><A NAME=SECTION041215000000000000000>1.2.15 GAUSPC:  Gauss factorization</A></H2><P><A NAME=1665>&#160;</A><P><DL COMPACT><DT>Aim:<DD> Perform the Gauss factorization,  in main memory, ofa non-singular matrix <b>A</b>, 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).</UL>(eg  execute module PREPAC, then module ASSMUA to create the input data structure MUA)<P>Call the module:<P><PRE>        CALL GAUSPC(M,EPS,NENTRE,NFNDL1,NINDL1,     +            NFMUAE,NIMUAE,NFMUAS,NIMUAS,NRETOU)</PRE><P>where:<P><UL><LI> M: the super array,<LI> EPS: <IMG BORDER=0 ALIGN=BOTTOM ALT="" SRC="img46.gif">, 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="img60.gif"><LI> NENTRE: if NENTRE = 0 the module returns to the calling program as soon as a pivot is smaller that 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. (NIMUAS <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img3.gif"> NIMUAE), or overwrite it(NIMUAS = NIMUAE)),<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=SECTION041216000000000000000>1.2.16 PREPAC: computation of pointers for MUA</A></H2><P><A NAME=1676>&#160;</A><P><DL COMPACT><DT>Aim:<DD> Determine the pointers of matrix <b>A</b>,  and compute the sizes of data structures MUA and B.<P><DT>Utilization:<DD>  <UL><LI> dimension array M (in the blank common),<LI> call INITI,<LI> create the input data structure MAIL and, eventually,  NDL1 and BDCL.<P></UL><P>Call the module:<P><PRE>        CALL PREPAC(M,NNOMAX,ND,NDSM,NCLRL,NCODSA,NTY,     +            NFMAIL,NIMAIL,NFNDL1,NINDL1,     +            NFBDCL,NIBDCL,NFMUA,NIMUA,NTMUA,     +            LBDP,LBDPDL,MCNDL1,MCMUA,MCB)</PRE><P>where:<P><UL><LI> M:  the super array,<LI> NNOMAX: the maximum number of nodes among all the element types,<LI> ND: the number of degrees of freedom at each node, if constant (0 if not)<LI> NDSM: the number of RHSs,<LI> NCLRL: the number of boundary conditions in terms of linear relations,<LI> NCODSA: the matrix storage code,<LI>NCODSA  <b>&gt;</b> 0: symmetric storage of the lower triangular part,<LI>NCODSA  = 0:  diagonal storage,<LI>NCODSA  <b>&lt;</b> 0: non-symmetric storage of the entire matrix,<LI> NTY: the type of arrays MUA5 and B4 to assemble,<LI> NFMAIL: the number of the support file of I.D.S. MAIL,<LI> NIMAIL: its level number,<LI> NFNDL1: the number of the support file of I.D.S. NDL1,<LI> NINDL1: its level number,<LI> NFBDCL: the number of the support file of I.D.S. BDCL,<LI> NIBDCL: its level number,<LI> NFMUA: the number of the support file of O.D.S.  MUA,<LI> NIMUA: its level number,<LI> NTMUA: the number of associated arrays,<LI> LBDP: output parameter: the largest difference between the node numbers of any element,<LI> LBDPL: output parameter: the largest difference between thedegree of freedom numbers of any element,<LI> MCNDL1: the number of words in structure NDL1,<LI> MCMUA: the number of words in structure MUA,<LI> MCB: the number of words in structure B.</UL>  </DL><P><H2><A NAME=SECTION041217000000000000000>1.2.17 PREPAF: computation of pointers for the frontal method</A></H2><P><A NAME=1684>&#160;</A>  <A NAME=1685>&#160;</A><P><DL COMPACT><DT>Aim:<DD> Determine the pointers of matrix <b>A</b> and RHSs <b>B</b>,  and compute the memory space required for the solution of a linear system by the frontal method.<P><DT>Utilization:<DD>  <UL><LI> dimension array M (in the blank common),<LI> call INITI,<LI> create the input data structure MAIL.<P></UL><P>Call the module:<P><PRE>                                                     CALL PREPAF(M,NFMAIL,NIMAIL,NFFRON,LFRON,NTYPFR,LF)</PRE><P>where:<P><UL><LI> M: the super array,<LI> NFMAIL: the number of the support file of I.D.S.  MAIL<LI> NIMAIL: its level number,<LI> NFFRON: the number of the support file containing the results (always <b>&gt;</b> 0)<LI> LFRON: the  length of the front expected by the user,<LI> NTYFR: the number of front types (i.e. the type of nodes in the mesh),<LI> LF: integer array of length NTYFR,<UL><LI> LF(I) contains the length of the  Ith front. If, during execution, one of these values exceed LFRON, the program stops and prints a message.</UL></UL>  </DL><P><HR SIZE=3 WIDTH="75&#37;"><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><BR> <HR><P><ADDRESS></ADDRESS></BODY></HTML>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?