C DOCUMENTATION AND USER INSTRUCTIONS OF PROGRAM `SANOPT-F' This appendix deals with the program SANOPT-F which is used for the free vibration and buckling analysis and shape optimization of shells of revolution and prismatic shells and folded plates with right and curved planform. First an overview of the program structure is given. This is followed by detailed input instructions. Finally, the specimen input data les are presented. C-1 C-2 C. Documentation and user instructions of program SANOPT-F C. Documentation and User Instructions of Program SANOPT-F C.1 Program Documentation C.1.1 Overview of the Program Program SANOPT-F deals with the linear elastic free vibration analysis, buckling analysis and optimization of shells of revolution and also prismatic shells of rectangular and curved planform which are supported on diaphragms at two opposite edges with the other two edges arbitrarily restrained. The analysis is carried out using a family of new, curved, variable thickness, C(0), MR, FEs and FSs. The program contains: (a) a shape modelling tool using cubic splines and an automatic mesh generation program, (b) FE and FS analysis capability for shells of revolution and prismatic folded plates and shells respectively, and (c) an optimization algorithm SQP. The dierent parts of the programs are written in modular form so that they can easily be incorporated into other programs. This means that all of the input into and output out of subroutines is done via argument lists. The dimensioning, however, is done centrally for all subroutines. This allows for easy, `error free' re-dimensioning of the programs. However, some modularity is lost. C.1.2 Block Structure and Main Routines The top level of the program structure for SANOPT-F is given in Figure C.1. Only the important subroutines are shown. FIMA DATPRE PRE SANOPT-F SENSIT FEMFS OPTIMA FIMA Fig. C.1. Main block diagram of program SANOPT-F. C.1 Program documentation C-3 1. FIMA handles the le management. This subroutine open and close the necessary data les. 2. DATPRE reads the main data for the geometry denition, analysis and optimization such as design variables, material properties and boundary conditions. 3. PRE is the shape denition and mesh generation routine and generates meshes of varying sizes, types and element thickness. 4. SENSIT updates the values of the `shape' and `thickness' design variables after every perturbation and evaluates the new values of the nodal point coordinate and thickness using classical cubic spline interpolation. 5. FEMFS carries out the FE or FS free vibration and buckling analysis for the structure on which the elements or strips are generated. It also calculates the derivatives of the weight and eigenvalue for a specied number of design variables. 6. OPTIMA updates the FE/FS results to identify the objective function and constraints values and transfers them to the optimizer. Next the function of the various routines in the geometry modelling routine PRE, shape denition routine for perturb geometry SENSIT, analysis routine FEMFS and optimization routine OPTIMA will be described. Subroutine PRE is a pre-processor routine in which the geometry of the structure is dened and mesh generation is carried out. It is an implementation of the procedures described in Chapter 2. Figure C.2 shows the block diagram of subroutine PRE. In the following section brief descriptions of the functions of various routines called by subroutine PRE are presented. PARAM GENODE CORRIT PRE FIXIT INTPAR BANDWM CONVER Fig. C.2. Block diagram of subroutine PRE. 1. PARAM calculates the control points for all cubic B-spline segments. The result is stored in an array for later use in mesh generation. 2. GENODE generates nodes on a dened geometry. C-4 C. Documentation and user instructions of program SANOPT-F 3. CORRIT is called when there is a need to carry out geometric corrections in convergence studies. 4. FIXIT automatically assigns the xity data for the new generated nodes. 5. INTPAR interpolates the values of the thickness using classical cubic spline interpolation. 6. BANDWM carries out the bandwidth minimization prior to the use of the subspace iteration solver. 7. CONVER rearrange the coordinate, element connectivity, and xity data for the analysis routine FEMFS. Subroutine SENSIT is a implementation of the shape denition and mesh generation for sensitivity analysis and structural optimization described in Section 2.6. SENSIT calculates the new position of the coordinates (or thickness) of the design variables and update the nodal coordinates (or thickness) after every perturbation which is required for sensitivity analysis. Figure C.3 shows the block diagram of subroutine SENSIT. DISTRB GETCNT SENSIT DISTHK INTPAR Fig. C.3. Block diagram of subroutine SENSIT. 1. DISTRB updates the new coordinates of the `shape' design variables after each perturbation. 2. GETCNT calculates the new control points of the cubic spline for the perturbed geometry. 3. DISTHK updates the new coordinates of the `thickness' design variables after each perturbation. 4. INTPAR interpolates the new values of the nodal coordinates or nodal thickness using classical cubic spline interpolation. Subroutine FEMFS is an implementation of the formulation described in Chapters 7 and 8 for structural analysis and Chapter 9 for sensitivity analysis. The block diagram of subroutine FEMFS is shown in Figure C.4. In the following section brief descriptions of the subroutines called by FEMFS are presented. 1. OUTPUT is an output subroutine and prints the data generated from the routine PRE. 2. JUNCTN sets up direction cosines for the ends of each element. C.1 Program documentation C-5 OUTPUT JUNCTN ANGLES STIFF FEMFS BUCKM MASSM DSTIFF BSOLVE DEGVAL Fig. C.4. Block diagram of subroutine FEMFS. 3. ANGLES nds the value of subtention angle at each node of each element. 4. STIFF sets up the stiness matrix for MR prismatic shell of rectangular or curved planform strips or shell of revolution elements. 5. BUCKM sets up the geometric stiness matrix for buckling analysis. 6. MASSM sets up the mass matrix for free vibration analysis. 7. DSTIFF calculates the dierences in stiness, geometric stiness and mass matrices terms after each perturbation of the design variables | this is required in the semi-analytical method for the sensitivity analysis. 8. BSOLVE solves for the smallest eigenvalues and corresponding eigenvectors using the subspace iteration method. The details of this subroutine can be found in reference [1]. 9. DEGVAL evaluates the sensitivities of the eigenvalues. Subroutine OPTIMA is the actual interface for the communication between the analysis program and the mathematical programs. It controls the optimization by calling dierent optimizer interface routines. Figure C.5 shows the block diagram of subroutine OPTIMA. 1. SQPSET is carry out sequential quadratic programming based on the algorithm developed by Powell [2]. 2. SQPSTP terminate the SQP optimization program. Extracts a message from the SQPSET writes it into the screen and output le. 3. PAROPT extracts the objective and constraints functions values and their respective derivatives from the information computed in the previous routines. C-6 C. Documentation and user instructions of program SANOPT-F SQPSET SQPSTP PAROPT MMASUB OPTIMA FIMA DOTSET DOT SQPSET SQPSTP Fig. C.5. Block diagram of subroutine OPTIMA. 4. MMASUB is a interface routine for MMA algorithm by Svanberg [3]. 5. FIMA handles the le management. This subroutine open and close the necessary data les. 6. DOTSET sets up some optimization parameters and initialise the optimizer for DOT. 7. DOT is a interface routine for DOT optimization package by Vanderplaats [4]. The interface routines for these three optimizers are implemented so far. However, the program structure allows for simple integration of more algorithms. Only SQP algorithm is given in the current version of the program. DOT and MMA optimization packages are a commercial package and is not included in the program. C.1.3 File Structures Program SANOPT-F uses the following les for input and output: unit 8 contains the output of the analysis and optimization results. unit 10 reads the control parameters, material properties, boundary condi- tion, geometry data and linking conditions. unit 12 is used to read the optimization data concerning design variables and constraints. unit 15 is used in cases where geometric correction is required and contains the coordinates of the key points. C.2 Input instructions C-7 unit 16 contains the stiness matrices of the original shape. unit 17 contains the geometric stiness or mass matrices of the original shape. unit 18 contains the stiness matrices of the perturbed shape. unit 19 contains the geometric stiness or mass matrices of the perturbed shape. unit 20 contains the results of the eigenvalue solver, that is frequencies, eigenvectors, etc. unit 24 contains the gradient of stiness matrix. unit 25 contains the gradient of mass or geometric stiness matrix. unit 40-60 are the plotting les for each optimization iteration and contain the plotting parameters such as eigenvectors, coordinates and element connectivities. C.1.4 Main Dimensions and Limitations of the Program The program at present can handle 250 elements/strips, 500 points, 4 material types, 20 geometry segments, 75 geometry key points, 20 design variables and 30 constraints. C.2 Input Instructions C.2.1 Main Structure of Input Data In the following section user instructions for preparing the input data are presented. Program SANOPT-F requires two basic data sets: Data set 1 is read from unit 10 and contains information about the num- ber of design variables, the parameters for shape denition, the geometry data, linking data, xity condition information, material data and loading conditions. Data set 2 is read from unit 12 and contains the optimization data including; the number of design variables, the constraints, upper and lower bounds of the constraints, upper and lower bounds on the design variables and the initial value of the design variables. A le lename.cor is used in cases where geometric correction is required and contains the coordinates of the key points. C-8 C. Documentation and user instructions of program SANOPT-F Data set 1.1: Title of problem | One record (a80) cols. variable name 1-80 title description Title of the problem to be solved Data set 1.2: Type of problem | One record (16i5) cols. variable name 1-5 ndvab description Number of design variables = 0, analysis > 0, optimization Data set 1.3: Title of output | One record (a80) cols. variable name 1-80 title description Title of the program output Data set 1.4: Output parameters | One record (16i5) cols. variable name description koutp(i) Control array for output information, = 0, do not write = 1, write into output le (see user hints) 1-5 koutp(1) Analysis input data 6-10 koutp(2) Eigenvalues 11-15 koutp(3) Eigenvectors 16-20 koutp(4) Plotting data 21-25 koutp(5) Subspace solver output 26-30 koutp(6) Gradient of eigenvalues 31-35 koutp(7) Undened 36-40 koutp(8) Undened 41-45 koutp(9) Undened 46-50 koutp(10) Optimization output Data set 1.5: Analysis control title data | One record (a80) cols. variable name 1-80 text description Title of the analysis control data C.2 Input instructions Data set 1.6: Parameters for analysis | One record (16i5) cols. variable name description 1-5 nprob Type of analysis = 1, buckling analysis = 2, free vibration analysis 6-10 ntype Type of analysis = 1, prismatic shell with rectangular planform = 2, prismatic shell with curved planform = 3, shell of revolution 11-15 nnode Number of nodes in each element or strip 16-20 ngaus Number of Gauss point (see user hints) 21-25 nharm Number of harmonics 26-30 nmode Number of modes 31-35 nmats Number of material sets Data set 1.7: Geometry control title data | One record (a80) cols. variable name 1-80 text description Title of the geometry control data Data set 1.8: Parameters for geometry | One record (16i5) cols. variable name description 1-5 nsegg Number of segments in the structure 6-10 npoig Number of key points in the structure 16-20 ntang Spline end condition (see user hints) 11-15 npolr Number of key points expressed in polar coordinates 21-25 ncorr Geometry correction switch (see user hints) = 0, no correction required = 1, correction required 26-30 nnbog Number of boundary conditions 31-35 npara Number of parameters to be interpolated (=1) C-9 C-10 C. Documentation and user instructions of program SANOPT-F Data set 1.9: Parameters for analysis | One record (2f10.5) cols. variable name description 1-10 tleng Span of the structure (see user hints) = in length units for rectangular planforms = in radians for curved planforms 11-20 coeff Elastic foundation constant Data set 1.10: Mesh parameters title data | One record (a80) cols. variable name 1-80 text description Title of the data to be read Data set 1.11: Mesh parameters data Two records for each segment. First record (16i5) : cols. variable name 1-5 jsegb 6-10 nnseb(jsegb) description Segment number Number of points in each segment Second record (i5, 6f15.8) : 1-5 lnogb Point number in each segment 6-20 coobt h-coordinate of the segment 21-35 delta Mesh density Data set 1.12: Geometry denition title | One record (a80) cols. variable name 1-80 text description Title of geometry denition Data set 1.13: Geometry denition One record for each key point. Total of npoig records. (i5, 2f15.9, 4i5) cols. variable name 1-5 jpoin description Key point number 6-20 coorg(jpoin,1) x1 -coordinate of key point 21-35 coorg(jpoin,2) x2 -coordinate of key point 36-40 lsvab(jpoin,1) Design variable number of x1 -coordinate 41-45 lsvab(jpoin,2) Design variable number of x2 -coordinate C.2 Input instructions C-11 Data set 1.14: Coordinates of origin (polar coord.) points Omit this record, if npolr = 0; one record for each point expressed in polar coordinates. Total of npolr records. (i5, 2f15.9, 4i5) cols. variable name description 1-5 npoln(ipolr ) = i 6-20 cpolr(i,1) Value of x1 -coordinate of origin 21-35 cpolr(i,2) Value of x2 -coordinate of origin Key point number Data set 1.15: Shape design variable linking parameters Omit this record, if nlink = 0; one record for each linking. (16i5) cols. variable name description 1-5 jlink 6-10 linkp(jlink,1) Identication of segment rst key point 11-15 linkp(jlink,2) Identication of segment last key point 16-20 linkp(jlink,3) Key points common direction, x1 or x2 21-25 linkp(jlink,4) Design variable number Linking number Data set 1.16: Segment data Three sets of records for each segment. Total of nsegg records. First record set (16i5) : cols. variable name description 1-5 jsegg 6-10 nnseg(jsegg) Number of key points in each segment 11-15 maseg(jsegg) Material set number of each segment Segment number Second record set (2i5, 4f15.9): (repeated) for each key point of segment cols. variable name 1-5 lnodg 6-10 ltvab(jsegg,innse) description Key point number Design variable number of key points innse (see user hints) 11-25 paras(jsegg,innse,1) Thickness value at key point innse C-12 C. Documentation and user instructions of program SANOPT-F Third record set (16i5) : cols. variable name description 1-5 icotg(1) Tangent indicator for cubic spline at start of segment 6-10 icotg(2) Tangent indicator for cubic spline at end of segment = 0, natural spline condition, = 1, horizontal tangent specied, = 2, vertical tangent specied, = 3, inclined tangent specied Data set 1.17: Fixity condition title | One record (a80) cols. variable name 1-80 text description Fixity condition title Data set 1.18: Fixity condition data One record for each xity condition. Total of nnbog records (16i5) cols. variable name 1-5 description nboug(iboun) Key point number at which boundary condition is specied 6-10 ifixg(1) Constraint on u-displacement , = 0, no constraint = 1, constraint 11-15 ifixg(2) Constraint on v -displacement 16-20 ifixg(3) Constraint on w-displacement 21-25 ifixg(4) Constraint on -rotation 26-30 ifixg(5) Constraint on -rotation 31-35 ifixg(6) Constraint on z -rotation Data set 1.19: Output section title | One record (a80) cols. variable name 1-80 text description Title of output section C.2 Input instructions C-13 Data set 1.20: Output section data | One record (i5, 6f15.8) cols. variable name 1-5 nsect 6-20 ysect(1) Location of the 1st section along the span 21-35 ysect(2) . 46-55 ysect(nsect) Location of the 2nd section .. along the span .. .. Location of the nsectth section along the span .. .. . description Number of output sections Data set 1.21: Material properties title | One record (a80) cols. variable name 1-80 text description Title of the material type Data set 1.22: Material properties data One record for each material type. Total of nmats records. (i5, 6e15.8) cols. variable name 1-5 jmats description Material set number 6-20 props(jmats, 1) Elastic modulus E 21-35 props(jmats, 2) Poisson's ratio 36-50 props(jmats, 3) Material density C-14 C. Documentation and user instructions of program SANOPT-F Data set 2.1: Title of problem | One record (a80) cols. variable name 1-80 title description Title of the problem to be solved Data set 2.2: Optimization parameters | One record (14i5) cols. variable name description 1-5 ntopt Type of optimizer (see user hints) = 1, MMA = 2, DOT optimization package = 3, SQP 6-10 ncons Total number of constraints 11-15 kobje Type of objective function = 1, weight minimization = 2, maximization of fundamental frequency or maximization of sum of frequencies = 3, maximization of lowest frequency 16-20 ktcon Type of constraint = 1, eigenvalues = 2, weight = 3, eigenvalues and weight 21-25 maxit Maximum number of optimization iterations to be performed 26-30 nlink Number of shape design variable linking (see user hints) Data set 2.3: Initial values of the design variables | One record (*) cols. variable name xdvab(1) . .. .. . xdvab(ndvab) description Initial value of 1st design .. variable .. .. Initial value of ndvabth design variable C.2 Input instructions C-15 Data set 2.4: Lower bounds of the design variables { One record (*) cols. variable name description Lower bounds of 1st design .. variable .. .. th Lower bounds of ndvab design variable xdmin(1) . .. .. . xdmax(ndvab) Data set 2.5: Upper bounds of the design variables { One record (*) cols. variable name description Upper bounds of 1st design variable .. ... . Upper bounds of ndvabth design variable xdmax(1) . .. .. . xdmax(ndvab) Data set 2.6: Bounds of the constraints { One record (*) cols. variable name description Bounds of 1st constraint. .. .. . th Bounds of ncons constraint cfmax(1) . .. .. . cfmax(ncons) Geometric correction le: lename.cor These records only exist if ncorr 6= 0. Two records for each segment. First record set (6i5) : cols. variable name description jsegg Segment number for which correction is required icorr Correction switch, = 0, no correction required = 1, put all points on a straight line = 2, put all points on a circular segment Second record set (3e20.9). This record exists if icorr = 2 : circx Coordinate of origin: x-coordinate circy Coordinate of origin: y -coordinate circr Radius of circular segment C-16 C. Documentation and user instructions of program SANOPT-F C.2.2 User Hints The purpose of user hints is to guide the user in the preparation of the data. In the following some comments are made about various parts of the input le. In the data sets (*) indicates that free format is used for inputting the data. If ndvab is set to zero in data set 1.2 then optimization input le (data set 2) is omitted and the program does not carry out the optimization. The output control ags (data set 1.4) allow to switch on/o output of modules. For example setting koutp(3)=1 means that the output of the eigenvectors is switched on. ngaus is equal to 1, 2 and 3 for linear, quadratic and cubic FEs and FSs respectively. The variable ncorr is a ag for geometric correction. If set to 1, geometric correction is used and the FE nodes are moved onto their exact location. Furthermore, the subroutine PRE reads in the kind of correction to be carried out (lename.cor). The values are 0 for no correction, 1 for a straight line and 2 for a circle. In the case of ncorr = 1, irrespective of the kind of correction, for each segment ve real numbers must be given. If C(0) continuity is desired at the junction of two or more segments then ntang = 0 is specied. npara species the number of parameters for each nodal point which would be read in data set 1.16. The parameters will be interpolated from the background mesh to the generated FE/FS nodes. For instance, for the free vibration analysis, the parameter interpolated was the cross-sectional thickness of structure. tleng = 0.0 for shells of revolutions. In data set 1.13, the shape design variable numbers are assigned to the lsvab(ipoin,idime) array which species which key point and which coordinate of this key point is taken as the design variable. The key points having the same lsvab(ipoin,idime) number behave in a similar manner. We select the length or height of a segment as a design variable. The variable nlink species the number of shape design variable linking rules, the value of which is read in data set 2.2. In data set 1.15, linkp(ilink,1) rst key point of segment, linkp(ilink,2) last key point of segment, linkp(ilink,3) common coordinates of these key points (x1 or x2 ) and linkp(ilink,4) design variable number must be provided for each link rule. Then the length of a segment connected to that key points is a design variable. The variable npolr species the number of polar coordinate systems, the values of which are read in data set 1.14; the rst integer species key C.3 Specimen input data les C-17 point. Then centre of polar coordinate system is specied in the appropriate cartesian coordinate system. In data set 1.16 any segment key point for which a design variable number is dened is taken as a design variable. The thickness of some key points can be same value during optimization iteration. In that case, thickness design variable number of this key points is identied with the same design variable number. As mentioned in Chapter 2, the thickness values along the shell segment are interpolated using the thickness values at some or all the key points. If any key point is to be excluded from the interpolation process then an identication number is used which in the present case is 99999.999999999 (see section on specimen input data). Segments are dened by a sequence of geometry or key points (data set 1.16). The end conditions of segments (icotg(1) and icotg(2)) inuence the shape of the geometry (see Chapter 2). The values which can be specied are 0 for natural end condition, 1 for horizontal alignment, 2 for vertical alignment, 3 for alignment between rst two or last two key points of a segment. The two values are for the start and the end of a segment. As can be seen from data set 1.20 | boundary conditions are associated with the geometric model and are later on transferred to the FE/FS model after mesh generation has been completed. C.3 Specimen Input Data Files We now present some specimen input data les for the examples taken from Chapter 9 for prismatic plates and shells. C.3.1 Conical Shell Problem denition: In the rst example, we consider the optimization of the conical shell shown in Figure C.6. The optimization results for this example are presented in Section 6.3.2. The objective function is the maximization of the fundamental frequency with a constraint that the enclosed volume should be kept constant 1 . The shell is clamped at its lower edge and free at its upper edge. The following (concrete) material properties are assumed: modulus of elasticity, E = 30 GP a, Poisson's ratio, = 0:15 and mass density, = 2410 kg=m3. The FE analysis is carried out using 3-noded quadratic elements. 1 Program SANOPT-F is modied to incorporate the enclosed volume constraint for this problem. C-18 C. Documentation and user instructions of program SANOPT-F 0.13 m 4 3 2.768 m r4 r3 4.17 m 2 1 r2 r1 s1 s2 Fig. C.6. 1.25 m = = rr13 = = rr24 0.13 m Conical shell | initial geometry (thickness t = 0:0625 m). Geometry denition: The geometry of the conical shell is dened using four key points and three straight segments. In the rst stage of the optimization, shape change alone is considered. In the present study, the radial coordinates of key points 1 and 2 are linked as are key points 3 and 4. Thus, the two design variables used for the optimization are the radial coordinate of the rst and third segments; in other words, the design variables are the radial coordinates of key points 1 and 3. Mathematical denition: The mathematical description of the problem can be written as: Maximize !f und (s1 ; s2 ) (C:1) subject to s1 1:0; s2 1:0 s1 3:0; s2 3:0 Vencl 3:699 : nonlinear constraint Vencl 3:76 design variable bounds (C:2) (C:3) Starting values: s(1) = 1:25, s(1) = 2:768. 1 2 A typical input les for SANOPT-F is displaced in Table C.1 and C.2. They are for conical shell shown in Figure C.6. Data set 1, concerning the general data and geometry data is given in Table C.1. Second data le which includes optimization parameters for data set 2 is presented in Table C.2. C.3 Specimen input data les C-19 Table C.1. The data set 1 for conical shell. conical shell 2 ganl freq emod graf berk ganl dfre undf undf opar 1 1 0 0 0 0 0 0 0 1 prob ntyp node gaus harm mode mats 2 3 3 2 5 1 1 segg poig polr tang corr nbog para 3 4 0 0 0 1 1 0.000 0.0 Backgroundmesh: 1 2 1 0.0000 0.1 2 1.0000 0.1 2 2 2 0.0000 0.1 3 1.0000 0.1 3 2 3 0.0000 0.1 4 0.0000 0.1 Definition of Geometry: 1 1.2500 0.00000 1 0 2 1.2500 0.13000 1 0 3 2.7680 4.30000 2 0 4 2.7680 4.43000 2 0 1 2 1 1 0 0.0625 2 0 0.0625 3 3 2 2 1 2 0 0.06250 3 0 0.06250 3 3 3 2 1 3 0 0.0625 4 0 0.0625 3 3 Fixity Conditions: 1 1 1 1 1 1 output section 1 1.5 Material Property: 1 30.0e9 0.1500 2410.0 0.0 0.0 data set 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 1.10 1.11 1.12 1.13 1.16 1.17 1.18 1.19 1.20 1.21 1.22 C-20 C. Documentation and user instructions of program SANOPT-F Table C.2. The data set 2 for conical shell. topt ncon obje tcon maxi link 2 2 2 2 20 0 1.25 2.768 1.0 1.0 4.0 4.0 60.0 58.0 data set 2.1 2.2 2.3 2.4 2.5 2.6 conical shell opt. C.3.2 Square Plate Problem denition: A square plate to be optimized has side lengths a, with an initial thickness value of t. The objective is to maximize the fundamental frequency subject to the constraint that the volume of the plate remains constant. The results presented here are obtained using cubic FSs. The square plate is simply supported at two ends and the other two edges are clamped. The following material properties and dimensions are assumed: modulus of elasticity, E = 2:6, Poisson's ratio, = 0:3, mass density, = 1:0, length of the plate, b = 1:0 and thickness of the plate t = 0:1. The optimization results are presented in Chapter 7 in non-dimensional form. y 1.0 t1 x 1.0 Fig. C.7. s1 = t1 t2 t3 s2 = t2 s4 = t3 x Geometry of the square plate and locations of the design variables. Geometry denition: From considerations of symmetry, only half of the plate is analysed for boundary conditions Sh /C/Sh /C. The symmetric half of the plate is modelled using one segment and three key points. For the quadratic thickness representation, three design variables are considered. The geometry of the plate and locations of the design variables are show in Figure C.7. Mathematical denition: The shape optimization problem described above may be summarised formally as follows: C.3 Specimen input data les Maximize !f und (s1 ; s2 ; s3 ) subject to design variable bounds C-21 (C:4) s1 0:00; s2 0:00, s3 0:00 s1 0:20; s2 0:28, s3 0:25 (C:5) V (s1 ; s2 ; s3 ) 0:099 V (s1 ; s2 ; s3 ) 0:1001 (C:6) nonlinear constraint : Starting values: s(1) = 0:1, s(1) = 0:1, s(1) = 0:1. 1 2 3 As an example of input les required to describe analysis and optimization consider the cross-section of square plate shown in Figure C.7. The data set 1 and 2 input les for this problem are given in Tables C.3 and C.4 respectively. Table C.3. The data set 1 for square plate. data set square Plates s/c/s/c 1.1 3 1.2 ganl freq emod graf berk ganl dfre undf undf opar 1.3 1 1 0 0 0 0 0 0 0 1 1.4 prob ntyp node gaus harm mode mats (anal. cont. param.) 1.5 2 1 4 3 1 1 1 1.6 segg poig polr tang corr nbog para (geom. cont. data) 1.7 1 3 0 0 0 2 1 1.8 1.000 0.0 1.9 Backgroundmesh: 1.10 1 2 1.11 1 0.0000 0.075 2 1.0000 0.075 Definition of Geometry: 1.12 1 0.0000 0.00000 0 0 1.13 2 0.2500 0.00000 0 0 3 0.5000 0.00000 0 0 1 3 1 1.16 1 1 0.1 2 2 0.1 3 3 0.1 3 3 Fixity Conditions: 1.17 1 1 1 1 1 1 1.18 3 1 1 0 0 1 output section 1.19 1 0.25 1.20 Material Property: 1.21 C-22 C. Documentation and user instructions of program SANOPT-F 1 2.600 0.3000 1.0000 0.0 0.0 1.22 Table C.4. The data set 2 for square plate. topt ncon obje tcon maxi link (square plate opt.) 3 1 2 2 20 0 0.1 0.1 0.1 0.0001 0.0001 0.00000001 0.27 0.27 0.27 0.05 data set 2.1 2.2 2.3 2.4 2.5 2.6 C.3.3 Cylindrical Shell Segment with Curved Planform Problem denition: The following example deals with a cylindrical shell segment with curved planform which is clamped at its lower edge and free at the other edge as shown in Figure C.8. The following (concrete) material properties are assumed: Young's modulus E = 28 GP a, Poisson's ratio = 0:15 and material density = 2400 kg=m3 . In this optimization problem, the objective is to maximize the fundamental frequency with a constraint that the total volume of the structure should remain constant. s2 = t3 2 z4 1 rad r2 1 s1 = t1 x1 (a) (b) Typical cross-section of cylindrical shell segment | position of design variables: (a) plan view and (b) cross-sectional view. Fig. C.8. Geometry denition: The geometry of the shell and the denition of the design variables are shown in Figure C.8. The shell is modelled using one curved segment with a total of three key points. Two thickness design variables are considered. Using variable linking, linear thickness variations are maintained within the segment. Mathematical denition: The shape optimization problem described above may be expressed in mathematical terms as: C.3 Specimen input data les Maximize !f und (s1 ; s2 ) subject to design variable bounds nonlinear constraint (C:7) s1 0:25; s2 0:25 s1 0:25; s2 0:25 V (s1 ; s2 ) 141:4 V (s1 ; s2 ) 141:6 C-23 : (C:8) (C:9) Starting values: s(1) = 0:25, s(1) = 0:25. 1 2 The input les listing of cylindrical shell segment problem for data set 1 and 2 are given in Table C.5 and C.6 respectively. Table C.5. The data set 1 for cylindrical shell segment. data set cylindrical shell segment with curved planform 1.1 2 1.2 ganl freq emod graf berk ganl dfre undf undf opar 1.3 1 1 0 0 0 0 0 0 0 1 1.4 prob ntyp node gaus harm mode mats (ana. cont. param) 1.5 2 2 4 3 1 1 1 1.6 segg poig polr tang corr nbog para (geo. cont. data) 1.7 1 3 1 0 0 1 1 1.8 1.0 0.0 1.9 Backgroundmesh: 1.10 1 2 1.11 1 0.0000 0.5 2 1.0000 0.5 Definition of Geometry: 1.12 1 40.0000 0.00000 0 0 1.13 2 10.0000 45.00000 0 0 3 30.0000 10.00000 0 0 2 30.0 0.0 1.14 1 3 1 1.16 1 1 0.25 2 099999.999999999 3 2 0.25 3 3 Fixity Conditions: 1.17 1 1 1 1 1 1 1.18 output section 1.19 1 0.5 1.20 Material Property: 1.21 1 28.0e04 0.1500 2400.0 0.0 0.0 1.22 C-24 C. Documentation and user instructions of program SANOPT-F Table C.6. The data set 2 for cylindrical shell segment. data topt ncon obje tcon maxi link (cylin. shell segment) 3 1 2 2 20 0 0.25 0.25 0.01 0.01 0.6 0.6 141.5 set 2.1 2.2 2.3 2.4 2.5 2.6 References [1] Bathe, K.J., Finite element procedures in engineering analysis, Prentice{Hall, Englewood Clis, New Jersey, 1982. [2] Powell, M.J.D., Algorithms for nonlinear constraints that use Lagrangian functions, Math. Progr., 14, 224-248, 1978. [3] Svanberg, K., The method of moving asymptotes - a new method for structural optimization, Int. J. Num. Meth. Eng., 13, 359-373, 1987. [4] DOT, Design Optimization Tools, Users Manuals, Version 5.0, Vanderplaats Research & Development, Inc., 1999.
© Copyright 2025 Paperzz