📄 node58.html
字号:
ENDC +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ C SUBROUTINE XYZ23C +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ SUBROUTINE XYZ23(I,NUM,NREF,X,Y,Z,X3,Y3,Z3)C X3 = X / 2.5 Y3 = Y / 2.5 Z3 = 10. END</PRE><P><P><A NAME=5012> </A><IMG BORDER=0 ALIGN=BOTTOM ALT="" SRC="img156.gif"><BR><STRONG>Figure 3.17:</STRONG> <i> Example <b> MA2D3E</b> (interpolation equidistant in z)</i><A NAME=figma235> </A><BR><P><P>An example with <b> TTYPE = -6</b>, i.e., definition of a virtual upper basis (via XYZ23 at side Z=10.) and interpolation between the basis (ZINT(0) = -1.) and this section to construct 5 sections of sides contained in array ZINT(1:5).<P>The references of the 3D mesh are attributed via array DESREF(.,.) (see the calling program forthe specification of the transfers and figure <A HREF="node58.html#figma236">3.18</A> for the result obtained).<P>The calling program, the output obtained during execution and a plot of the mesh obtained is shown below.<P><PRE>C +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++C EXAMPLE OF CALLING MODULE MA2D3E : TEST NUMBER 6C +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ PARAMETER (LM = 100000 , MAXFON = 1 , MAXSEC = 9 , MAXDES = 10 ) COMMON M(LM) INTEGER NUCOU(3,MAXFON),DESREF(5,MAXDES) REAL MAT(4,4,MAXFON) REAL ZINT(0:MAXSEC) LOGICAL BFONC,COLLER,RAPIDE EXTERNAL XYZ23,XYZ33C IMPRE = 5 CALL INITIS(M,LM,IMPRE,0)C ------ THE I.D.S NOPO AND THE O.D.S NOPO ------ NFNOPO = 10 NINOPO = 1 CALL OUVRIR(NFNOPO,'nopo2d.ma23.2', + 'OLD,UNFORMATTED',0,IOSTAT) NFNOPS = 11 NINOPS = 2 CALL OUVRIR(NFNOPS,'nopo3d.ma23.6','UNFORMATTED',0,IOSTAT) C -----------------------------------------------C ------ GEOMETRICAL TRANSFORMATIONS ------ C ----------------------------------------------- C --- LA BASE : BFONC = .FALSE. ZINT(0) = -1.C --- THE INTERMEDIARY SIDES : NBCOU = 5 ZINT(1) = 0. ZINT(2) = 2. ZINT(3) = 4. ZINT(4) = 6. ZINT(5) = 7. C --- A FUNCTION : A MANUAL INTERPOLATION C BETWEEN THE BASIS AND THE ONE ABOVE DEFINED BY XYZ23 C FOR SIDE 10. ( SEE XYZ23 ) NBFONC = 1 C IFONC = 1 NUCOU(1,IFONC) = 0 NUCOU(2,IFONC) = 5 NUCOU(3,IFONC) = -6C -----------------------------------------------C ------ DEFINITION OF THE REFERENCES ------ C ----------------------------------------------- NBDES = 5C --- BASIS : FACES EDGES AND POINTS SET TO REFERENCE 1 : IDES = 1 DESREF(1,IDES) = 0 DESREF(2,IDES) = 0 DESREF(3,IDES) = 0 DESREF(4,IDES) = -100 DESREF(5,IDES) = 1 C ---C --- ABOVE : FACES EDGES AND SET TO REFERENCE 2 : C ABOVE : THEN EDGE 1 (2D) ==> EDGE 4 (3D) IDES = 2 DESREF(1,IDES) = 5 DESREF(2,IDES) = 5 DESREF(3,IDES) = 0 DESREF(4,IDES) = -100 DESREF(5,IDES) = 2 IDES = 3 DESREF(1,IDES) = 5 DESREF(2,IDES) = 5 DESREF(3,IDES) = 4 DESREF(4,IDES) = 1 DESREF(5,IDES) = 4 C --- VERTICAL FACES : EDGE 1 (2D) ==> FACE 2 (3D)C EDGE 2 (2D) ==> FACE 3 (3D) IDES = 4 DESREF(1,IDES) = 0 DESREF(2,IDES) = 5 DESREF(3,IDES) = 3 DESREF(4,IDES) = 1 DESREF(5,IDES) = 2 IDES = 5 DESREF(1,IDES) = 0 DESREF(2,IDES) = 5 DESREF(3,IDES) = 3 DESREF(4,IDES) = 2 DESREF(5,IDES) = 3 C -----------------------------------------------C ------ CALL THE MODULE ------ C ----------------------------------------------- EPS = 0.001 COLLER = .FALSE. RAPIDE = .TRUE.C CALL MA2D3E(M,M,NFNOPO,NINOPO,NFNOPS,NINOPS,NBCOU,EPS,NBFONC, + NUCOU,MAT,COLLER,RAPIDE,DESREF,NBDES,ZINT,BFONC, + XYZ23,XYZ33) ENDC +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ C SUBROUTINE XYZ23C +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ SUBROUTINE XYZ23(I,NUM,NREF,X,Y,Z,X3,Y3,Z3)C X3 = X / 2.5 Y3 = Y / 2.5 Z3 = 10. END</PRE><P><P><A NAME=5028> </A><IMG BORDER=0 ALIGN=BOTTOM ALT="" SRC="img157.gif"><BR><STRONG>Figure 3.18:</STRONG> <i> Example <b> MA2D3E</b> (interpolation)</i><A NAME=figma236> </A><BR><P><P><PRE> M M OOO DDDD U U L EEEEE FFFFF MM MM O O D D U U L E F M M M O O D D U U L EEEE FFFF M M O O D D U U L E F M M OOO DDDD UUU LLLLL EEEEE F VERSION 91 DATE : 17/10/91 AUTHOR : dutoit ++ OPEN(10,FILE='nopo2d.ma23.2',SPEC='OLD,UNFORMATTED',RECL=0) ++ OPEN(11,FILE='nopo3d.ma23.6',SPEC='UNFORMATTED',RECL=0) &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& MODULE MA2D3E : &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& HEIGHT OF THE BOTTOM BASIS : -0.1000000E+01 NUMBER OF GEOMETRIC TRANSFORMATIONS : 1 LIST OF TRANSFORMATIONS : SECTION 0 TO 5 TYPE OF TRANSFORMATION -6 NUMBER OF NUMBER TRANSFERS : 5 LIST OF TRANSFERS : SECTION 0 TO 0 TYPE OF TRANSFER 0 : -100 GIVES 1 SECTION 5 TO 5 TYPE OF TRANSFER 0 : -100 GIVES 2 SECTION 5 TO 5 TYPE OF TRANSFER 4 : 1 GIVES 4 SECTION 0 TO 5 TYPE OF TRANSFER 3 : 1 GIVES 2 SECTION 0 TO 5 TYPE OF TRANSFER 3 : 2 GIVES 3 MESH OBTAINED : SAVE D.S. TABLE N O P 2 -------------- MESH CHARACTERISTICS : SPACE DIMENSION (NDIM ) : 3 MAXIMUM NUMBER OF REFERENCES (NDSR ) : 4 MAXIMUM NUMBER OF SUB-DOMAINS (NDSD ) : 1 NODES AND POINTS COINCIDE (NCOPNP) : 1 NUMBER OF ELEMENTS IN THE MESH (NE ) : 1100 NUMBER OF PENTAHEDRA (NPENT) : 1100 NUMBER OF BOUNDARY ELEMENTS (NEF ) : 72 NUMBER OF NODES (NOE ) : 852 NUMBER OF NODES PER SEGMENT (NO EXTREMITIES) : 0 TYPE OF COORDINATE VALUES (NTYCOO) : REEL1MOT MAX DIFFERENCE +1 BETWEEN 2 NODES OF AN ELEMENT : 271 NUMBER OF COARSE ELEMENTS (NBEGM ) : 0 NUMBER OF WORDS IN ARRAY NOP5 (LNOP5 ) : 21500 REFERENCE AXIS X,Y,Z (NTACOO) : 1 &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& END OF MODULE MA2D3E &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&</PRE><P>As an example of a call by <b> MA23XX</b>, or keyword <b> MA23</b>, of <b> APNOP3</b>, we return partly to chapter <A HREF="node29.html#chap2">2</A>(translation case) and then to chapter <A HREF="node68.html#chap5">5</A> (a complete example is given with explanations), after which we give the 4 following examples (a listing of the data file, a plot of the 2D starting mesh and a plotof the resulting mesh in each case).<P><P><P>An example (figure <A HREF="#figmaxx1">3.19</A>) of translation coupled with a rotation:<P><PRE> 2 $ IMPRE engr2d.nopo$ NOMF2D engr3d.nopo$ NOMF3D $ === DEFINITION OF THE FUNCTION === BASE 0.1000000E+02 $ THE BASIS TRAN 3 $ TOP SECTION 0.0000000E+00 0.0000000E+00 0.4000000E+00 $ TRANSLATION VECTOR COMBINE ROTA 0.2500000E+01 $ ANGLE OF ROTATION 0.0000000E+00 0.0000000E+00 0.0000000E+00 $ A POINT ON THE AXIS 0.0000000E+00 0.0000000E+00 0.1000000E+01 $ ROTATIONAL AXIS FIN $ END OF THE FUNCTION DEFINITION $ =========== THE OPTIONS ========= $ === DESCRIPTION OF THE REFERENCES === REF ARFA 0 3 3 3 $ TYPE : FROM .. TO .. , .. 2D GIVES .. 3D ARFA 0 3 2 1 $ TYPE : FROM .. TO .. , .. 2D GIVES .. 3D ARFA 0 3 4 2 $ TYPE : FROM .. TO .. , .. 2D GIVES .. 3D F $ END OF THE REFERENCE DESCRIPTION $ ======= CALLING THE MESH GENERATOR ======= GO</PRE><P> engr2d.psfig:maxx1Starting meshengr3d.psfig:maxx11Result<P>An example (figure <A HREF="#figmaxx2">3.21</A>) of complete rotation coupled with gluing the 2 end sections together.<P><PRE> 2 $ IMPRE piston2d.nopo$ NOMF2D piston3d.nopo$ NOMF3D $ === DEFINITION OF THE FUNCTION === BASE 0.0000000E+00 $ THE BASIS ROTA 36 $ TOP SECTION 0.1000000E+02 $ ANGLE OF ROTATION 0.0000000E+00 0.0000000E+00 0.0000000E+00 $ A POINT ON THE AXIS 0.0000000E+00 0.1000000E+01 0.0000000E+00 $ ROTATIONAL AXIS FIN $ END OF THE FUNCTION DEFINITION $ =========== THE OPTIONS ========= COLLER $ === DESCRIPTION OF THE REFERENCES === REF GLOB 0 36 0 0 $ TYPE : FROM .. TO .. , BIDON , BIDON F $ END OF THE REFERENCE DESCRIPTION $ ======= CALLING THE MESH GENERATOR ======= GO</PRE><P> piston2d.psfig:maxx2Starting meshpiston3d.psfig:maxx21Result<P>An example of translation and rotation with degeneration.<P>We will note the creation of pentahedra (and not hexahedra) in the degeneration zone (figure <A HREF="#figmaxx3">3.23</A>).<P><PRE> 2 $ IMPRE dege2d.nopo$ NOMF2D dege3d.nopo$ NOMF3D $ === DEFINITION OF THE FUNCTION === XYZ23 0 $ TOP SECTION 1 $ VIA FUNCTION PARSER X01(N,X,Y)= X; Y01(N,X,Y)= Y; Z01(N,X,Y)= 0.; FIN TRAN 5 $ TOP SECTION 0.0000000E+00 0.0000000E+00 0.5000000E+00 $ TRANSLATION VECTOR ROTA 10 $ TOP SECTION -0.6000000E+01 $ ANGLE OF ROTATION 0.0000000E+00 0.0000000E+00 0.2500000E+01 $ A POINT ON THE AXIS 0.1000000E+01 0.0000000E+00 0.0000000E+00 $ ROTATIONAL AXIS TRAN 15 $ TOP SECTION 0.0000000E+00 0.0000000E+00 0.2500000E+00 $ TRANSLATION VECTOR FIN $ END OF THE FUNCTION DEFINITION $ =========== THE OPTIONS ========= VERVOL $ === DESCRIPTION OF THE REFERENCES === REF FASU 1 $ TYPE : NUMBER ASSIGNED F $ END OF THE REFERENCE DESCRIPTION $ ======= CALLING THE MESH GENERATOR ======= GO</PRE><P> dege2d.psfig:maxx3Starting meshdege3d.psfig:maxx31Result<P>An example (figure <A HREF="#figmaxx41">3.25</A> and<A HREF="#figmaxx42">3.26</A>) of rotation of a section consisting of a line, and thereby the construction of a surface mesh <A NAME=5057> </A>.<P><PRE> 2 $ IMPRE verre2d.nopo$ NOMF2D verre3d.nopo$ NOMF3D $ === DEFINITION OF THE FUNCTION === BASE 0.0000000E+00 $ THE BASIS ROTA 36 $ TOP SECTION -0.1000000E+02 $ ANGLE OF ROTATION 0.0000000E+00 0.0000000E+00 0.0000000E+00 $ A POINT ON THE AXIS 0.1000000E+01 0.0000000E+00 0.0000000E+00 $ ROTATIONAL AXIS FIN $END OF THE FUNCTION DEFINITION $ =========== THE OPTIONS ========= COLLER $ ======= CALLING THE MESH GENERATOR ======= GO</PRE><P> verre2d.psfig:maxx4-1Starting meshverre3d.psfig:maxx4-2Result<P><HR SIZE=3 WIDTH="75%"><IMG SRC="../icons/smallmod.gif" WIDTH=211 HEIGHT=50 ALIGN=BOTTOM ALT="Modulef"><A NAME=tex2html1567 HREF="node57.html"><IMG BORDER=0 ALIGN=BOTTOM SRC="../icons/previous_motif.gif" ALT="previous"></A><A NAME=tex2html1571 HREF="node52.html"><IMG BORDER=0 ALIGN=BOTTOM SRC="../icons/up_motif.gif" ALT="up"></A><A NAME=tex2html1573 HREF="node59.html"><IMG BORDER=0 ALIGN=BOTTOM SRC="../icons/next_motif.gif" ALT="next"></A><A NAME=tex2html1575 HREF="node2.html"><IMG BORDER=0 ALIGN=BOTTOM SRC="../icons/contents_motif.gif" ALT="contents"></A><A NAME=tex2html1576 HREF="node28.html"><IMG BORDER=0 ALIGN=BOTTOM SRC="../icons/index_motif.gif" ALT="index"></A><A HREF="../Guide3-18/node58.html"><IMG BORDER=0 SRC="../icons/zoom18.gif" ALIGN=BOTTOM ALT="[BIG]"></A><A HREF="../Guide3-14/node58.html"><IMG BORDER=0 SRC="../icons/zoom14.gif" ALIGN=BOTTOM ALT="[Normal]"></A><A HREF="../Guide3-10/node58.html"><IMG BORDER=0 SRC="../icons/zoom10.gif" ALIGN=BOTTOM ALT="[small]"></A><BR><B> Next: </B> <A NAME=tex2html1574 HREF="node59.html">3.4 Method for a hexahedral topology</A><B>Up: </B> <A NAME=tex2html1572 HREF="node52.html">3.3 Extrusion method (cylindrical topology)</A><B> Prev: </B> <A NAME=tex2html1568 HREF="node57.html">3.3.5 The preprocessor MA23XX</A><B><A HREF="node28.html" >Index</A></B><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 + -