Internet Parallel Structure Analysis Program (IPSAP) User's Guide Version 1.8 Aerospace Structure Laboratory Seoul National University, Korea April 10, 2009 Chapter 1 Overview Internet Parallel Structure Analysis Program (IPSAP) is written by C, C++ and MPI. IPSAP is particularly suited for parallel numerical simulations involving large structures. In this type of computation, IPSAP dramatically reduces the time spent and the memory usage by solving a linear algebraic equations efficiently. IPSAP can be used for directly simulating a structural model with an input file written in the given definite form. Two main algorithms implemented in IPSAP are the Multifrontal Algorithm for static analysis and the Block Lanczos Iteration Algorithm with implicit restart out-of-core storage technique for vibration analysis. Both two algorithms are modified ones which are based on the element by element calling sequence which best fits for the well-known finite element method and distributed memory parallel technique based on use of BLAS, LAPACK(CLAPACK), METIS. 1.1 Feature of This Version 1. Element - Hexa8 : 8-node solid - Tetra4 : 4-node solid - Quad4 : 4-node shell - Tri3 : 3-node shell - Beam2 : 2-node beam 2. Property - PropSolid : solid property - PropShell : shell property - PropComp : shell property - PropBeam : beam property - PropBeamL : beam property 3. Material - Elastic3DIsotropic : 3 dimensional isotropic - Elastic3DOrthotropic : 3 dimensional orthotropic - Elastic2DIsotropic : 2 dimensional isotropic 1 - Elastic2DOrthotropic : 2 dimensional orthotropic - Elastic1D : 1 dimensional 4. LoadCase 5. Load - Force - Moment - Pressure - Global Acceleration - Nodal Temperature - Nodal Force 6. Analysis Type - LinearStatic : displacement - stress analysis - Vibration : frequency - normal mode analysis 7. ETC - Rigid Connection Element - Material Coordinate System - Many Kinds of Solution Parameters 1.2 Finite element implementation IPSAP provides three types of element - solid, shell, beam. All of them work on three dimensional space for general purpose. Solid element is classified into eight node hexahedron (Hexa8) and four node tetrahedron(Tetra4) and shell element is separated three node triangle(Tri3) and four node square(Quad4). Beam element is Beam2. It will be described in chapter 5. 2 Chapter 2 Pre-requirement Depending on the pre-compiled versions of IPSAP, BLAS library may be required.1 In addition, parallel version requires MPI (Message Passing Interface) such as LAM/MPI, MPICH or MSMPI. Even though IPSAP can be run with various kinds of BLAS library, we recommend for you to use BLAS by Kazushige Goto2 in linux system and Intel Math Kernel Library(MKL)3 in windows system for the best performance. In this time of release, for the users who do not have any kind of BLAS, every execution files are compiled statically. 1 2 3 LAPACK(CLAPACK) and METIS are statically linked in. In IPSAP execution file for linux OS, GOTO is statically linked in. In IPSAP execution file for windows OS, MKL is statically linked in. 3 Chapter 3 How to download The IPSAP can be downloaded from : http://ipsap.snu.ac.kr Note that there are actually several pre-compiled single and parallel IPSAP executable files, depending on your machine architecture, operating system and MPI. See Table 3.1 for Windows and Table 3.2 for Linux operating system. As mentioned in the previous chapter, IPSAP used BLAS library named in the tables. CPU architecture 32-bit Single 64-bit Single 32-bit Parallel 64-bit Parallel Table 3.1 : IPSAP binary files for Windows BLAS MPI IPSAP executable Intel MKL IPSAP_single_x86.exe Intel MKL IPSAP_single_x64.exe Intel MKL MS MPI IPSAP_parallel_x86.exe Intel MKL MS MPI IPSAP_parallel_x64.exe CPU architecture Table 3.2 : IPSAP binary files for Linux BLAS MPI IPSAP executable 32-bit Single 64-bit Single 32-bit Parallel GOTO GOTO GOTO LAM/MPI MPICH2 IPSAP_single_x86.run IPSAP_single_x86_64.run IPSAP_parallel_x86.run IPSAP_parallel_x86_mpich2.run 64-bit Parallel GOTO LAM/MPI MPICH2 IPSAP_parallel_x86_64.run IPSAP_parallel_x86_64_mpich2.run 4 Chapter 4 How to run 4.1 Linux Operating System 1. IPSAP is statically compiled with GOTO blas library and does not require any additional library. 2. run IPSAP with the following command in a terminal $exec path/exec name input file 3. running parallel versions follows the same analogy $mpirun -np (N.P) exec path/exec name input file 4.2 Windows Operating System 1. IPSAP is statically compiled with Intel MKL library and does not require any additional library. 2. In the same way of linux OS as following command, you can run the program. $exec path/exec name input file 3. running parallel versions follows the same analogy $mpirun -np (N.P) exec path/exec name input file 5 Chapter 5 Format of Input file IPSAP input file has several control strings to distinguish each data set for finite element method. Table 5.1 shows typical input file. Each control string should be preceded by asterisk “ ∗ ” and written in uppercase. Brief descriptions are follows. Table 5.1 : The Example of IPSAP Input File ∗ TITLE ∗ NODE 1 2 “IPSAP Input File Example'' 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00 5.0000e+00 0.0000e+00 -- abbreviation -- ∗ PROPERTY PropShell 1 10 0.1 ∗ MATERIAL Elastic2DIsotrpoic 10 1.0000e+07 0.3 10.0 ∗ ANALYSYSTYPE Vibration 4 4 10 3 5 ∗ ELEMENT Quad4 1 2 3 1 1 19 21 3 1 3 21 23 5 1 5 23 25 7 -- abbreviation -- ∗ NSET 1 1 2 3 4 5 6 7 8 9 ∗ NSET 2 81 ∗ BOUNDARY 1 10.0 123456 ∗ LOADCASE 1 2 3 ∗ LOAD NodalForce 2 2 10.0 1 3 2 10.0 3 ∗ ENDDATA ∗ OUTOPT default.out ∗ END 1 6 5.1 “TITLE” ∗ TITLE string This is for the title or explanation of job and can be continued in new lines until next control string is reached. 5.2 “NODE” ∗ NODE NID NID X-Coordinate X-Coordinate Y-Coordinate Y-Coordinate Z-Coordinate Z-Coordinate NID(node id) does not need to be in order, but each coordinate should be global data. Notice that NID should not be duplicated. 5.3 “ELEMENT” ∗ ELEMENT type Regardless of element type, all elements require EID(element id), PID(property id) and connectivity. Depending on element type, IPSAP requires different information in different format. The format and element coordinate system are as below(See Figure 5.1). The data for one element should be written in one line. 1. Beam2 'Beam2' requires two NID's for connectivity and one vector which is located in the plane made by r-axis and s-axis. It is also with respect to global coordinate system. The vector is used to determine the beam's element coordinate. ∗ ELEMENT EID EID Beam2 PID PID NID NID NID NID X-coord X-coord Y-coord Y-coord Z-coord Z-coord 2. Hexa8 'Hexa8' is 8 nodes hexahedron solid element and therefore requires eight NID's for connectivity within one line. ∗ ELEMENT Hexa8 EID PID NID NID NID NID … EID PID NID NID NID NID … 3. Tetra4 'Tetra4' is four nodes tetrahedron element and requires four NID's. 7 Figure 5.1 : Natural Coordinate System of Element ∗ ELEMENT EID EID Tetra4 PID PID NID NID NID NID NID NID NID NID 4. Tri3 'Tri3' is three nodes shell element and requires three NID's. In addition, theta or MCID and offset is defined. theta means material property orientation angle in degrees and MCID means material coordinate system identification number. And offset means offset value from the surface of grid points to the element reference plane. ∗ ELEMENT Tri3 EID PID NID NID NID EID PID NID NID NID theta or MCID theta or MCID offset offset 5. Quad4 'Quad4' is 4 nodes shell element and requires four connectivities. There are also defined theta or MCID and offset. The meaning of theta or MCID and offset of ‘Quad4’ is same with ‘Tri3’. 8 ∗ ELEMENT Quad4 EID PID NID NID NID NID EID PID NID NID NID NID theta or MCID theta or MCID offset offset 6. Elast0 This defines zero dimensional spring element. 'Elast0' requires one NID and one DOFID of NID. ∗ ELEMENT EID EID Elast0 PID PID NID NID DOFID DOFID 7. Elast1 This defines one dimensional spring element. 'Elast1' requires two NIDs and two DOFIDs of NIDs. And PID is related with ‘PropElast’ in “PROPERTY”. ∗ ELEMENT EID EID Elast1 PID PID NID1 NID1 DOFID1 DOFID1 NID2 NID2 DOFID2 DOFID2 5.4 “PROPERTY” 'Property' defines geometric features of structures. Regardless of kind of property, all properties require PID(property id) and MID(material id). Depending on structural dimension, IPSAP requires different ∗ PROPERTY type information in different format. The data for one property should be written in one line. 1. PropSolid 'PropSolid' requires basically PID and MID because all geometric features of solid elements can be obtained from the locations of nodes. In addition, MCID is required. MCID defines the material property coordinate system. ∗ PROPERTY PID PID PropSolid MID MID (MCID) (MCID) 2. PropShell 'PropShell' requires basically two parameters which are MID and thickness. In addition, for considering bending moment and transverse shear, MID1 and MID2 is defined. bfact and sfact each mean the bending moment of inertia ratio and transverse shear thickness ratio and default values are each 1 and 0.83333. 9 And nsm defines nonstructural mass per unit area. ∗ PROPERTY PropShell PID PID MID MID thickness (MID1) (bfact) (MID2) thickness (MID1) (bfact) (MID2) (sfact) (sfact) (nsm) (nsm) 3. PropComp 'PropComp' defines the property of n-ply composite material laminate and requires PID, nsm, MIDi, Ti and thetai. ∗ PROPERTY PID ∗ PROPERTY PID PropComp nsm MID1 PropComp nsm MID1 T1 theta1 MID1 T1 theta1 … T1 theta1 MID1 T1 theta1 … 4. PropBeam 'PropBeam' requires five more parameters which are A(cross-section area) , three area moments of inertia(J, Iss, Itt) and κ (shear effect factor). If Itt is not given, it is assumed to be equal to Iss. κ is generally about 5/6 and if κ is not given, the beam is assumed to be consistent with classical bending theory. And nsm defines nonstructural mass per unit area. ∗ PROPERTY PID PID PropBeam MID MID A A J J Iss Iss (Itt) (Itt) ( κ ) ( κ ) (nsm) (nsm) 5. PropBeamL 'PropBeam' defines the property of a beam element by cross-sectional dimensions. In IPSAP, six beam libraries are defined and these are ROD, TUBE, BAR, BOX, T1, L. By these dimensions of each beam library, A, J, Iss, and Itt are defined. ∗ PROPERTY PropBeamL PID PID MID MID DIM1 DIM2 DIM3 DIM1 DIM2 DIM3 10 … … ( κ ) ( κ ) (nsm) (nsm) 5. PropElast 'PropElast' specifies the stiffness of a scalar elastic(spring) element, ‘Elast0‘ and ‘Elast1’ ∗ PROPERTY PID PID PropElast K K 5.5 “MATERIAL” ∗ MATERIAL type IPSAP provides only elastic material which can be classified according to directional symmetry and dimension. The data for one material should be written in one line. All materials have MID(material id), CID(coordinate id), elastic modulus, density and thermal expansion coefficients. If the density is not given, it is set 0.0. Detailed formats are as follows. 1. Elastic3DIsotropic 'Elastic3DIsotropic' is referenced by PropSolid and requires E(Young's modulus), ν (Poisson's ratio), ρ (density) and α (thermal expansion coefficient). ∗ MATERIAL Elastic3DIsotropic 11 MID MID E E ( ρ ) ( ρ ) ν ν ( α ) ( α ) 2. Elastic3DOrthotropic 'Elastic3DOrthotropic' is referenced also by PropSolid and requires more parameters than the isotropic case due to the directional differences in elastic moduli and thermal characteristics. ∗ MATERIAL Elastic3DOrthotropic MID E1 E2 E3 ν 12 ( ρ ) (α 1 ) (α MID E1 E2 E3 2 ν 12 ( ρ ) (α 1 ) (α 2 ν 23 ) (α ν 3 3 31 G12 G23 G31 ν 31 G12 G23 G31 ) 23 ) (α ν ) 3. Elastic2DIsotropic 'Elastic2DIsotropic' is a 2-dimensional version of 3D-Isotropic material and therefore referenced by PropShell. ∗ MATERIAL MID MID Elastic2DIsotropic E E ( ρ ) ( ρ ) ν ν ( α ) ( α ) 4. Elastic2DOrthotropic 'Elastic2DOrthotropic' is a 2-dimensional version of 3D-Orthotropic material and therefore referenced by PropShell. ∗ MATERIAL Elastic2DOrthotropic MID E1 E2 MID E1 E2 ν 12 ν 12 G12 G23 G12 G23 G31 ( ρ ) ( α 1 ) ( α G31 ( ρ ) ( α 1 ) ( α 5. Elastic1D 'Elastic1D' is referenced by PropBeam. ∗ MATERIAL Elastic1DIsotropic MID MID E E ( ρ ) ( ρ ) ν ν ( α ) ( α ) 5.6 “COORD” Coordinate system in IPSAP is used only for material coordinates. All coordinates have CID(coordinate id) and three directional vectors which de_ne the x, y and z axis of new Cartesian coordinate system. The directional vectors are not required to have the magnitude of unity, but should be orthogonal with each other. It is notable that CID should be larger than zero because zero CID in the material control string designates the global reference coordinate. ∗ COORD 12 2 ) 2 ) CID CID xX xX xY xY xZ xZ yX yX yY yY yZ yZ zX zX zY zY zZ zZ 5.7 “ANALYSISTYPE” ∗ ANALYSISTYPE ∗ ANALYSISTYPE LinearStatic Vibration integer integer integer integer integer integer integer Analysis type is one of LinearStatic and Vibration. According to the analysis type, the number of option is different. 'LinearStatic' need 2 options and 'Vibration' needs 5. The description is as follows: LinearStatic Element Block Size, Communication Block Size Vibration Element Block Size, Communication Block Size, Number of Eigen Value, Lanczos Block Size, Maximum Number of Block. Element Block Size controls the entire performance of solver. Generally one of the values 4, 8, 16, 32 will be moderate. Communication Block Size controls the parallel performance. The performance will be maximized around the value from 64 to 256, but too large value may induce failure of the program during the parallel job. In the case of failure, some smaller values(4,8,16,32) of communication block size is recommended. Vibration analysis mode of IPSAP computes eigenvalues from the first mode to Nth mode. N is set by the third option of vibration analysis type, Number of Eigen Value. Lanczos Block Size is the number of Lanczos vectors which is handled during one Lanczos iteration. Commercial codes such as NASTRAN and ABAQUS set the default value of Lanczos block size 7. Maximum Number of Block option in Vibration analysis controls the maximum size of Lanczos block tridiagonal matrix which is defined by “Maximum Number of Block” x “La nczos Block Size”. From the experiences, the following condition is recommended for the performance of program. “Maximum Number of Block” x “Lanczos Block Size” > 4 x Number of EigenValue 5.8 “NSET” NSET is to define the boundary condition, nodal force and temperature. If NID's are continuous, “TO” keyword can be used. For example, “1 2 3 4” may be replaced by “1 TO 4” ∗ NSET Node ID ∗ NSET Node ID NSID NID NSID NID NID NID NID NID … NID NID NID NID … . 5.9 “BOUNDARY” 'Magnitude' can be used for pre-described displacement boundary. For example if it is zero, then it means fixed boundary. 'Direction' is to give direction of displacement. The 13 number from 1 to 6 are used to represent translation(1,2,3) and rotation(4,5,6). ∗ BOUNDARY BID BID NSID NSID Magnitude Direction Magnitude Direction 5.10 “LOADCASE” ∗ LOADCASE LID LCID LID LID LID This option defines several loads to be used in one load case. 5.11 “LOAD” ∗ LOAD type According to the 'Load type', there are three choices, NodalForce, Acceleration and Temperature as below. 1. Force 'Force' is defined by X, Y and Z directional force. ∗ LOAD LID Force NID X-dir. Force Y-dir. Force Z-dir. Force 2. Moment 'Moment' is defined by X, Y and Z rotational force, moment. ∗ LOAD LID Moment NID X-dir. Moment Y-dir. Moment Z-dir. Moment 3. Pressure ‘Pressure’ can be used on 2D Element, Tri3 and Quad4. ∗ LOAD LID Pressure EID Magnitude 4. Acceleration ‘Acceleration’ is used for inertial load acting on the entire model such as the structure is under accelerating condition. ∗ LOAD X-dir. Acceleration Acceleration Y-dir. Acceleration Z-dir. Acceleration 5. Temperature Temperature load is active only if the elements which the node set is belonged 14 to have thermal expansion coefficients. ∗ LOAD Temperature NSID Temperature LID 6. NodalForce 'NodalForce' has the same form as 'BOUNDARY' control string. But, the usage of this keyword is not recommended. Instead of this keyword, ‘Force’ and ‘Moment’ keywords are newly involved. ∗ LOAD NodalForce NSID Magnitude Direction LID 5.12 “RCON” 'RCON' is the rigid connection between nodes like a stiff beam. The first IDNID is independent node and CM means component numbers of the dependent degrees of freedom in the global coordinate system at Node ID, DNIDi. Hense the others following DNIDis mean dependent nodes. ∗ RCON IDNID ∗ RCON IDNID RCID CM RCID CM DNID1 DNID2 … DNID1 DNID2 … 5.13 “ENDDATA” 'ENDDATA' is a delimiter between model data and additional data. Therefore, additional data control strings follow. 5.14 “OUTOPT” In LinearStatic analysis, ∗ OUTOPT file-name 0 or 1 0 or 1 In Vibration analysis, ∗ OUTOPT file-name 0 or 1 0 or 1 0 or 1 This control string provides output format. ‘file-name' designates the name of the output file which IPSAP will generate. The last two or three integers control the kind of output data. If IPSAP runs on LinearStatic analysis mode, information of original finite element model, displacement and stress will be written or not on file you named according to the choice of the field's value(0 or 1). For example, if you choose 0 in the first integer field, it means simply 'Do not write information of initial finite element model'. In the case of Vibration analysis, two fields, information of original finite element model and eigenvector will be referenced and the eigenvectors will be written or not according to the second field's value(0 or 1). If this control string does not appear in the input file, IPSAP generates a file named 'default.out' and assumes that all integer fields are on(1) such that the disp 15 lacement and the stress are written in the file. 5.15 “EXPOPT” ∗ EXPOPT Memory1 Memory2 initial shift Convergence criteria IPSAP provides expert user's mode to control memory usage, initial shift and convergence criteria. Memory1 assigns MBytes of memory for factorized frontal data, which will be stored in a disk storage if ‘EXPOPT’ is not used. In the case of LinearStatic analysis mode, only Memory1 will be referenced. Memory2 assigns memory for Lanczos vectors in the same way of Memory1. Initial Shift will be efficient for a eigenvalue analysis model with insufficient boundary conditions and the recommendation is negative value. For the convergence criteria field, machine precision is used in general. If you are not sure, do not use 'EXPOPT' control string. 5.16 “TEMPDIR” ∗ TEMPDIR Temporary directory path 'TEMPDIR' let you choose temporary directory where IPSAP dump file is written instead of default current directory. 5.17 “END” 'END' means the end of all data. 16 Chapter 6 Format of Output file and Visualization 6.1 Format of Output Figure 6.1 and Figure 6.2 show the example of output file format. IPSAP RESULT FILE - LinearStatic ANALYSIS NID and EID ARE SORTED ONES! ∗ NODE 3362 NID X Y Z 1 0.0000e+00 5.0000e-01 0.0000e+00 2 5.0000e-01 0.0000e+01 0.0000e+00 ... ∗ ELEMENT 1600 EID TYPE NID ----------------------------------------1 Tetra4 1 1 2 3 2 Tetra4 2 3 4 8 ... ∗ DISPLACEMENT NID U V W Rx Ry Rz 1 3.7507e-06 3.3165e-08 -2.1612e-09 2 3.1345e-06 2.1145e-05 -2.1613e-08 ... ∗ NODAL FORCE APPLIED TO 1,2-DIMENSIONAL ELEMENT EID Fz Fy Fz Mx My Mz 101 3.7507e-06 3.3165e-08 -2.1612e-09 1.0067e-06 -5.0432e-02 0.1239e-01 104 3.7537e-06 3.1165e-08 -1.1412e-09 0.0067e-06 -5.0002e-02 1.1200e-01 ... ∗ STRESS AVERAGE AT NODE BELONGING TO 3-DIMENSIONAL ELEMENT NID Sxx Syy Szz Sxy Syz Szx 1 3.7507e-06 3.3165e-08 -2.1612e-09 1.0067e-06 -5.0432e-02 0.1239e-01 2 3.7537e-06 3.1165e-08 -1.1412e-09 0.0067e-06 -5.0002e-02 1.1200e-01 … Figure 6.1 : Output file format (Linear Static) 17 IPSAP RESULT FILE - Vibration ANALYSIS NID and EID ARE SORTED ONES! ∗ NODE 3362 NID X Y Z 1 0.0000e+00 5.0000e-01 0.0000e+00 2 5.0000e-01 0.0000e+01 0.0000e+00 ... ∗ ELEMENT 1600 EID TYPE NID ------------------------------------------1 Tetra4 1 1 2 3 2 Tetra4 2 3 4 8 ... ∗ EIGENVALUE ANALYSIS SUMMARY 10 MODE 1 – eigenvalue : 7.15900e+05 MODE 1 – eigenvalue : 7.15900e+05 ... ∗ MODE 1 – eigenvalue : 7.15900e+05 NID U V W Rx Ry Rz 1 3.7507e-01 3.3165e-08 -2.1612e-09 3.0787e-06 2 3.2500e-06 4.7403e-08 -1.0387e-09 1.6700e-07 ... ∗ MODE 2 - eigenvalue : 9.15210e+05 NID U V W Rx Ry Rz 1 2.7507e-01 2.3165e-08 -2.1452e-09 3.1287e-06 2 2.2500e-06 2.7403e-08 -1.0457e-09 1.6340e-07 ... -2.9332e-02 -2.9347e-05 -4.6203e-07 -2.33183-05 -2.1332e-02 -0.9347e-05 -2.3203e-07 -0.33183-05 Figure 6.2 : Output file format (Vibration) 6.2 Visualization DIMAOND/IPSAP is the own visualization tool of IPSAP. By DIAMOND/IPSAP, you can enjoy the structure analysis. 18
© Copyright 2025 Paperzz