node14.html

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

HTML
857
字号
<P><DL COMPACT><DT>Aim:<DD> Impose the boundary conditions<A NAME=1550>&#160;</A> of prescribed value or linear relation  type.<P><DT>Utilization:<DD>  <P><UL><LI> dimension array M (in the blank common),<LI> call  INITI,<LI> create the input data structures MUA and B (and eventually NDL1).</UL>(e.g execute module PREPAC, then modules ASSMUA and ASEMBV, to create structures MUA and B)<P>Call the module:<P><PRE>        CALL CLIMPC(M,NIVO,VTG,NFNDL1,NINDL1,     +            NFMUAE,NIMUAE,NFBE,NIBE,NFBDCL,NIBDCL,     +            NFMUAS,NIMUAS,NFBS,NIBS)</PRE><P>where:<P><UL><LI> M: the super array,<LI> NIVO: the type of boundary conditions imposed:      <UL><LI>  if NIVO = 0, the boundary conditions         affect matrix <b>A</b> only, and have the form <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img37.gif">,       <LI> if NIVO = 1, the boundary conditions affect the RHS only, and have the form        <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img38.gif">,       <LI>  if NIVO = 2, the boundary conditions affect <b>A</b> and <b>B</b>,      and have the form <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img39.gif">     and <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img40.gif">,    <LI> if NIVO = 3, the boundary conditions affect    <b>A</b> and <b>B</b>, and are applied as follows:    <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img37.gif"> and <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img38.gif"> for all prescribed degrees of freedom <b>i</b>, then for all       <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img41.gif"> for <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img42.gif">,      <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img43.gif">, and finally, <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img44.gif">,    <LI> if NIVO = 4, the boundary conditions affect    only <b>A</b>, and have the form <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img45.gif">.    </UL><LI> VTG: multiplication value for the diagonal coefficients with prescribed degrees of freedom,<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> 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,<LI> NIBE: 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.).<P></UL>  </DL><P><H2><A NAME=SECTION04128000000000000000>1.2.8 CLIMPS: boundary conditions</A></H2><P><DL COMPACT><DT>Aim:<DD> Impose the boundary conditions<A NAME=1570>&#160;</A> of prescribed value or linear relation type.<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).</UL>(eg execute module PREPAC, then modules ASMAPS and ASMBMS, to create structures MUA and B.)<P>Call the module:<P><PRE>        CALL CLIMPS(M,NIVO,VTG,NFNDL1,NINDL1,     +            NFMUAE,NIMUAE,NFBE,NIBE,NFBDCL,NIBDCL,     +            NFMUAS,NIMUAS,NFBS,NIBS)</PRE><P>where:<P><UL><LI> M:  the super array,<LI> NIVO: the type of boundary conditions imposed:<UL><LI>  if NIVO = 0, the boundary conditions         only affect matrix <b>A</b>, and have the form <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img37.gif">,       <LI> if NIVO = 1, the boundary conditions only affect the RHS, and have the form        <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img38.gif">,       <LI>  if NIVO = 2, the boundary conditions affect <b>A</b> and <b>B</b>,      and have the form <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img39.gif">     and <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img40.gif">,    <LI> if NIVO = 3, the boundary conditions affect    <b>A</b> and <b>B</b>, and are applied as follows:    <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img37.gif"> and <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img38.gif"> for all prescribed degrees of freedom <b>i</b>, then for all       <b>k</b> such that <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img42.gif">,      <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img43.gif">, and finally, <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img44.gif">,    <LI> if NIVO = 4, the boundary conditions affect    only <b>A</b>, and have the form <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img45.gif">.</UL><LI> VTG: multiplication value for the diagonal coefficients with prescribed degrees of freedom,<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 (always <b>&lt;</b> 0), <LI> NIMUAE: 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 (always <b>&lt;</b> 0),<LI> NIBE: its level number,<LI> NFMUAS: the number of the support file of O.D.S. MUA (always <b>&lt;</b> 0),<LI> NIMUAS: its level number (the O.D.S. can be distinct from the I.D.S.).<DL COMPACT><DT>Note:<DD> If  NFMUAE and NFMUAS (resp. NFBE and NFBS) are  distinct, the number of words in their pages must be equal!<P> </DL></UL>  </DL><P><H2><A NAME=SECTION04129000000000000000>1.2.9 CONDL1: construction of NDL1</A></H2><P><A NAME=condl1>&#160;</A><P><DL COMPACT><DT>Aim:<DD> Construct D.S. NDL1 using D.S. MAIL. The algorithms described in this guide perform a callto function NDL<A NAME=1593>&#160;</A>, to assign the number of the last degree of freedomassociated with node I to NDL(I+1) (with NDL(1)=0). To initialize this function, the module performs a call to  function LRNDL1, and then<UL><LI> if the number of degrees of freedom at each node ND is constant,    NDL(I+1) = I * ND   <LI> if not NDL(I+1), the number of the last degree of freedom associated with node I, is stored in    D.S.  NDL1</UL><P><DT>Utilization:<DD>  <UL><LI> dimension array M (in the blank common),<LI> call INITI,</UL><P>Call the module:<P><PRE>        CALL CONDL1(M,NNSEG,NFMAIL,NIMAIL,NFNDL1,NINDL1,LNOET,     +            NNOMAX,ND,NDLMAX)</PRE><P>where:<P><UL><LI> M: the super array,<LI> NNSEG: the number of nodes per segment of NDL1 (if it is initialized to a very large number, it contains thenumber of nodes + 1 on exit),<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,</UL><P>On exit the module returns:<UL><LI> LNOET: the total number of nodes of element types,<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> NDLMAX: the maximum number of degrees of freedom at any node</UL>  </DL><P><H2><A NAME=SECTION041210000000000000000>1.2.10 CROUPC: Crout factorization</A></H2><P><DL COMPACT><DT>Aim:<DD> Performs the Crout factorization<A NAME=1605>&#160;</A>, in main memory,of a symmetric matrix <b>A</b><A NAME=1606>&#160;</A>, already assembled in a MUA structure.<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 CROUPC(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="img47.gif"> according to the criterion<IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img48.gif">,<LI> NENTRE: if NENTRE = 0 the module returns to the calling program as soon as a pivot is smaller that the absolute value of 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 identical to the I.D.S. (NIMUAS = NIMUAE), or distinct (NIMUAS <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img3.gif"> 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=SECTION041211000000000000000>1.2.11 DRCHPC: Cholesky forward- and backsubstitution</A></H2><P><A NAME=1616>&#160;</A><P><DL COMPACT><DT>Aim:<DD> Performs  the solution of a linear system in main memory, using Cholesky factorization.The lower triangular matrix  <b>L</b>  is 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 CHOLPC, to perform the Cholesky factorization of matrix <b>A</b>:<IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img49.gif"></UL><P>Call the module:<P><PRE>        CALL DRCHPC(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="img50.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 <b>&gt;</b> 1, the complete solution <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img52.gif"> is performed,</UL><LI> NCLRL: the number of boundary conditions in 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=SECTION041212000000000000000>1.2.12 DRCRPC: Crout forward- and backsubstitution</A></H2><P><A NAME=1628>&#160;</A><P> <DL COMPACT><DT>Aim:<DD> Performs  the solution of a linear system in main memory, using Crout factorization.The lower triangular matrix  <b>L</b> and the diagonal <b>D</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 CROUPC, to perform the Crout factorization of matrix <b>A</b>:<IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img53.gif"></UL><P>Call the module:<P><PRE>        CALL DRCRPC(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="img50.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 forward substitution <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img54.gif"> is performed,

⌨️ 快捷键说明

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