⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 node15.html

📁 htmdoc for html coding
💻 HTML
📖 第 1 页 / 共 3 页
字号:
<!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.4.3 Implementation</TITLE><LINK REL=STYLESHEET TYPE="text/css"	HREF="./Modulef.css" TITLE="Modulef CSS"><meta name="description" value="1.4.3 Implementation"><meta name="keywords" value="Guide3"><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=tex2html1028 HREF="node14.html"><IMG BORDER=0 ALIGN=BOTTOM SRC="../icons/previous_motif.gif"	ALT="previous"></A><A NAME=tex2html1034 HREF="node12.html"><IMG BORDER=0 ALIGN=BOTTOM SRC="../icons/up_motif.gif"	ALT="up"></A><A NAME=tex2html1036 HREF="node16.html"><IMG BORDER=0 ALIGN=BOTTOM SRC="../icons/next_motif.gif"	ALT="next"></A><A NAME=tex2html1038 HREF="node2.html"><IMG BORDER=0 ALIGN=BOTTOM SRC="../icons/contents_motif.gif"	ALT="contents"></A><A NAME=tex2html1039 HREF="node28.html"><IMG BORDER=0 ALIGN=BOTTOM SRC="../icons/index_motif.gif"	ALT="index"></A><A HREF="../Guide3-18/node15.html"><IMG BORDER=0 SRC="../icons/zoom18.gif" ALIGN=BOTTOM	ALT="[BIG]"></A><A HREF="../Guide3-14/node15.html"><IMG BORDER=0 SRC="../icons/zoom14.gif" ALIGN=BOTTOM	ALT="[Normal]"></A><A HREF="../Guide3-10/node15.html"><IMG BORDER=0 SRC="../icons/zoom10.gif" ALIGN=BOTTOM	ALT="[small]"></A><BR><B> Next: </B> <A NAME=tex2html1037 HREF="node16.html">1.4.4 A complete example</A><B>Up: </B> <A NAME=tex2html1035 HREF="node12.html">1.4 The module APNOPO</A><B> Prev: </B> <A NAME=tex2html1029 HREF="node14.html">1.4.2  APNOPO flowchart</A><B><A HREF="node28.html"	>Index</A></B><B><A HREF="node2.html"	>Contents</A></B><HR SIZE=3 WIDTH="75&#37;"><H2><A NAME=SECTION00343000000000000000>1.4.3 Implementation</A></H2><P><P><P>This program is based on keywords and requires a data file containing the  corresponding list of keywords andassociated values. There is an option to create the data file (or commands file), and anotherto read this file and activate the requests which are stored in it.<P><P><P><H3><A NAME=SECTION00343100000000000000> Calling, libraries and files</A></H3><P>The MODULEF library [<A HREF="node76.html#bibmod">Bernadou et al. 1988</A>] is organized into several sets of programs or (sub-)libraries.Each of these contain the programs corresponding to one predetermined  type of application. In this way, the general  utility programs are in found library <b> UTIL</b>, those dedicated to themanipulation of data structures are found in <b> UTSD</b>, the mesh generators and modules treating two-dimensional meshes are found in <b> NOP2</b>, those treating three-dimensional meshes are in <b> NOP3</b>, the non-dedicated mesh application programs  are found in <b> NOPO</b>, etc., the main programs are in <b> PPAL</b>, the utilities employed in the conversational (interactive) system are in <b> CONV</b> and <b> CONW</b>, etc.<P>There are two ways of calling module <b> APNOPO</b>:<OL><LI> via  preprocessor <b> APNOXX</b>, or<LI> directly.</OL><P>In the first case, we must perform a link between libraries <b> CONV</b>, <b> CONW</b>, <b> NOP2</b>, <b> NOPO</b>,<b> UTSD</b>, <b> UTIL</b> and <b> UTIF</b> (general non-portable  utilities) and program <b> APNOXX</b><A NAME=549>&#160;</A>.<P>In the second case, the libraries required  are the same as above, except for <b> CONV</b> and <b> CONW</b>, which are now inutile.<P><P><P>A calling program, in FORTRAN 77, must be written in the following manner:<P><UL><LI> COMMON M(LM)   <BR> Declaration of the super-array M, of  LM words<LI> EXTERNAL FFRONT  <BR> Declaration of the &quot;function&quot;<LI> CALL INITI(M,LM,IMPRE,NNN) <BR> Initialization for all MODULEF jobs<LI> CALL APNOPO(M,M,FFRONT)  <BR> Call the module<LI> STOP<LI> END</UL><P><P><P>The only arguments of this module are the super-array, <b> M</b>, and the formal name of a possibleprojection function. The data is contained in a command file in the form of keywords andassociated values.<P>The list of keywords, classed according  to the level mentioned previously, is  given below. For each value, the corresponding type expected is stipulated ((I): Integer, (R): Real, (A): Character, etc.).<P><H3><A NAME=SECTION00343200000000000000> Keywords</A></H3><P><P><P><b> COUR </b> : Definition of the curves present in the domain via a function parser.<P>This data is used when the lines are constructed or  the mesh is repartitioned.<P><UL><LI> COUR<A NAME=558>&#160;</A>  (A) : the keyword to activate   <LI> IMPRE (I) : print parameter for execution   <LI> Loop from J=1 to the number of descriptions:  <UL><LI>  'COURB<b>NN</b>(X,Y)  =   X*X + (Y-2)*(Y-2) -0.125;'  <BR>      The equation of the curve is referenced by number NN. <BR>      The equation  must be enclosed by ' and terminated by a ; character.  </UL>   <LI> FIN (A) : indicates the end of data for this keyword.</UL><P><P><P><b> Remarks:</b><P><UL><LI> If we utilize  function <b> FFRONT</b>, this keyword is inutile.<P><LI> The curves may have an arbitrary number NN (from 1 to 99). Curve number NN is used once the lines (or edges)  with reference  NN are encountered (see keywords <b> LIGN</b> et <b> RETR</b>).                                         </UL><P><b> POIN </b> : Definition  of the characteristic points<A NAME=569>&#160;</A>.<P><UL><LI> POIN<A NAME=571>&#160;</A>  (A) :  the keyword to activate   <LI> IMPRE (I) : print parameter for execution   <LI> NPOINT (I) : number of points to describe  <LI> Loop from J=1 to NPOINT, the number of characteristic points  <UL><LI>  NOP (I) : the point number    <LI>  NOREF (I) : its reference    <LI>  X (R) : its abscissa    <LI>  Y (R) : its ordinate  </UL>  <LI> end  of loop J </UL><P><P><P><b> Remarks:</b><P><UL><LI> The points may be entered in any order (due to NOP).<LI> If the points do not lend itself to a manual capturing (due to their number or position), butare easier to capture via a subroutine, we can use subroutine <b> SPDPTS</b> called by module<b> APNOPO</b>. This is done by:<P><UL><LI> fixing  the value of NPOINT to -NPOINT and omitting the loop,<LI> supplying subroutine <b> SPDPTS</b> as follows:<P><DIV ALIGN=center>SUBROUTINE SPDPTS(NPOINT,MPPOI,MNRPC,XY)</DIV><P>where<DL COMPACT><DT>NPOINT<DD> is the number of points (input),<DT>MPPOI(*)<DD> is the integer array linking local point I to global point J=MPPOI(I),<DT>MNRPC(*)<DD> is the array of point references (indexed by I), and<DT>XY(2,*)<DD> is the real array of point coordinates (indexed by I), i.e.,   <BR>  X = XY(1,.), Y = XY(2,.).<P> </DL></UL></UL><P><b> LIGN</b> : Definition of the characteristic lines<A NAME=588>&#160;</A> from the characteristic points (input beforehand via keyword  <b> POIN</b>).<P>Each line is constructed from characteristic points and is partitioned into segmentsin accordance with the prescriptions contained in its description.<P><UL><LI> LIGN<A NAME=591>&#160;</A>  (A) : the keyword to activate   <LI> IMPRE (I) : print parameter for  execution   <LI> NDLM (I) : the number of lines to be described  <LI>  Loop from  J=1 to NDLM, the number of characteristic lines  <UL><LI>  NOLIG (I) : the line number    <LI>  NOELIG (I) : the number of points on the line (extremities included)    <LI>  NEXTR1 (I) : the number of the point at endpoint 1 of the line    <LI>  NEXTR2 (I) : the number of the point at endpoint 2 of the line    <LI>  NOREF (I) : the line reference     <LI>  NFFRON (I) : the description option relating to the line geometry (see below)    <LI>  RAISON (R) : the geometric progression ratio between the points to be generated on the line    <LI>  if NFFRON = -1, loop from K=1 to  NOELIG -2    <DL COMPACT><DT> <DD> NOEL(K) (I) : the point numbers (extremities excluded) on the line<P> </DL>    <LI> if NFFRON = -3:    <DL COMPACT><DT> <DD> NOCE (I) : the number of the circle center (in the list of characteristic points)<P> </DL></UL>  <LI> end of loop J </UL><P><P><P><b> Remarks:</b><P><UL><LI> The lines can be input in any order (due to NOLIG).<LI> NFFRON specifies the geometry of the line (i.e. the manner in which the intermediate points arecreated). There are 5 options:<P><OL><LI>  NFFRON = 0 : The line is a straight line connecting points NEXTR1 and NEXTR2;<LI>  NFFRON <b>&gt;</b> 0 : the line is described by function <b> FFRONT</b> for index NOREF or bythe curve, COURBE<b>JJ</b> with JJ = NOREFL. <BR> In this case, the line must be described in the trigonometrical direction.<LI>  NFFRON = -1 : the line is defined as the set of segments formed by the pointsNEXTR1 <IMG BORDER=0 ALIGN=BOTTOM ALT="" SRC="img5.gif">  NOEL(1),  NOEL(1) <IMG BORDER=0 ALIGN=BOTTOM ALT="" SRC="img5.gif">  NOEL(2), ... <BR> ...,  NOEL(NOELIG-2) <IMG BORDER=0 ALIGN=BOTTOM ALT="" SRC="img5.gif">  NEXTR2.<LI>  NFFRON = -2 : the line is a circle centered at the origin and passing through points NEXTR1 and NEXTR2 (note the direction).<LI>  NFFRON = -3 : the line is the circle centered at one of the characteristic points (where we give the number  NOCE) passing through points  NEXTR1 and NEXTR2 (note the direction).</OL><P><LI> For NFFRON = -2 or -3, we define a circle.<BR><P> Warning: This information is only usedto construct the mesh of the lines and is discarded thereafter. Consequently, this does not prevent giving a non-zeroreference to the line and entering the associated  equation of the circle (keyword <b> COUR</b>) which,having done this could be used, for example, when repartitioning the mesh or adding nodes (keywords <b> RETR</b>or <b> ADPO</b>).</UL><P>Module <b> COLIGN</b>, called by <b> APNOPO</b>, use the definition of the lines to construct their discretized form,i.e., the set of NOELIG - 1   segments of the corresponding straight lines.<P>The lines enable us to define the contours (discretized) of the domains to mesh. A contour has theform of an assembly of lines, and thus the assembly of their items.<P><b> QUAC </b> : Call the mesh generator <b> QUACOO</b> which corresponds to an algebraic method for the case

⌨️ 快捷键说明

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