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

📄 node12.html

📁 htmdoc for html coding
💻 HTML
字号:
<!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>2.2 The MODULEF code</TITLE><LINK REL=STYLESHEET TYPE="text/css"	HREF="./Modulef.css" TITLE="Modulef CSS"><meta name="description" value="2.2 The MODULEF code"><meta name="keywords" value="Guide1"><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=tex2html344 HREF="node11.html"><IMG BORDER=0 ALIGN=BOTTOM SRC="../icons/previous_motif.gif"	ALT="previous"></A><A NAME=tex2html348 HREF="node10.html"><IMG BORDER=0 ALIGN=BOTTOM SRC="../icons/up_motif.gif"	ALT="up"></A><A NAME=tex2html350 HREF="node13.html"><IMG BORDER=0 ALIGN=BOTTOM SRC="../icons/next_motif.gif"	ALT="next"></A><A NAME=tex2html352 HREF="node2.html"><IMG BORDER=0 ALIGN=BOTTOM SRC="../icons/contents_motif.gif"	ALT="contents"></A><A HREF="../Guide1-18/node12.html"><IMG BORDER=0 SRC="../icons/zoom18.gif" ALIGN=BOTTOM	ALT="[BIG]"></A><A HREF="../Guide1-14/node12.html"><IMG BORDER=0 SRC="../icons/zoom14.gif" ALIGN=BOTTOM	ALT="[Normal]"></A><A HREF="../Guide1-10/node12.html"><IMG BORDER=0 SRC="../icons/zoom10.gif" ALIGN=BOTTOM	ALT="[small]"></A><BR><B> Next: </B> <A NAME=tex2html351 HREF="node13.html">Part II: How do I use </A><B>Up: </B> <A NAME=tex2html349 HREF="node10.html">2 The MODULEF library</A><B> Prev: </B> <A NAME=tex2html345 HREF="node11.html">2.1 Capabilities</A><B><A HREF="node2.html"	>Contents</A></B><HR SIZE=3 WIDTH="75&#37;"><H1><A NAME=SECTION03220000000000000000>2.2 The MODULEF code</A></H1><P><P><P>The MODULEF system, illustrated in the flow-chart below, consists of logically ordered entities which have a hierarchical structure such that lower levels in this structure do not reference higher levels. Furthermore, each of these abstract entities incorporates  operators and data structures which are transparent to the user.<P><P><A NAME=622>&#160;</A><IMG BORDER=0 ALIGN=BOTTOM ALT="" SRC="img3.gif"><BR><STRONG>Figure 2.1:</STRONG> The MODULEF environment<A NAME=figpart1b>&#160;</A><BR><P><P>By inspecting the flow-chart we see that the MODULEF environment consists of three levels, which corresponds tothree ways of using the software:<UL><LI> The easiest case corresponds to a configuration where the entire mathematical problem has been solved, i.e.      incorporated in the system, at a previously stage.   In this case the main program exists in the MODULEF code and the       user merely needs to execute this program (or &quot;black-box&quot;) and supply the corresponding data.<LI> If the main program does not exist in the MODULEF code, but all the modules required for the solution      of the problem under consideration are available, the user must write the main program himself which calls      one or several modules successively.<LI> Finally, it may be necessary for the user to program an entire module himself which in turn  calls the       numerical algorithms and utilities. </UL>In the last two cases it is of utmost importance that the user respect the MODULEF programming norms.<P><P><P><H2><A NAME=SECTION03221000000000000000>2.2.1 Use of MODULEF</A></H2><P><P><P><H3><A NAME=SECTION03221100000000000000> The classical use</A></H3><P>This corresponds to level 3 in figure <A HREF="node12.html#figpart1b">2.1</A>, where the user is required to:<P><UL><LI> write a main program constituting all the calls to the Fortran subroutines, and open sequential or direct access files  for the I.D.S. and/or O.D.S. which the user wants to save,<LI> write one or several Fortran subroutines to define the analytical expression of the boundary, loads, non-lineardependence of the physical characteristics of the materials, etc.,<LI> compile the different programs,<LI> link the program with external references (modules, subroutines and supplementary functions) (to facilitate this step, a data (or procedure) base is available containing the       relationships between libraries, subroutines, etc.),<LI> supply the data according to the MODULEF free format rules <BR>[4]([<A HREF="node65.html#guide_2"><A NAME=tex2html35 HREF="../Guide2/welcome.html">MODULEF User Guide - 2</A></A>]). The amount of data is often very little or nothing at all.</UL><P>At each call of the module the O.D.S. can be saved on secondary memory. In order to effect this, it suffices to input a non-zero file number. The user remains the master of his saves. This is very useful for a non-linear or time-dependent  problem where the amount of input/output   must be minimized.<P>Naturally, if the usage of a suite of modules is intensive, a module to  be loaded can be fixed and called back in order to avoid compilation   and linking. Similarly, if certain problem steps   are not programmed, then as many modules must be realized according to the norms and integrated in the library. The user is thus returns to the previous case.<P>Library TEST treats some complete examples for which the input data is given. These sequences allows us to test the implementation of the version and the  quick solutions of new problems.<P><P><P><H3><A NAME=SECTION03221200000000000000> The conversational use</A></H3><P><P><P>Conversational programs are designed to communicate and transfer information through the use of menus, questions, etc. They generally create formatted data files  which can then be used as input for batch processing, especially useful when the execution time is considerable.<P>The majority of modules running can be activated conversationally. These programs are used to treat relativelysimple problems, or to prepare the data for an important step in a more complex problem. There are two types of conversational programs:<UL><LI> Programs of type 1 requires little data and corresponds to on-line processing. <LI> Programs of type 2 requires a larger set of data, and consists of two steps. Firstly, we need to enter thedata from which the data file is created. Thereafter, the program is executed in batch or on-line usingthe data file created in the preceding step.</UL><P> Some of the features  available  are:<UL><LI> two- or three-dimensional mesh generation modules,<LI> two- and three-dimensional mesh modification modules,<LI> graphics (plotting of meshes, stresses, isovalues, etc.) modules, and<LI> general modules (related to the solution of linear thermal and elastic problems).</UL><P><P><P><H2><A NAME=SECTION03222000000000000000>2.2.2 The modules</A></H2><P><P><P>The main programs mentioned above, should only consist of a succession of calls to the various modules.  This flexibility,which is particularly important for research and development,  is an important feature of the MODULEF software.Furthermore, it is the aim of the software to be as user-friendly and programmer-friendly as possible.<P>The main advantages of a modular code are reliability, simplicity and, most important,  modifiability. The latteris a crucial aspect of the MODULEF code as mathematical operators can frequently be solved by several different methods, each corresponding to a different module. With MODULEF, the user generally only needs to modifythe name of the module, leaving the arguments the same, when choosing a different method. Furthermore, newnumerical methods can easily be incorporated into  the library.  For example, the followingmodules correspond to different direct methods for matrix factorization:<P><UL><LI> Cholesky factorization of a skyline matrix: <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img4.gif">:<UL><LI> matrix in core: module <b> CHOLPC</b><LI> matrix out of core: module <b> CHOLPS</b></UL><LI> Crout factorization of a skyline matrix: <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img5.gif">:<UL><LI> module <b> CROUPC</b></UL><LI> Gauss factorization of a non-symmetric matrix: <IMG BORDER=0 ALIGN=MIDDLE ALT="" SRC="img6.gif">:<UL><LI> module <b> DRGAPC</b></UL></UL><P>All the modules above have the same list of arguments.<P>Moreover, thanks to the modularity of the code, it is possible to execute modules either with single or double precision. In this case the module calls one of two similar subroutines whose names differonly by the last letter, &quot;<b> R</b>&quot; and &quot;<b> D</b>&quot;, corresponding  to <b> R</b>eal (single precision) and <b> D</b>ouble precision,  respectively. For example, module <b> CHOLPC</b> calls:<UL><LI> <b> CHMC1R</b> (<i> list of parameters</i>) : Cholesky algorithm in single precision, and<LI> <b> CHMC1D</b> (<i> same list of parameters</i>) : Cholesky algorithm in double precision.</UL><P>Modules communicate through standardized data structures, in terms of sets of Fortran arrays, whose internalrepresentation is transparent to the user.The data structure management and the numerical algorithm are distinct in each module.  The algorithm is confined to a standard Fortran subroutine which only accesses  those arrays necessary, without referencing the dynamic storage. This enables us:<UL><LI> to reduce the number of input/output operations during a loop in a non-linear or time-dependent problem, and<LI> to use a mathematic operator, included in MODULEF, in an external context.</UL><P>As mentioned above, in the event that a module performing some desired operation does not  exist in the MODULEF library, the user might want to write the complete module  himself. In order to maintain the coherence andhomogeneity of the library, the programming must  conform to predefined standards  set by the MODULEF club [<A HREF="node65.html#guide_2"><A NAME=tex2html35 HREF="../Guide2/welcome.html">MODULEF User Guide - 2</A></A>].<P>A list of some of the main modules and their functions which are presently available is given in appendix <A HREF="node49.html#apppart1">A</A>.<P><P><P><H2><A NAME=SECTION03223000000000000000>2.2.3 Supplementary features</A></H2><P><P><P><P>Among the computer utilities to aid the user with the utilization of the  MODULEF library is the expert system, <b> DOMINO</b>, incorporating the know-how of MODULEF specialists: application field of the algorithms, choice of the optimal algorithms, respecting of  external  specifications  of each module, etc. Its aim is to relieve theengineer of all this algorithmic, numeric and computer knowledge. <b> DOMINO</b> guides the user duringthe specification of his/her problem, generates the sequence of programs and controls their execution.<P>As far as teaching is concerned, two instructural software packages have been developed on the MacIntosh:<UL><LI> <b> FEMSOLID</b>: solution of plane linear elastic problems with element <b> TRIA 2P2D</b>, including the calculation of displacements and stresses and plotting of deformations and isostresses;<LI> <b> TREILLIL</b>: solution of beam grid problems with element <b> SEGM 2POR</b>.</UL><P>An interactive graphic mesh generation software package, <b> EMC2</b>, is the product of two INRIA projects, the onebeing MODULEF. This software package includes the following three functions: <UL><LI> interactive editing of plane objects consisting of segments, arcs and splines,<LI> defining the node and line reference numbers, the domains and their corresponding numbers, the linediscretization, the mesh type, and generating the data file for module <b> APNOXX</b>, and <LI> meshing the domains in triangles, editing the resulting mesh, and generating binary files in the <b> NOPO</b>format.</UL><P><P><P><H2><A NAME=SECTION03224000000000000000>2.2.4 Conclusion</A></H2><P><P><P>The MODULEF library, based on the finite element method, enables numerous researchers, university as wellas industry, to solve their application problems such as:  mesh generating, solution of time-dependent heat transfer problems, dynamic problems,  eigenvalue problems, incompressible and compressible viscous fluid flow,non-linear problems, plate problems, etc.<P>Taking the increasing number of members and growing interest in the MODULEF club into account, as much as in the industrial as in the university environment, the MODULEF library is fast becoming a complete, reliable and easy-to-use  library of modules and programs adapted to more and more diverse problems.<P><HR SIZE=3 WIDTH="75&#37;"><IMG SRC="../icons/smallmod.gif" WIDTH=211 HEIGHT=50 ALIGN=BOTTOM	ALT="Modulef"><A NAME=tex2html344 HREF="node11.html"><IMG BORDER=0 ALIGN=BOTTOM SRC="../icons/previous_motif.gif"	ALT="previous"></A><A NAME=tex2html348 HREF="node10.html"><IMG BORDER=0 ALIGN=BOTTOM SRC="../icons/up_motif.gif"	ALT="up"></A><A NAME=tex2html350 HREF="node13.html"><IMG BORDER=0 ALIGN=BOTTOM SRC="../icons/next_motif.gif"	ALT="next"></A><A NAME=tex2html352 HREF="node2.html"><IMG BORDER=0 ALIGN=BOTTOM SRC="../icons/contents_motif.gif"	ALT="contents"></A><A HREF="../Guide1-18/node12.html"><IMG BORDER=0 SRC="../icons/zoom18.gif" ALIGN=BOTTOM	ALT="[BIG]"></A><A HREF="../Guide1-14/node12.html"><IMG BORDER=0 SRC="../icons/zoom14.gif" ALIGN=BOTTOM	ALT="[Normal]"></A><A HREF="../Guide1-10/node12.html"><IMG BORDER=0 SRC="../icons/zoom10.gif" ALIGN=BOTTOM	ALT="[small]"></A><BR><B> Next: </B> <A NAME=tex2html351 HREF="node13.html">Part II: How do I use </A><B>Up: </B> <A NAME=tex2html349 HREF="node10.html">2 The MODULEF library</A><B> Prev: </B> <A NAME=tex2html345 HREF="node11.html">2.1 Capabilities</A><B><A HREF="node2.html"	>Contents</A></B><BR> <HR><P><ADDRESS></ADDRESS></BODY></HTML>

⌨️ 快捷键说明

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