-’_* , _ Wrifig"+’ ,( . ‘8 I 'JJ 1‘!" .1 ‘v" 'A‘E‘f'fl ‘9 V3.2:- ‘ ‘1‘ . ‘V 9‘ $4: 1 WV) A «3‘ 41%. “s; q 31“}? 14V" m I ’31:!- f 9‘ HI“ ‘3} vi} 1 II A‘ Ji . 31‘“ .‘f‘ "t‘ v I’. '; ‘ — .1» -' g» .. V lg" -n , 1;..1. .> ~,,~ “423 v v @ffbun n. -..9.—,_ ,3.“ ‘ 33%;?“ J 1 "Wangi‘xm " ~24 I.“ M. ’ “W V .w"; . . " ”11"." a. $311!.- .._ y ""‘ WM“; llllllllllllllllllllllllllllllllllllllllllllllllllllllllllll 31293 00786 4345 ; LIBRARY mchigan State L University 1 This is to certify that the thesis entitled Modal Analysis of Damped Systems Using a Bond-Graph Approach presented by Thomas L. Bush has been accepted towards fulfillment of the requirements for _Mas_ter_'_s_ degree in Manual Engineering K%%géwhv/” Major professor Dmfiaafidy ” / 0-7639 MS U is an Affirmative Action/Equal Opportunity Institution QW/JJ/n/ _ .h_.—v._ H _ 4 PLACE IN RETURN BOX to remove this checkout from your record. TO AVOID FINES return on or before the due. DATE DUE DATE DUE DATE DUE l I; ——1 ___l _ Qi =. W: MSU Is An Affirmdtve ActioNEquel Opportunity lnetltutlon amm- 4r; fi—————-i ~-————— MODAL ANALYSIS OF DAMPED SYSTEMS USING A BOND-GRAPH APPROACH BY Thomas Lee Bush A THESIS Submitted to Michigan State University in partial fulfillment of the requirements for the degree of MASTER OF SCIENCE Department of Mechanical Engineering 1989 GOO ISOCO ABSTRACT MODAL ANALYSIS OF DAMPED SYSTEMS USING A BOND-GRAPH APPROACH BY Thomas Lee Bush Modal analysis is one method used in the analysis of linear dynamic systems. This method cannot be applied to damped systems unless the damping is of the proper modal form. To overcome this problem designers sometimes approxi- mate the actual damping with modally-distributed damping. A study into the errors resulting from these approximations was conducted using bond-graphs. A bond-graph model was de- veloped that represents the system in modal coordinates and included an element to account for the coupling effect caused by nonmodally-distributed damping. Simulations were conducted using this bond—graph to try to correlate power action in the coupling element to resulting output error. Computer software was written to allow computation of dif- ferences from successive ENPORT simulations. The results of these simulations did show some of the expected trends. However the desired general correlation was not obtained. ACKNOWLEDGMENTS I would like to thank my Major Professor, Dr. Ronald Rosenberg for his knowledge and guidance during my graduate studies. A special thanks also goes to my wife Linda, for all her love, support and understanding. iii TABLE OF CONTENTS Introduction . . . . . . . . . . . . . . . . . . . . .1 The Modal Bond-Graph Model . . . . . . . . . . . . . .4 2.1 Systems with Modally Distributed Damping . . . . 5 2.2 Modifications for Non-modal Damping . . . . . . 17 2.3 The Need for This Type of Model . . . . . . . . 24 Automated Error Analysis Using ENPORT . . . . . . . .27 3.1 The Need for Error Analysis . . . . . . . . . . 27 3.2 Program Development . . . . . . . . . . . . . . 28 3.3 An Example of the Analysis Feature . . . . . . .32 3.4 Program Implementation and Future Enhancement Suggestions . . . . . . . . . . .40 Approximations to Non-modal Systems . . . . . . . . .43 4.1 The Objectives of the Study . . . . . . . . . . 43 4.2 The Study Implementation . . . . . . . . . . . .44 4.3 The Results . . . . . . . . . . . . . . . . . . 53 4.4 Problems . . . . . . . . . . . . . . . . . . . .56 4.5 Suggestions for Future Research . . . . . . . . 58 Summary . . . . . . . . . . . . . . . . . . . . . . .60 List of References . . . . . . . . . . . . . . . . . 64 Appendix A ENPORT Enhancement Code Listing . . . . . 65 Appendix B An ENPORT File Listing of the System Used in the study . . . . . . . . . . . . . . . .85 iv Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure Figure 10 11 12 13 LIST OF FIGURES The 2 D.O.F. System Example . . . . Bond-Graph for a 2 D.O.F. System with Modal Damping . . . . . . . The Modal Bond-Graph of Figure 2 with Causality . . . . . . . . . Modally Damped Bond-Graph with Specific values . . . . . . . . . The 2-Port R Element . . . . . . . . A Coupled-Mode Bond-Graph for Nonmodally Damped Systems . . . . The Coupled-Mode Bond-Graph with Causality . . . . . . . . . The Reference Velocity . . . . . . . The Modified Post-Processor Menu . . The Run-Data Menu in ENPORT . . . . The Response with Assumed Modal Damping . . . . . . . . . . . . . The Run-Data Analysis Menu in ENPORT Change in Velocity for Modally Damped Assumption . . . . . . . . 20 21 .22 33 34 .34 35 37 38 Figure Figure Figure Figure Figure Figure Figure Figure 14 15 16 17 18 19 20 21 Tabular Listing of the Change in Damper Energy Dissipated . . . . A Coupled-Mode Bond-Graph for a Non-modally Damped System . . . . A Typical 2-port R Coupling Element . . The Base 2 D.O.F. System. . . . . . . . A Coupled-Mode Bond-Graph for the System in Figure 17 . . . . . . A Typical POwer Versus Error Plot . . . Modal Velocity Response Curves . . . . The ENPORT Bond-Graph For The System Studied . . . . . . . . . vi Chapter 1 Introduction Modal analysis is commonly used in the design process for predicting the response of linear dynamic systems with multiple degrees of freedom. This analysis technique allows the designer to decompose the coupled, second-order, linear differential equations into a set of decoupled, second- order, linear, equations in a new set of coordinates. These uncoupled equations can then be solved independently, yield- ing the modal responses which can then be transformed back to the original coordinate frame to obtain the overall sys- tem response. The problem with this analysis technique is that for many damped systems it is not possible to obtain a transfor- mation that will decouple the original differential equa- tions. If the standard decoupling technique is employed the modal equations may remain coupled by their damping terms. Such a system is said to be non-modally damped. It is gen- erally accepted that the modal analysis technique can only be truly applied to systems with Rayleigh damping, that is, systems with a damping matrix proportional to the mass and stiffness matrices. However, a more general condition which is both necessary and sufficient for determining the possi- bility for modal decomposition is presented by I. Fawzy (1). In either case, accurate representation of a system response using this method is limited to a modal form of damping. 1 2 The alternative to the modal decomposition procedure is to convert the problem into a state-space formulation. This formulation converts n second-order differential equations into 2*n first-order differential equations. Because this approach requires the solution of twice as many equations it is generally used for numerical computations but avoided when generalized solutions are desired. One approximate method which has commonly been used to deal with systems which are non-modally damped is to elimi- nate the damping from the original equations, perform the transformation, then add damping to the various modes based on experience. This method is generally employed success- fully for systems with light damping. However, there still exists a question as to how much error is incurred when using this approach. Additionally, the question arises as to when the damping is small enough so that this method can be employed without incurring substantial errors. This thesis presents a study into non-modally damped systems using bond-graphs. A bond-graph model is developed which allows a modal representation of the system augmented by intermode coupling elements. This structure allows one to study the coupling activity and to determinate how strongly the modes are coupled for a variety of inputs. As part of this research, computer subroutines were developed for the ENPORT software (4) to assist in the evaluation of the errors produced by the elimination of the intermode coupling. This software allows the user to compare the results of a series of simulation runs made with varied parameters. From these comparisons predictions can be made as to the sensitivity of the original model to a given parameter. The development of the modal bond—graph is described in Chapter 2. Chapter 3 then presents and describes the soft- ware developed for use in comparing simulation results from modal and non-modal systems. The actual study is presented in Chapter 4 and Chapter 5 gives a summary of the findings. Chapter 2 The Modal Bond-Graph Model The purpose of this section is to develop a modal bond- graph model for use in studying the intermode coupling ef- fects. Margolis and Young (2) present a method for convert- ing large bond-graph models to a modal bond-graph represen- tation. However, their method falls somewhat short in that they take the conventional approach and require that the actual damping be replaced by modally distributed damping in the modal model. The model developed here will allow the transformed equations to remain coupled and include this effect in the new bond graph as a coupling element between the modes. Through this element potentially valuable infor- mation can be obtained as to the effect of this coupling. In this form the model will be an exact representation of the original system. Therefore simulation results are valid. Section 2.1 presents the development of a modal bond- graph for a system in which the damping is modally distrib- uted. No intermode coupling element is needed since the modal equations completely decouple. This model is modified in section 2.2 to allow for coupling elements when the damp- ing is not modally distributed. 5 2.; Systems with Modally Distributed Damping The best way to present the development of the damped modal model is by an example. This example begins with the 2 Degree of Freedom (D.O.F.) spring-mass-damper system shown in Figure 1. f__|_ X's. F2 X32. J_% I /\ 2K [— ASK 2M _ M + 02 I E 3‘6 0 O cs FT ’LL Figure 1 The 2 D.O.F. System Example The differential equation of motion can be obtained in the X coordinates shown using a Lagrangian or similar ap- proach. Equation 2.1 give the representation of the two coupled, linear, ordinary differential equations for this system in terms of X1 and X2. 2M 0 x1 01+cz -cz x1 3K -2K x1 F1 (2.1) o M x2 + -c2 C2+C3 x2 + -2K 5K x2 = F2 The superdot denotes a time derivative throughout this study. Equation (2.2) is the matrix form of eq. (2.1), namely, Mx+cx+xx=r (2.2) To ensure that the system is modally damped the damping can be selected such that c=o(M+flK, (2.3) where (X and K are real constants. Proceeding with the condition that the damping is mo- dally distributed, the set of equations (2.1) can be de- coupled using the transformation, x= dn (2.4) where ¢ denotes the eigenvector matrix for the undamped equation Mx+Kx=o (2-5) and rldenotes the modal coordinate vector. (Note that the eigenvector matrix has not been normalized.) Substituting equation (2.3) into (2.2) and premultiplying by 7 ¢ yields a new equation in modal coordinates, namely, d'M¢fl+¢'C¢h+¢‘Kpn=¢'F. (2.5) Letting M' = d'M d (2.7a) c' = d'c d (2.7b) and K' = ¢'K d (2.7c) equation (2.6) becomes M1t1+ c'h + K'fl(= d'F. (2.8) Since the damping matrix in the original model was assumed to be structured such that the damping was of the modal form, this new equation will contain only diagonal matrices (except for ¢'). That is, the original coupled equations have been decomposed into uncoupled equations in the new coordinatefl. Expressing the diagonal matrices M' , C' , and K' for our example as M' = MA 0] (2.9a) c' = CA 0 (2.9b) 0 cs RA 0 (2-90) 0 KB and the eigenvalue matrix as d = V11 v12 (2.10) V21 V22 the bond-graph shown in Figure 2 can be constructed. KI (MA) (MB) (CA) IA 18 (C8) RA RB (KA) \ / (KB) CA*¢-—~— IA IB —-w~7 CB (VII) (v22) TFIA TFZB (VIZ) VZI) l TFIB TFZA r /’ .. SEI 6i 7 0' V\~02 laigL-SEZ XI x2 Figure 2 Bond-Graph for a 2 D.O.F. System with Modal Damping. This bond-graph consists of 2 damped oscillators which are connected to the external forcing through a transformer structure. These oscillators are the 2 modes for the system and each 1 junction (1A, 13) represents a common velocity junction for each of the modes. The velocities are R1, and A2: respectively. The values for the I, C, and K modal elements come from the transformed independent modal equa- tions. In short, they are the diagonal terms from the M', C', and K' matrices. Applying causality to the bond-graph, as shown in Figure 3, allows further insights into the equa- tion structure. (MA) (MB) (CA) IA (CB) RA T (KA) \/’RB (KB) (:A\AL___—~‘ IA. IBIl*-*"“17 CI3 (VII) (v22) TFIA TFZB -(V|2) v2I) -— ‘T TFIB TFZA f XI x2 Figure 3 The Modal Bond-Graph of Figure 2 with Causality. 10 The transformer junction structure performs the trans— formation of the forcing terms into the modal space. Spe- cific values for transformer (TF) elements are obtained from the d matrix. In addition to transforming the forcing terms into the modal space, the transformer junction structure also transforms the velocity terms from the modal coordi- nates back to the original X coordinate base. This becomes apparent by viewing the model as a 'black box' the inputs of which are the forcing terms in the original coordinate frame. The outputs, as required by causality conditions, must be the resulting velocities, which are also in the original coordinate frame. For this particular example, modal analysis leads to the following values for M', C', K', and ¢. (Recall that the damping was assumed proportional to the mass and stiffness matrices (eq. 2.3)). 2.25 M d] (2.11a) o 2.25 M EzsmMo +310 0 3 (2.115) 180tM + 99,8 K' = 2. 25 K (2.11c) o 99 K ¢ = 1 1 (2.12) .50 -4.0 MI CI 11 For these particular values the bond-graph of Figure 2 takes on specific form as shown in Figure 4. Note that ¢ has not been normalized in the standard fashion at this point: the leading element of each column vector has been set to unity. (2 25M) (2.25M) IB (I8«M+995K) 2. 25( (OKMHSK) T T (.2 25M) A\l /R ()99K CA‘L———4 IB h—"—7-CB (|.O) (~4.0) TFIA TFZB T TF l B TFZAR T Fl //A(IAD) (.50) F2 SEI—~ :4‘3' 02 Prggf‘SEZ Figure 4 Modally Damped Bond-Graph with Specific Values. Using this specific bond-graph as an example, four state-space equations can be written in the (modal) state variables WA, RA, 7T5, RB: 7g= -(2.25(o(M +flK)/2.25 M) ’TT'A-2.25K RA+ (F1+.5 F) (2.13a) RA = (1/2.25 Man (2.1316) 12 ’frB = -((180¢M+99,£K)/18 M) 7% -99K RB +(F1-4.0 F2) (2.13c) m. = (1/ 18 mm; (2.13d) where ’H3_and 'Wg are modal momenta associated with IA and IB, respectively. Additionally, 2 output equations can be written across the junction structure, converting the state variables in modal coordinates to X coordinate velocity values. That is, )2]. = “A + '13 (2.148) x2 .50 RA - 4.0 RB. (2.14b) Taking the Laplace transform of equations (2.13) with zero initial conditions and solving for 7T'(S) yields F1(S) + .50F2(S) 7Q(S) = -------------------- (2.15a) s + (oIM+,6K)/M + K/MS F1(S) - 4.0F2(S) (S) = -------------------- (2.155) s + (13 0(M + 99 310/1814 + 99K/18MS. Setting the velocities in the output equations (2.14a) and (2.14b) equal to the derivative of the output 13 displacements and Laplacing these equations yields SXl(S) (1/2.25M) 7Q(S) + (1/18M)’rfB(S) (2.16a) SX2(S) (.50/2.25M) 713(5) — (4.0/18M)?fB(S). (2.16b) Substituting equations (2.15a) and (2.15b) into (2.16a) and (2.16b) yields the Laplace solution for the displacements in the original X coordinates (equations (2.17a) and (2.17b). F1(S)+.50F2(S) F1(S)-4.0f2(S) x1(3)= ---------------- + -------------------- (2.17a) 2 . 25 (M32+ (0t M+fl K) S+K) 18 (M32+ (18a M+99 flx) s+991<) .50(F1(S)+.50F2(s) -4.0(F1(S)-4.0F2(S)) X2(S)= ------------------ + -------------------- (2.175) 2 . 25 (MSZ+(0(M+ 3K) S+K) 18 (MSZ+ (18 oIM+99£ K) S+99K) This solution for X(S) obtained from the state equations of the modal model can be compared to the solution obtained using the Laplace of equations (2.4) and (2.8). X(S) = (IRIS) (2.18) M'82 “(S)+ c'sll(S)+ K'n (S) =)0T F(S) (2.19) solving the matrix equation (2.19) for “1(8) and "2(8) 14 Fl(S) + .50F2(S) “1(5): ------------------ (2.20a) s + (otM+ [IQ/M + K/MS Fl(S) + .50F2(S) "1(5): ------------------ (2.20b) s + (18 0m + 99flx)/18M + 99K/18MS and substitute into equation (2.18) and solve for (98) F1(S)+.50F2(S) Fl(S)-4.0F2(S) X1(S) = --------------- + --------------- (2.213) 2 . 25 (M82+(otM+ ,S’K)s+r<) 18 (M82+ (180IM+99£K)S+99K .50(F1(S)+.50F2(S)) -4.0(Fl(S)-4.0F2(S)) x2(5) = ---------------- + ---------------- (2.21b) 2 . 25 (M32+ ( otM-I- 3K) s+1<) 18 (1452+ (180tM+99£ K) S+99K As expected, the Laplace solution obtained from the bond-graph model is identical to that obtained directly from the transformed differential equations. This analysis has demonstrated the modal model's ability to replicate the original differential equations. Insights are also gained into the transformation junction structure's job in linking the original physical 15 coordinates to the derived modal coordinates. That is, the input forcing terms in the original coordinates are trans- formed to modal coordinates and act on the individual modal oscillators. The resulting modal response is then trans- formed back to the original coordinate space through the same structure, yielding the output response. This can most easily be seen by studying the causality conditions shown in Figure 3. A remark on normalization. Some form of normalization of the eigen matrix is com- mon in modal analysis. The classic method is to set the transformed mass matrix equal to the identity matrix; that is, I M' = d M d = I (2.22) This results in a modal stiffness matrix of the form K' = "12 o (2.23) 2 0 w2 e The Wi are interpreted as the undamped natural frequen- cies. However, for the purposes of this study a particular normalization is not required since any form of the eigen matrix will transfer the original mass, stiffness, and 16 damping matrices to modal coordinates. However, it should be noted that once the transformed modal mass, damping, and stiffness matrices are obtained, further normalization (i.e. dividing each equation through by its mass term) should be undertaken with some care. Since these modal matrices are obtained using equations of the form M' = (I'M 95 (2.24) a squared normalization term appears in each of the modal M', C', and K' matrices where only a linear term appears in the matrix. Dividing the entire equations through by a linear term will result in an incorrect modal bond-graph. For this reason, if some normalization scheme is desired, it should be performed on the eigenvector matrix, before the bond-graph parameters are specified. This section has outlined the development of a modal bond-graph for a system with modally distributed damping. Each mode was represented in modal coordinates with a simple spring-mass-damper oscillator. These modal oscillators were then coupled to the original coordinate space by a transfor- mation junction structure. This modal bond graph structure can be used to provide insights to the mode activity which may not be available in a conventional bond-graph model. Separating the various modes allows the designer to de- termine the relative importance of a particular mode to the overall response for a given input forcing combination. In 17 some instances this may allow model simplifications if a particular mode or range of modes is determined to be inac- tive. This is especially useful if the system under study is a subsystem of a larger model. However, this modeling technique is still limited to systems with modally distrib- uted damping. The next section will expand on this modal bond-graph to include non-modal damping. 2.2. Modifications for Non-modal Damping The last section presented a bond-graph model which was based on the assumption that the damping was modally dis- tributed. In general this will not be the case and the eigenvector transformation will not decouple the equations of motion. This section presents a modified version of the previous model which includes an intermode coupling element to allow for the coupling of the transformed equations. As before, this model will be an exact representation of the original system equations. Return to the system shown in Figure 1 and assume that the damping is non—modal. The differetial equations are of the same form. 2M 0 X1 + c1+c2 -c2 x1 + 3K -2K x1 = Fl (2.25) 0 M x2 -c2 c2+c3 x2 -2K 5K x2 F2 Since the eigenvector matrix is based strictly on the 18 undamped equations it also remains unchanged. v11 v12 (2.26) ¢ = v21 V22 Proceeding as if the eigenvalue matrix could uncouple the differential equations, as before, the following matrix representation for the differential equations in the modal variable fl are obtained. M' fi+ on + K'll = d'F (2.27) M' and K' are the same diagonal matrices obtained previ- ously, M' = d' M d = MA 0 (2.28a) 0 MB K' = ¢' K ¢ = KA 0 (2.28b) 0 KB but C' is no longer a diagonal matrix. It has the form c' = d' c d = CA CN (2.29) CN CB Notice, however, that C' is a symmetric matrix and can be represented with 3 parameters: CA, CB, and CN. The rea- son that C' is symmetric stems from the transformation 19 ¢IC d and the fact that the eigenvector matrix is composed of orthogonal vectors. It can be shown that this transfor- mation will always result in a symmetric matrix. Generally this procedure would be considered of little value since the transformed equations remain coupled by their damping terms, especially if a generalized solution equation is sought. Since the bond-graph model will generally be solved using numerical techniques, this intermode coupling is of little consequence and the modal bond-graph of section 2.1 can therefore be modified to include the coupling effect without disrupting the solution procedure. Let the diagonal modal damping matrix be represented as the sum of a diagonal matrix and a matrix containing the off diagonal terms, namely, C. = CA 0 + 0 CN (2.30) 0 CB CN 0 Equation (2.29) then takes the form MIMI: :12; E31] WI). :: 21:12” Notice that with the exception of the off-diagonal damping matrix, this is exactly the same as equation (2.8) used in the development of the modal bond-graph from section 20 2.1. Notice also that the effect of this off-diagonal damp- ing matrix is simply to add forcing terms to each mode that are proportional to the velocity in the other mode. That is, a force is applied to mode A which is proportional to the velocity in mode B ((13), and vice-versa. In bond-graph terms an element which reproduces a force proportional to a velocity is an R element or a gyrator. Since in this par- ticular case the forcing effect is cross-coupled, a special form of the R element, called a 2-port R element, can be incorporated. This element takes the form shown in Figure 5. 0 (3| CI? (3 el FTI—mv R D 4—————I Figure 5 The 2-Port R Element This 2-port R element uses a matrix type of equation struc- ture of the form e1 0 c1 f2 (2.32) e2 = c2 0 f1 Where f1 and f2 are the input flows, and el and e2 are the resulting efforts. (Note that this matrix may be inverted depending on the causal demands of the system.) This 21 element equation is of the exact form of the off—diagonal damping term in equation 2.31. Using this element, the bond-graph developed in section 2.1 can now be modified as shown in Figure 6 to include the effects of non-modally distributed damping. (MA) (MB) (CA) IA 18 (CB) RA RB (KA) \ (CN) / (KB) CA‘¢~~- IA , RD .111_mm- IB -~m7 CB (VII) (v22) TFIA TFZB (VI2) v2I) f TFIB TFZA r // \ Fl Ol 02 F2 c~ —'.—-"7 e E2 SEI XI x2 .3 Figure 6 A Coupled-Mode Bond-Graph for Non-modally Damped Systems Except for the addition of the 2-port R element, this bond-graph is identical to the graph shown in Figure 2. It contains the same 2 damped modal oscillators connected to the external forcing through the same transformer structure. Adding causality as shown in Figure 7 will further illus- trate the interactions across the R element. (MA) 22 (MB) (CA) IA (CB) RA if (KA) \\\v (CN) «//4% (KB) CA‘L*—-fl IA I , RD A? I IB B———7 CB (VII) (vzz) TFIA TFZB _. (VI2) v2I) f \TFIB TFZA ‘f XI x2 Figure 7 The Coupled-Mode Bond-Graph with Causality Added From this bond-graph, the state space equations can be written in the (modal) state variables’TfA,n ”VB, "3: ’rfA=-(CA/MA)’TfA - KA RA - (CN/MB) WE + VllFl + V21F2(2.38a) (1/MA)7fA (2.38b) ;. 3’ II ’ffB=-(CB/MB)’TTB - KB n3 - (CN/MA) 7g + VlZFl + V22F2(2.380) (l/MB)’rrB (2.38d) : m II Differentiating equations (2.38b) and (2.38d) yields 23 ’frA = MA “A (2.393) MB ('13 (2.39b) 7TB Now substituting equations (2.39a), (2.39b), (2.38b), and (2.38d) into equations (2.38a) and (2.38c) yields MA RA + CA RA + CN RB + KA RB = VllFl + V21F2 (2.40a) MB RB + CB RB + CN RA + KB m V12F1 + V22F2 (2.4013) or in matrix form, [:MA 0] (V [CA 0] ml? Chilmlfm (flu: d' [p1] (2.41) 0 MB 0 CB CN 0 0 KB F2 Notice that these equations are exactly the transformed equations (2.36) from which the model in Figure 7 was devel- oped. Since the transformed equations are simply the origi- nal equations taken into a different coordinate frame, this shows that the modified modal model exactly represents the original system equations. 24 2.3. The Need for This Type of Model At this point the question arises as to why go to the trouble of putting the system into this coupled-mode bond- graph form. It seems hardly worth the extra trouble since a more conventional bond-graph for the system can easily be developed and a computer solution based on that model easily obtained. It would appear that this representation offers little advantage. The answer lies in the potential for model simplification. This modal structure allows a view into the modal response of the system not generally avail- able in other bond-graph structures. If, for the expected type of input, a particular mode is found to be inactive, it may be possible to eliminate that part of the model, thereby reducing the model complexity and saving computer time. This would be of particular interest if the model were part of a large system on which repeated simulations were in- tended. This situation frequently occurs in the design of control systems. One type of model reduction of particular interest is the modal damping assumption. Earlier it was stated that one way in which designers avoid the problems with non-modal damping is to replace the damping in the original system equations with modally distributed damping in the trans- formed equations. If the damping is light this procedure is assumed to introduce only minimal error. The questions here are: 25 1. When can the damping be considered light? 2. How much error is introduced by assuming damping is light? Chapter 4 presents a study into these questions using the newly developed modal bond-graph model. The objectives of this study were to determine if any conclusions could be drawn in regards to: 1. The error introduced by eliminating the coupling element by looking at some measure of the force or power transmitted through the 2-port R element. 2. If some indication of the strength of the coupling could be obtained by comparing the coupling coefficient with some grouping of the other system parameters. If some "rules of thumb" could be established in this area it would give some insights as to when a modeler could safely make the modal damping assumption. Before proceeding with this study it was necessary to develop some way to quantify the difference between the re- sponses obtained for various levels of modal coupling. At the time of this study, bond-graph analysis packages such as ENPORT did not allow numerical comparisons between consecu- tive simulations. It was therefore, desirable to enhance the ENPORT package to allow this type of comparison. Chap— ter 3 presents the development of this feature. It should 26 be pointed out that this is also a very useful feature for general system modeling and design. It could be very help- ful in determining the sensitivity of a system response to changes in the design variables. Chapter 3 Automated Error Analysis Using ENPORT. 3.1. he Need for Error Ana sis. Very often in the design modeling process it is desir- able to evaluate the difference in the output response as the model parameters are changed. This is especially impor- tant when the goal is model reduction. For this case these differences are the output errors resulting from the pro- posed reduction. The most straightforward way for determin- ing these response differences is to compare the results from comparable simulations of the two models. In the past the problem has been that ENPORT, a bond- graph simulation software, did not facilitate comparisons of separate simulations. Designers were forced to "overlay" response curves from consecutive simulations in order to visually perform these types of comparisons. The informa- tion obtained from these comparisons is generally qualita- tive in nature and lacks the numerical basis for making accurate comparisons. Since a substantial portion of the study presented in Chapter 4 consists of making these types of comparisons, it was desirable to enhance ENPORT to allow the numerical evaluation of output response comparisons obtained from comparative simulation runs. 27 28 3.2. Program Development Before explaining the specifics regarding the new analysis feature, a brief explanation is in order on how ENPORT operates. ENPORT is a dynamic analysis package which provides numerical solutions for dynamic systems which have been represented in bond-graph/block-diagram form. This study focuses on models represented in bond-graph form. In developing the differential system equations from a bond-graph, four types of variables are used: P, Q, E, F. (1) P is the momentum variable associated with energy storage element I. (2) Q is the displacement variable associated with energy storage element C. (3) E is the effort (force) variable associated with each bond. (4) F is the flow (velocity) variable associated with each bond. Using these variables, ENPORT sorts the system equa- tions and arrives at a formulation equivalent to >2 = f(X,U,t) (3.1) where X is the state vector, 29 U is the input vector, and t is the time (the independent variable) A linearized form of this equation can be generated by a numerical approximation at any given state X and time t. The result is x = A*X + B*U (3.2) where A is generated by ( dfi/ de) and B is generated by ( dfi/ de) For a linear system the A and B matrices should be independ- ent of the X and t chosen. Once ENPORT has obtained the equations in this form, it is simply a matter of numerical integration to obtain solu- tions for the state (energy) variables. These values are then stored in an internal array for subsequent display. In addition to these state variables, the efforts and flows associated with each bond and the input values are also saved. These can be used later to derive other quantities of interest such as power and energy transferred through the bond structure. With these solutions store in internal memory, output plots of selected quantities can easily be obtained, although some quantities, such as power or energy, are derived and need to be computed prior to display. These stored values can represent a substantial portion 30 of memory. Considering a simple model might contain 10 storage elements, 30 bonds, and 3 or 4 inputs, saving 300 time points for each variable would result in a storage array containing 22,200 real numbers. For this reason ENPORT reuses the same internal memory for each new solu- tion and this is the reason that numerical comparisons of subsequent simulations could not be made. The first step in incorporating the analysis feature was to provide ENPORT with the capability of storing and retrieving the result values. Since these result files may be used over a period of several ENPORT runs, it was deter- mined that they should be saved in disk files and not simply in internal memory. This also avoids excessive demands on the required system memory. In order to keep the result file size to a minimum, the original system model and equa- tions are not included. Besides the results themselves, these files contain only a header including the original model filename, the results filename, i.e. a 1 line descrip- tion, and a list of the saved variables. It is assumed that the original model has been reloaded into ENPORT prior to reloading a saved results file, using the standard method. This assumption is verified by comparing the model name with the model name saved in the results file. Although this is obviously not a failsafe check, it does provide some safe- guard. Although not yet incorporated, a better check would be to compare the results variable list with the model vari- able list. Also in an effort to make the results files 31 smaller, they are saved in an unformatted form. Once the ability to save and retrieve the computed results was developed, incorporating a difference analysis was begun. It was simply a matter or retrieving the results values into a 3 dimensional array, with the third dimension indicating a particular set of results. Difference values can then be computed for any set of selected variables. These values can be listed or plotted just like an original set of solutions. From this information quantitative deci- sions can be made regarding the errors associated with the proposed changes. Another procedure along the same lines as error analy- sis is sensitivity analysis. To assist in this type of analysis it would be useful to be able to plot some measure of the change in the output variables as a function of the variation in system parameters. The problem in incorporat- ing this type of feature for arbitrarily selected result variables is that it would potentially require huge amounts of internal memory. Considering that each variation would require a full set of results and that several variations would need to be compared in order to draw accurate conclu- sions for a particular parameter. Even for a simple model this would require the storage of 300,000 real numbers. In order to avoid using large amounts of internal mem- ory to store loaded results files, the analysis package is currently limited to a comparison of only 2 files at a time. This serves the purpose of this study since only error 32 values caused by changing the intermode coupling strength are of interest. The effect as this parameter is varied over a range of values can be studied by comparison of the results two at a time. This is an area for potential future improvement which will be discussed in a later section. 3.3. An Example of the Analysis Feature As stated earlier, it is often desirable to obtain quantitative comparisons of the output response for a system as the model parameters are varied. ENPORT is now capable of these types of comparisons. The following example is provided as a demonstration of this feature. Using the bond-graph for the non-modally damped system developed in section 2.2 as an example, the effects of as- suming modal damping on output response can be studied. This is the actual application in this study for which the software was developed. Figure 1 shows the standard 2 de- gree of freedom spring-mass-damper system from section 2.2. Using the methods described in that section the bond-graph in Figure 2 can be obtained for a given set of parameter values. This model and its associated parameter values can be input into ENPORT in the usual way. (An ENPORT file listing is included in the appendix.) A simulation can then be run to yield the system response to a given set of inputs and initial conditions. Selecting the velocities of the masses 33 as the variables of interest, the plot shown in Figure 8 can be obtained of these velocities as a function of time using the standard ENPORT feature. In the modal bond-graph of Figure 2 the velocities of the masses are the flows on bonds 1 and 2: f.1 and f.2. Since no assumptions have been in- troduced into the model, these resulting velocities are the true results and therefore are used as the baseline for future comparisons. 3&9 . TAIL a» :17. - i 3 I- ‘J- . .' l I 1:3 Li II a 0.3 " (I ' . 3 I GG H II III 'I ' '|' '.‘_J°\-.. . L I l! II~ 3; ‘ ‘- 1 I DU r .5 "_..--—---~-—..._ “a [B I. - “H‘s; Aw. I - '1 f if ah" ' ”if” ' 1 l a“ Iii“..- __r"‘- ‘1'. gr“ y Ix. - -::I.IIII , - - - “it!“ B4+fl ka er§ [IEU £186 TIHE 116'; 1 LEEEHD) F.Sl-——-F.52-.m RBFHEMEEETWEE Figure 8 The Reference Velocity At this point the results data should be filed using the new analysis feature. 34 Post-processor options G: Graph (High resolution) P: Plot (low resolution) T: Table 8: System graph display L: List processed data D: Operations on run Data R: Return to the main menu Figure 9 The Modified Post-processor Menu The new option, D: Operation on Run_Data, can be called from the modified ENPORT post-processor menu (Figure 9) to obtain the analysis options menu as shown in Figure 10. Run_data processing options W: Write run_data to file L: Load run_data from file S: Status of run_data C: Clear the run_data A: Analyze the run_data R: Return to the post-processor Figure 10 The Run_Data Menu in ENPORT 35 From this options menu, W: Write Run_Data to File, can be selected. This choice will call a subroutine that writes all the computed result values to an unformatted binary file under a user selected name. Call it "ref.dat" for this ex- ample. Additionally, the user is allowed a one line file description which is included in the file. This is helpful for future identification of the correct file. Now that the results from the baseline simulation have been saved, a second simulation can be run with the assump- tion of a modally damped system. This change can be imple- mented by setting the parameter of the coupling element, RN, to zero. The output response from this run is shown in Figure 12. H! I [‘33 . mu: ,5 ". 1 1. iii ' l -‘ . .555 (‘1 (I 1.3:... ‘ 3 I “G kl ‘| .‘I ,II I u 'u ,3“ '1" .r" " "‘2. i I an F, 3"? .I: - '- i i 5’ ”ha. Cgééz— K x; ET*~“fiT” ' 1 a E Ii} 'I".""‘.._ ._,,.".‘:I'.‘ 1. "‘ :3 {3:953 "* ‘1 fl _’_ ‘ - T IHE 3 1)}; 1 I£Bmm FBI—“FEE." ASSIi-E {I HIIIZaf-L EI-‘Ié—IFII-EI Figure 11 The Response with Assumed Modal Damping. 36 One important point to note is that simulations which are to be analyzed together must currently be run under the same time conditions. That is, the initial and final times, as well as the number of time stages, must match in order to obtain accurate response comparisons. Also, simulations which are to be compared must originate from the same topo- logical model. Only numerical values of the model parame- ters may be changed. For example it would not be acceptable to invoke modal damping by eliminating the coupling element. Now that this second simulation has been run, its re- sults can be written to a separate file. Call it "model.dat", using the same method as for the reference case. With the simulation results for the two cases now stored in the respective files, comparisons can be made between these sets of results for selected variables. These comparisons are obtained by again selecting option D: op- erations on run_Data from the ENPORT post processor menu which brings up the Run_Data menu as before. Selecting L: Load a set of run_data will allow the first file to be loaded into the storage buffer. This first file is consid- ered to contain the reference data set or the set containing the values to be subtracted from the second file loaded. In the case of this example, this would be the data set saved under "ref.dat", from the first simulation. After retriev- ing this reference data set, the second data file can be loaded using the same method as for the reference set. 37 This data set should contain the results to be compared to the reference case. For example the file "moda1.dat" would be loaded. Now, with the 2 data sets loaded and stored in the internal memory buffer, the analysis can proceed by select option A: Analyze run_data. This option presents the Analy- sis Options Menu as shown below. Run_data analysis options G: Graph difference values T: Table of select difference values R: Return Figure 12 Run_Data Analysis Menu in ENPORT Currently, the options allow the user to obtain tabular listings and hi-res graphic plots of actual difference val- ues for user selected variables. In the future the option could easily be modified to display normalized values such as actual average, RMS average or absolute average. Select- ing option '6: Graph', from this menu produces a hi-res plot of the difference in value of the user selected vari- ables. The program automatically computes difference values as the plots are constructed so there are no other steps involved from the user perspective. The graph routine used 38 to obtain difference plots is virtually identical to the standard ENPORT graph routine and all the standard features have been retained. Figure 13 is a plot of the displacement difference values versus time for the two files loaded above. BBB am: .7 313.: ‘z :1 ' [5.5 mm 3' __f_._ ‘LBB V“C .. ~ 3 I G 3 [Di -5189 < H.132! Edi) 13.9% LEI] U313 2.30 TIME ilGE 1 LEGEND: F.31—— FUSE - -- DIFFEIE'IEE (BLUES Figure 13 Change in Velocity for Modal Damping Assumption. Plots could also be obtained for the difference in any other system variables. The tabular data can also be dis- played by selecting 'T: Table'. For instance, if the in- formation regarding the change in net energy into the modal dampers was desired at each time step, option, T: Table, could be selected. Choosing the display variable as the energy (T) on the bonds connected to the modal damping ele- ments, a tabular listing of the change in net energy into the damper elements will be produced, Figure 14. Since 39 energy is an integral quantity of the state variables, the system will ask for the initial energy value. This value is taken to be the offset in the initial energy for the two cases and would generally be zero. DIFFERENCE VALUES Time T.DA T.DB T.NA Q.QQEE+QQ E.QEBEE+00 Q.@053E+GQ $.009@E+EQ 5.QQ@E+@$ -7.1824E-33 -7.198EE-@3 7.5281E-g3 1.9@®E+01 -7.9916E-03 -7.4B4éE-03 7.58fi9E-Q3 1.5%QE+Q1 -7.7132E-@3 -7.5135E-03 7.5389E-E3 Figure 14 Tabular Listing of the Change in Damper Energy Dissipated After completing the desired plots and tables from the loaded data sets options R: Return can be selected which returns to the run_data processing options menu. The other options which may be selected from this menu include: C: Clear the run_data S: Status of the run_data D: Debug the run_data Option C clears the internal memory to allow room for new sets of data to be loaded. Option 8 displays the names of the Data sets which are currently loaded. Option D allows the user to display a list containing the variable vector and the numerical values of each variable at each time step for a loaded results file, generally used as an aid to de- bugging the program. 40 3.4 Ppoggam Implementation and Future Enhancement Suggestions. The Fortran 77 subroutines which perform this new analysis feature fall into one of 3 categories: 1) New subroutines 2) Modified ENPORT subroutines 3) Unmodified standard ENPORT subroutines The new subroutines and the modified ENPORT subroutines have been collected under 2 files: DRUNI and DRULOC. The file DRULOC contains the subroutines which must be modified for a particular operating system. These are the subroutines that perform file manipulations. The rest of the subroutines are collected under the file heading DRUNI. Appendix A contains a listing of each of these files for reference purposes. The added capability of storing and retrieving ENPORT results data opens the door to a multitude of features that would further enhance ENPORT's usefulness in design. Some of these have already been mentioned such as the computation of normalized measures of the difference values (RMS, abso- lute average, actual average, etc.). Additionally, the program could be modified to allow comparisons of results data that were not computed with the same time steps. This could be accomplished by simple interpolation and will be a necessary change if results are calculated with a variable timestep integrator. 41 A somewhat more complicated enhancement would be the ability to compare specific results from several simulations simultaneously. Such a feature might be used to plot some measure of error (Such as RMS) versus percent change in a system variable, in essence showing the sensitivity of the system to changes in that variable. Earlier it was stated, however, that this type of analysis would currently require a large amount of system memory. This is because under the current design all system variables are saved and retrieved from the results files, which, to compare several result data sets, would require a prohibitive amount of memory. The solution to this problem would be to allow the user to reload only those system variables required to produce the desired plots. This would require much less system memory which would make it feasible to produce sensitivity plots. The discussion above points to another potential oppor- tunity for improving the program which would reduce the result data file size. This opportunity arises because the current design saves values for all the system variables. For a given model, many of these variables can be derived from a set of other system variables through algebraic equa- tions. If the system could recognize these independent variables, the size of the result data sets could be reduced by including only these variables and the necessary alge- braic equations. From these independent variables the post- processor could compute any requested variable value using the algebraic equations. This data handling scheme would 42 result in a minimal data set file size but would require a substantial change in the design of the post-processor. Chapter 4 Approximations to Non-modal Systems The model developed in section 2.2 was shown to be an exact "coupled-mode" bond-graph representation for a non- modally damped system. Solving this bond-graph would yield the exact response for the system under study. For larger, multiple degree of freedom systems this solution can be very time consuming. This is especially true when the model will be solved repeatedly, under a variety of input or initial conditions. It is therefore desirable to reduce the model complexity wherever possible. This can most easily be ac- complished by eliminating elements and bonds which can be shown to have minimal effect on the output response. This procedure is routinely used in the modal analysis of con- tinuous beam structures when only the first few modes are considered in the analysis. It is this same reasoning that allows designers to model lightly damped non-modal systems with modal damping assumptions. In the case of the non- modal bond-graph developed in Chapter 2 this assumption eliminates the non-modal 2-port R damping element resulting in a simplified representation. 4.; The Objectives of The Study The problem with the modal damping assumption is that it is usually unclear as to when the assumption can 43 44 accurately be applied. Using the modal bond-graph from section 2.2 to provide a unique perspective, this study attempts to quantify this decisions. In essence some "rule of thumb" was sought that would indicate the amount of error which would be incurred if the non-modal damping element were eliminated, reducing the system to the modally damped case. To provide this rule of thumb would require some type of indicator which could be correlated to the error incurred in the modal damping assumption. Mathematical analysis did not reveal the desired indicator. An in-depth study was therefore undertaken comparing simulation results as system parameters were varied. It was believed that some correla- tion could be found by comparing the output response error between the non-modal model and the corresponding reduced modal model to easilty measure system quantities. Since there was no way to accurately compare results from succes- sive simulations the first task of this study was the ENPORT enhancement detailed in Chapter 3. Once this new tool was developed the experimental investigation could proceed. 4.2. The Study Implementation Figure 15 shows the modal bond-graph of the non-modally demped system developed in section 2.2. The structure of this bond-graph can basically be broken down into 2 inde- pendent modal oscillators that are coupled by a 2-port 45 damping element. (MA) (MB) (CA) IA IB (CB) RA RB (KA) \ (CN) / (KB) CA‘w—l IA I—-——- / RD A ——————— ——~--I\ IB (~—-—-°-/ CB (VII) (V22) TFIA TFZB (VIZ) V2I) r \TFIB TFZA T SE1 Jil— I 0' 02 |p_f_2_ SE2 Figure 15 A Coupled-Mode Bond-Graph for a Non-modally Damped System. As explained in section 2.2 this coupling element ex- ists to provide for the damped coupling of the transformed modal equations (see eq. 2.36). The parameter value for this element is determined by the off diagonal terms in the transformed damping matrix. Since the transformed damping matrix is symmetric, a single parameter value is associated with this 2-port R element. Because of the symmetry, this element provides a unique power interaction between the modes which can be illustrated a typical element as shown in Figure 16. 46 el (Cti) <32 7.); ‘1 a r—f I f2? 1 Figure 16 A Typical 2-port R Coupling Element Assigning the power direction and causality the same as used in the non-modal bond-graph of Figure 15 implies that the inputs are the flows fa and fb. The algebraic nature of the R element then allows the direct computation of the output efforts ea and eb as follows. (cn) * fb (4.1a) ea eb (cn) * fa (4.1b) The power on bonds a and b can then be computed. Power a ea * fa (4.2a) eb * fb (4.2b) Power b substituting equations 4.1a and 4.1b into 4.2a and 4.2b yields Power a (CN) * fb * fa (4.3a) Power b (CN) * fa * fb (4.3b) 47 01' Power a = Power b (4.4) This result is interesting since it shows that the nature of this coupling element is to act alternately as a power source or a power sink to both elements simultane- ously, depending on the relative signs of the input flows. Additionally, an equal amount of power is provided to, or dissipated from, both modes. Since the addition of this coupling element is the only factor that differentiates a non-modally damped system from a system with modal damping, it would seem that the strength of its interaction could be used to determine the potential for model reduction. One measure of this interaction typi- cal in bond-graph studies is the power transferred. Using the power interaction of the coupling element as a basic measurement to quantify the potential for a modal assumption was therefore the first path explored as part of this study. To implement this portion of the investigation a simple 2 degree of freedom was chosen as shown in Figure 17. F I X '3 X29. ..“.9_ I: ”"2 I’ ””3 F— -___(3) _-_-.-_-___7 2) . ‘ W (I) - V (2) :3“ ’"flm‘ CI 50:0“ 3:0“: cs Figure 17 The Base 2 D.O.F. System Using the methods developed in Chapter 2 the modal mass, stiffness and damping parameter matrices were com- puted, as well as the modal transformation matrix. _ M' = 10.90 0 0 1.10 (4.5a) K. = 6000 0 0 6.00 (4.5b) CI = c1+1.5002+4.95c3 c1-1.50c2-.50c3 c1-1.50c2-.50c3 c1+1.50c2+.051c3 (4.5c) and ¢ = 1.00 1.00 2.225 -.225 (4.6) From these parameter matrices a coupled-mode bond-graph can 49 be obtained as in Figure 18. (IO.9) (I. I) (CA) IA IB RA T (6.0) \ (CN) 8/3235 CA (.1 IA I—————-——---/ RD z—~-—-—~—~-——-~—~I ——~—— 2- bCB ( I .0) 22) TFIA TFZB .. ( I .0) 2.22) —- ( TF I B TFZA/ f \ SEI -—-[:-l-~7I 0' 02 Fig“ SE2 XI x2 Figure 18 A Coupled-Mode Bond-Graph For the System in Figure 17 It should be noted at this point that although a non- modal coupling element has been included, this system may or may not be modally damped. This does not present any prob- lems since if the system were modally damped, the parameter of the non-modal coupling element would simply be zero. The initial focus of this investigation was to corre- late the modal damping assumption error to some measure of the power activity of the 2-port R element. It was believed that larger assumption errors would result from increased 50 intermode coupling activity, which could be measured as larger power interaction. If a generalized correlation between power and error could be found then a decision could be made as to the potential for model reduction based on power measurements. The idea was to run a simulation with the full system under the expected forcing conditions and measure the power interactions. From these power measure- ments quantitative decisions could be made about the poten- tial for model reduction. An experiment to test this idea and to reveal the cor- relation between power and error was then conducted. Using the above system, groups of simulations were performed while varying the damping parameter values. During each group of simulations, the values of the modal damping parameters, Ra and Rb, remained fixed. Several simulations were then run while the value of the intermode coupling element (Rn) was varied. For each simulation a measure of power transferred through the intermode-coupling bonds was recorded. Addi- tionally, the percentage error that would occur if the sys- tem were assumed to be modally damped was recorded. Plots of output error vs power were then created for each group of simulations. For the purpose of this experiment, error was defined as the difference in output velocities, f.1 and f.2, between a non-modally damped system and the same system under a modal damping assumption. Recall that these are the actual velocities of the masses in the original system. The RMS 51 average over some time period was selected as a means to quantify the amount of error. To avoid scaling problems these raw quantities were normalized by dividing the RMS error by an RMS average of the true velocity values. This normalization provided a measure of the percentage error associated with making a modal damping assumption. The second piece of information necessary to obtain the desired plots was a quantitative measure of the power activ- ity of the intermode coupling element. The RMS average was selected for this measurement also. This measurement is also affected by scaling and must be normalized. The normal procedure in ENPORT is to normalize these power measurements by the maximum power average of the elements selected, yielding power as a percentage of maximum. Since the effect of the non-modal element is to exchange power with each modal oscillator, it would seem that normalizing this power by some measure of the power activity within a mode,namely the maximum power bond, would be appropriate. This method was used in early portions of the study. It was noticed during the course of the early investigation that the element which exchanged the maximum amount of power would vary. It was felt that this inconsistency might hamper the process of developing the desired correlation. It was believed that a better scheme would be to compare the power activity in the damping bonds. Because the origin of intermode coupling is in the original system damping, this normalization would seem to provide a better insight into 52 the relative strength of the intermode coupling element. It is this relative strength which is the core of the issue since the modal damping assumption simply eliminates the intermode element and therefore its effect. If the effect is relatively weak then the elimination of the effect will not cause much variation. For this reason only the average power in the R element bonds was computed. The highest average was used as a baseline to normalize the other damp- ing bonds. This proved to be fairly consistent over the course of the experiment since the first mode always seemed to contain the highest power level. With these insights in mind, the experiment continued in an attempt to find a generic correlation between the normalized intermode power activity and the percentage of error resulting from a proposed modal assumption. Many groups of simulations were conducted for varied modal damp- ing ratios. To avoid influencing the results with the input frequency, unit step forces were simultaneously applied at both inputs. This type of input forced a transient analysis as opposed to a steady state analysis which would be pos- sible under a periodic form of input. Still it was felt that the correlations would be more easily obtained if forcing frequency was not a factor. The transient analysis did present a problem however, which was over what time period to compute the averages. Three times the longer 53 modal time constant was selected for this study. Potential problems resulting from this decision will be discussed in a later section. 4.3. e Results. Each group of simulations consisted of holding all parameters fixed except the intermode coupling. This pa- rameter was then varied over an allowable range as simula- tions were run for each setting. The allowable range for this parameter was determined using the transformed damping matrix. Since real physical systems were of interest in this study, the original damping parameters were selected to be positive. This restricted the range over which the off- diagonal term in equation 4.3c for a give set of diagonal terms. Recall that the off-diagonal term is the intermode coupling element parameter, while the diagonal terms are the parameters for the modal damping elements. For each of these groups of simulations, curves representing the average damping power activity versus percentage error were pro- duced. A typical plot is shown in Figure 19. (Appendix 8 contains an ENPORT listing of the mode with the parameter values) 54 ) < (I 232 20—"- /} ‘/p (I D m I ,/ // 2m I / 0 I5—- / Em / / 0 - NEGATIVE RN g, I / / 0 I - POSITIVE RN QC) H}._. 1’ mu) 4;,” —-- CA=I CB=I 922'. / — — CA=2 CB=2 Z< UJE OII CEO LUZ I l 25 30 PERCENTAGE OUTPUT ERROR Figure 19 A Typical Power Versus Error Plot The curves represented in this plot are the power dis- sipated in the coupling element (RD) for various levels of modal damping. The RMS values have been normalized by the average power in the first mode damping element (Ra). The power scale is therefore represented as percentage of power. Note that each data point is for a specific value of cou- pling parameter. Each curve developed during the experiment exhibited the same expected trend of increased error as the modal coupling power activity increased. Notice however that each 55 power vs error curve is represented by two lines. This split occurs as the intermode element parameter is varied from its maximum negative value, through zero, and to its maximum positive value. This causes the split in the error curve since error increases as the magnitude of the inter— mode parameter is increased. At first it may seem strange that positive damping parameters in the original system could produce a negative damping parameter in the trans- formed equations. However, the analysis shows this to be perfectly acceptable. What does seem strange is that the power vs error curves are not the same for a negative cou- pling element parameter as for a positive parameter. In general the effect of the sign of intermode parameter on system behavior is not understood. Although individually each group of simulations produce the expected results, the overall trends were not apparent. The slopes of the power vs error curves varied between groups of simulations as the modal damping parameters were changed. One set of simulations would show large errors corresponding to very small power percentages, while the next set would be the opposite. In the final analysis no trends could be found which could be used to provide the desired rule of thumb for making a modal damping assumption. Some progress was made in observing trends in symmetric systems. These are systems in which the damping ratios are the same for both modes. The general trend observed in these systems was that as the damping ratio was increased 56 the sensitivity of output error to power percentage was also increased. That is, that as the amount of modal damping is increased, a relatively smaller amount of power activity in the coupling element causes a larger output error. This seems to go along with the common wisdom that for small damping the modal damping assumption can be made with little consequential error. This trend was only an observation and was not thoroughly verified. 4.4. Problems Although the objectives of this study were not achieved, a great deal of information was obtained. Among this information are some of the potential reasons for not finding the desired correlations. It is possible that the desired correlation does not exist. However this author still believes that such a correlation can be found. One of the important factors effecting this study was the selection of step forcing inputs. As stated earlier, this decision forced a transient form of analysis. Due to the nature of the transient response, simulation time has large effect on the averaged values used in this study. This point can be illustrated using the response curves shown in Figure 20. £57 I" " l ‘51 .n r” r:- - r‘I- (5:1 -1 I 2.3.0 ’ “+186 £1.80 8.60 1.3.1 LBJ BAG 3.3a) TIHE iIUE 1 LEGEND) F .ELI ..——— FIB - -- KBIFETBEE Figure 20 Modal Velocity Response Curves. The curves shown in Figure 20 are the modal velocities plotted as a function of time. Notice that they are each typical underdamped responses of differing time constants. Using the methods from the experiment, these curves can be averaged over a time period of three times the longer time constant. If there is significant difference in time con- stants between the longer and the shorter, significant er- rors are induced in the average of the short time constant curve. These errors occur because for a substantial portion of the average period no activity is present. This tends to artificially reduce the averages, leading to power percent- ages that vary depending on the relationship between the 58 modal time constants. It is believed that this is part of the reason that some progress was made in the symmetric systems, since in these systems both modes posses the same time constant. Another factor that strongly effected the analysis was the value of the transformer parameters. These parameters attenuate the inputs to and outputs from each of the modes, scaling the effect of each mode in the output response. Since the transformed output responses were used in the error percentage computations, large error in one mode may not result in a large error in the analysis, the second mode had far less influence in the output than the first. There- fore, large errors in the second mode produced very little change in the output response. Somehow, in order to find the desired general rule of thumb, this effect must be ac- counted for in the analysis. 4.5 Suggestions for Future Research. During the course of this research a great deal of time was devoted to the development and initial analysis of the model and to the development of tools and techniques neces- sary to perform the analysis. Although the resulting re- search did not produce the desired results, the information gathered and documented in this report provides a good starting point for a second phase of research. With this information available at the start, it is believed that 59 further research into the behavior of the modal model will reveal the desired correlations. One area of interest is to consider the effect of the two port coupling element as a modulated effort source since its effect is to provide an additional forcing input to each mode. Comparing the force level in the coupling elements to the other force inputs to the mode could provide some useful insights. At this point it is also believed that the step inputs to the system should be replaced by periodic forcing. This will provide a periodic steady state response and avoid the problems associated with averaging the transients as de- scribed above. Elimination of this problem should make the trends more apparent although forcing frequency effects will now need to be accounted for. Based on the results that were obtained in this experi- ment it is believed that the proposed trends are present and that some measure of coupling activity can be correlated to the amount of error associated with a modal assumption. It is envisioned that a second phase of research that combines the information presented in this report with some further creative insights will produce these correlations. Chapter 5 Summary This research began as an investigation into linear non-modally damped systems using bond-graphs. It was hoped that a bond-graph approach might lead to new insights into the effects of damped coupling in the transformed equations. The ultimate goal was to develop some guidelines indicating the amount of output error potentially incurred by making a modal damping assumption on a given system. When possible, this assumption allows a simplified analysis, as well as reduces the model complexity. The first step in the process was to develop a modal model that accurately represents non-modally damped systems. Using a set of coupled transformed equations, a standard modal bond-graph was modified to include the coupling ef- fect. It was found that a standard 2-port R element, con- nected between the modes would accurately represent the coupling effect. Although this element is commonly governed by two parameters, only one was necessary in this case due to symmetry of the transformed damping matrix. This fact lead to the interesting property that the element acts a1- ternately as a power source or sink to both modes simultane- ously, providing or dissipating equal amounts of power to both modes. 60 61 After developing and verifying the model the next step was to begin to use the model to study the effect of inter- mode coupling strength on output response. This study re- quired the comparison of output responses of a series of simulations. The problem here was that ENPORT software did not facilitate these types of direct comparisons. Because these types of comparisons are often desired when using ENPORT in the design process, a decision was made to enhance the package by developing software that would include this feature. With all the tools in place the study proceeded in an attempt to find a correlation between intermode coupling ac- tivity and output response error. Net power activity was used as the basis to quantify the amount of coupling effect. Output error was defined as the difference between the out- put velocities with intermode coupling and the same veloci- ties with coupling set to zero, as if assuming modal damp- ing. RMS average was used to quantify both effects. To avoid a reflection of forcing frequency in the modal re- sponse, a step input was used in the study. This resulted in a transient form for the corresponding responses. Three times the longest time constant was selected as the standard time base for computing the RMS averages. Groups of simulations were run for varied damping para- meters. In each group, the value of the intermode coupling parameter was varied. Plots of net average power versus output response error were constructed for each group of 62 simulations. To include the effect of scaling between groups or simulations, the power average was normalized by the highest average power transferred in the modal damping elements. The average velocity errors were normalized by there respective average velocities. These normalizations provided measures that were interpreted as percent power and percent error and it was from these values that plots were constructed. As predicted each plot showed the expected trend of in- crease? error percentage a coupling power percentage in— creased. The problem came in attempting to draw any corre- lations from one group to the next. The slope of each plot seemed to vary depending on the overall amount of damping. That is to say that for one plot 10% power would correspond to 3% error while in the next plot 10% power would corre- spond to 15% error. Because of this plot to plot variation, no universal correlations could be found. However, it was observed that for smaller damping higher power percentages seemed to correspond to smaller errors. although the desired 'rule of thumb' for assuming modal damping was not found, much valuable information was gained. Tools and techniques were developed that might be valuable to future research in this area or possibly some other re- lated areas. Additionally, one avenue was explored and the possible road blocks pointed out which provide insights and direction to future research in this area. I hope some future research will reveal the desired correlations. 63 This information includes tools and techniques that can be used as a starting point for a second phase of investiga- tion that might reveal the desired correlations. LIST OF REFERENCES 1/ 2/ 3/ 4/ 64 LIST OF REFERNECES I. Fawzy. "A Theorm on the Free Vibration of Damped Systems." Journal of Applied Mechanics, Trans. ASME, March 1977, 132-134. D.L. Margolis: and G.E. Young, "Reduction of Models of Large Scale Lumped Structures Using Normal Modes and Bond Graphs." Journal of the Franklin Institute. Vol. 304, No. 1, July 1977, 65-79. R.C. Rosenberg; and D.C. Karnopp, Introduction to Physical System Dynamics, New York: McGraw-Hill, 1983. ENPORT Reference Manual, Rosencode Associates, Inc. Lansing, Michigan, 1989. APPENDIX A 65 APPENDIX A ENPORT Enhancement Code Listing CFlLE:DRUNli --------------- DRUNll ------------------------------------ EPILEzDRUNll --------------- DRUNll ------------------------------------ C--- Purpose: Subroutines in this file support storing and retreving C of simulation results data and the caICulation and C displau of difference values between sets of retrieved 2 data. g--- Description: A main module called from the post processor. C--- Contents: C RUNBL block data unit for initializing common C DATRUN controls module flow with menu C DATPUT put the run_data in file C DATCET et the run_data from file (dummu) C DBCRUN isplaz retrieved data for debugging _ C ANLDVR presen s menu for selecting ana usis and displau routines C DIFPLT driver for hi-res graphics C DFCURV draws actual hi-res curves C DlFTBL driver for tabular data displa: C DIFDEL gets displa: increments for ta le printing C DlFLST oes the ac ual table grintin C DIFVRH gets the displag varia le lis from user C DlFFIL ills the derived variables if necessarg C lNTDlF inte rates displa variables if necessarq C DFRSLT fcn o evaluate t e difference values C DFTLNT sets the displag time limit parameters g DFYLHT finds the min/mas value for each display vbl C C--- Index: C ANLDVR C DATCET C DATPUT C DATRUN C DBCRUN C DFCURV C DFRSLT (fcn) C DFTLN C DFYLHT C DlFDEL C DlFFIL C DlFLST C DlFPLT C DIFTBL C DlFVRH C lNTDlF C RUNBLK C C g--- Programmer: Tom Bush Harch l5. 1989 E--- Last revision: flag 2. l989 TLB CEOFHzDRUNll - ---------------------------------------------------------- C>>>>> g . ERUNBLK >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Last Change: 12/21/88 RR C BLOCK DATA RUNBLK E--- PURPOSE: Initialize common vbls in DATZBK.CBK lNCLUDE"ENPORT>ROSENBERC>SH1P72>SlZEBK.CBK’ INCLUDE 'ENPORT>ROSENBERC>SHIP72>SOLNBK.CBK‘ INCLUDE 'RDATBK.CBK' END C>>>>> g EDATRUN >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Last Change: 01/09/89 TB C SUBROUTINE DATRUN C--- PURPOSE: C Err- DESCRIPTION: INCLUDE INCLUDE INCLUDE Presents main menu for simulation results data handling. Hain menu called from post processor. 'ENPORT)ROSENBERG>SHXP72>SlZEBK.CBK‘ 'ENPORT)ROSENBERC>SHIP72>SOLNBK.CBK' 'RDATBK.CBK' (56 CFlLE:DRUNll --------------- DRUNll -------------------------- INCLUDE 'ENPORT)ROSENBERC)SHIP72)UTILBK.CBK‘ C INTEGER I LOGICAL FULL. OKAY C CHARACTER TOKENDI. STRING'BO EXTERNAL HENSET. BLNKLN. URTSTR. PROMPT. CETANS. COON. EXTERNAL DATPUT. DATCET. DBCRUN. ANLDVR INVOPT C CeeeDATRUNeeaeeeeeeeeeeeaeeeeaeeaeeeaaaaeaeeaaesseaeaeaeaeeeeeeeeaaeaeee CALL NENSET(.TRUE.) FULL - HHFULL NDSET' O C---- Present the run _data menu 10 CONTINUE IF (FULL) THEN CALL BLNKLN CALL BLNKLN CALL HRTSTR(' Run _data processing options‘) CALL URTSTR(: ---------- ) CALL HRTSTR( Hrite run data to file’) CALL HRTSTR( Load run Kata from file') CALL URTSTRI’ Status 0? run _data’) CALL HRTSTR(’ Clear the run data‘) CALL URTSTR(’ Debug print 0? the data’) CALL HRTSTRI' Analyze the run _data') CALL HRTSTR(’ . Return to the main menu ') CA ALL HRTSTR(' --------------------------- ) STRINCI’ Enter option (R): ' ELSE CALL BLNKLN CALL BLNKLN CALL HRTSTRi' Run _data processing options') CALL URTSTR( -------------------------- ’) STRINc- ' Hrite. Load. Status. Clear. Debug. Analyze. ”9????9’9713 lifull): ' ENDIF C-r- NON READ THE COHHAND TOKEN CALL PROHPT(STRINC) TOKEN C CALL CETANSiTOKEN) C--- NON INTERPRET THE TOKEN IF (TOKEN.EO.’O’) THEN IF (TOKEN.EO.'H') THEN CALL DATPUTIOKAY) COON ELSEIF (TOKEN.EO.’L') THEN CALL DATCET(OKAY) ALL 0 ELSEIF (TOKEN. E0. ’5' ) THEN CALL URTSTRI‘ Names of data sets loaded ') IF (NDSET.CT.O) THEN DO 50 l- l.NDSET 50 CALL HRTSTR(' 'l/DSNAH(I)) CALL GOON ELSE EN g?%L HRTSTR!‘ No run data has been loaded.‘) ELSEIF (TOKEN.EO.'C’) THEN ME 0 ELSEIF (TOKEN.EO.‘D') THEN ELSEEF (TOKEN.EO.'A') THEN ELSEIF (TOKEN.EO.'R') THEN URN CALL INVOPT Return? (57 CFlLE:DRUNll --------------- DRUNI) ------------------------------------ C END E))))> C CDATPUT >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>§>>>>>> Last Change: 03/09/89 TLB C C SUDROUTINE DATPUTIOKAY) E--- PURPOSE: Store the results data in a binary file. g--- INPUTS: Generated by dialog. E--- OUTPUTS: Data to file. INCLUDE 'ENPORT)ROSENBERC>SHIP72)SIZEBK.CBK' INCLUDE 'ENPORT)ROSENBERC>SHIP72)TITLBK.CBK' INCLUDE 'ENPORT)ROSENBERC>SHIP72)SOLN8K.CBK' INCLUDE ’ENPORT>ROSENBERC>SHIP72)POSTBK.CBK' INCLUDE ’RDATBK.CBK' INCLUDE 'ENPORT>ROSENBERC>SHlP72>UTlLBK.CBK‘ INCLUDE 'ENPORT)ROSENBERC>SHIP72)INPTBK.CBK' C INCLUDE ’ENPORT>ROSENBERC>SHlP72>CRFLBK.CBK’ CHARACTER FlLNAHO32. STRlNCe72. TIHOS. DATOB INTEGER UNIT. 1. J C LOGICAL OKAY. lSYES EXTERNAL BLNKLN. HRTSTR. PROHPT. YDRN. OUTBUF EXTERNAL CETUFL. CETTD CaeeDATPUYeeeeeeeeeeeaeeeeeeeeeeeeeeeeeeaeeeeaeeeeeeaeeeeeeeaeeeaeeeeaea C g---- Checl if original model .5. filed UNlT-PRUNlT 0PEN¢UNlT.FlLE=NAHE.STATus-‘OLD‘.ERR-950. l FORfla’FORHATTED’.ACCESS=‘SEOUENTIAL’) E---- File exists. model has been filed C CLOSE¢UNlT) C---- Get the run label 10 CONTINUE CALL BLNKLN CALL URTSTRt' T CALL HRTSTRi' ’ CALL BLNKLN CALL PROHPT(' Do you want to change it? (N):‘) ISYES'.FALSE. CALL YORN(ISYES) IF (ISYES) THEN CALL BLNKLN CALL URTSTR(' Enter the new run label on one line ‘) READ(e.lOSS) HRTLBL l055 FORHAT(A) HRITE(O.'(1X.A)‘) HRTLBL CALL OUTBUFiZ) COTO lO ENDIF he current run label line isz') //HRTLBL) C C---- Get the file name FILNAHI’DUHHY.NAH' CALL CETUFL(UNlT.FlLNAH) C lF (UNIT.E0.0) RETURN C---- Hrite the heading line. results file name. original model title. C and run label REUIND(UNIT) CALL CETTDIT!H.DAT) HRITE(UNIT.ERR-900) PROCID.VRSION.TIH.DAT URlTEIUNlT.ERRt900) FlLNAH HRlTEIUNlT.ERR-900) NAME HRITElUNlT.ERRs900) HRTLBL C---- Hrite the number of stages saved. the initial and final times. e vector C 68 CFlLE;DRUNll --------------- DRUNll ------------------------------------ uRlTE(UNIT.ERR-900) NS.TlN.T2$OLV HRITE>>)> g ,. EDATGET >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Last Change: 03/09/89 TLB‘ C SUBROUTINE DATGETIOKAY) E--- PURPOSE: Read the results data from a bin file E--- INPUTS: Run data common vbls in file. E--- OUTPUTS: Data in DATZBK.CBK filled in. INCLUDE 'ENPORT>ROSENBERG>SHIP72>SlZEBK.CBK' INCLUDE 'ENPORT>ROSENBERG>SHIP72>SOLNBK.CBK’ INCLUDE 'RDATBK.CBK' INCLUDE 'ENPORT>ROSENBERG>SHIP72)UTlLBK.CBK’ INCLUDE 'ENPORT>ROSENBERG>SHIP72)lNPTBK.CBK' C lNCLUDE 'ENPORT>ROSENBERG>SHIP72)GRFLBK.CBK' CHARACTER DSNAHT032. STRING972. NAHTHPOBZ. FlLNAHe32 CHARACTER TPRGlDOi. TlHeB. DATOS INTEGER UNIT. 1. J. TVRSN C LOGICAL OKAY. E7YORN C EXTERNAL BLNKLN. HRTSTR. FNDUFL. E7YORN CeaeDATCETeeeeeeeeeeeeeeeeeeeeeeeeeeeeaeeeeeeeeeaeeaeeaeeaaeaaeaaeeaeaoe C IF (NDSET.GE.HXNDST) THEN CALL BLNKLN CALL URTSTRI' see The run data base is full.') uRlTEISTRlNG.lO20) HXNDST lO2O FORHAT(4X.12.' is the masimum.') CALL HRTSTR(STRING) OKAY-.FALSE. RETURN C ENDIF lO CONTINUE Crrrr Get the file name FILNAH-‘eeee' CALL FNDUFLIUNIT.FILNAH) IF (UNIT.E0.0) THEN OKAY-.FALSE. 69 CFILEzoRUNIl --------------- DRUNI! ------------------------------------ C---- Set the data set name temporarilu DSNAHT- FILNAH DO 20 I- l.NDSE IF (DSNAHT E0. DSNAHiI)) THEN CALL BLNKLN CALL URTSTR(‘ .09 Duplication of data set already loaded.’) CALL HRTSTR(’ Please try again.’) CDT 0 10 ENDIF go CONTINUE NDSET- NDSET +1 C DSNAH¢NDSETlI DSNAHT C---- Read the heading line. results File name. original model title. C and run label REUIND(UNIT) READ(UNIT.ERR-900.END-950) TPRCID.TVRSN.TIH.DAT READ(UNIT.ERR-900.END-950) FILNAH READ(UNIT.ERR-900.END-950) NAHTHP READ(UNIT.ERR-900.END-950) RUNLBL(NDSET) C---- Check to see if correct model is loaded ‘ IF (NAHTHP .NE. NAHE) THEN CALL URTSTR(' Incorrect model loaded’) CALL HRTSTR(' The model 'l/NAHTHP) CALL HRTSTR(' Hust be loaded to proceed') NDSET-NDSET-l RETURN C NDIF C---- Check i9 file is correct IF (FILNAH.NE.DSNAHT) THEN EALL BLNKLN ALL HRTSTR(' File name mismatch.‘) ENgIFL HRTSTRC’ File ‘l/DSNAHT/l' was requested’) HRITE(STRING.10IO) TPRCID.TVRSN 1010 FORHAT(' written b ENPORT-‘.A1.’.’.I2) CALL HRTSTR(STRING . STRINCI’ Date written: ’l/DAT CALL HRTSTR(STRIN¢) ST RINGt' Time written ’l/TIH CALL HRTSTR>)>> E EDBCRUN ))>>)>)))>))>)>>>)>>>>>>Z>>>>>>>>)>>>>> Last Change: 01/09/89 TB C SUBROUTINE DBCRUN g--- PURPOSE: Displag data stored in memoru buFFers For debugging. C--- INPUTS; RUNLBL E DSNAH E--- OUTPUTS: INCLUDE 'ENPORT)ROSENBERC)SHIP72)SIZEBK.CBK' C INCLUDE 'RDATBK.CBK' CHARACTER STRINGOBO INTEGER I J C LOGICAL ISYES C EXTERNAL BLNKLN. HRTSTR. YORN Ceeepacnuueeeeeeeeaeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee C CALL BLNKLN CALL HRTSTRt‘ 0'0 This ogtion only disp CALL HRTSTR(' From t e last File lo IF (NDSET CT. NO) THEN CALL URTSTR!’ Data From File: ‘//DSNAH(NDSET)) CALL HRTSTR(' The run label is;') CALL URTSTR) EANLDVR >>>>>>>>)>))))))))))>>>>>>>>>>>>>D>>>>>D Last Change: 5/2/89 TLB SUBROUTINE ANLDVR g-—- PURPOSE: Controls Flow For run data options. g--- INPUTS: Henu Driven. C C--- VARIABLES: g FULL Determines iF Full or abreviated menu is displayed. C INCLUDE 'ENPORT)ROSENBERC>SHIP72)SIZEBK.CBK’ INCLUDE ’ENPORT>ROSENBERG>SHIP72)SOLNBK.CBK‘ INCLUDE 'RDATBK.CBK’ no CHARACTER STRING’BO. TOKENll LOGICAL FULL EXTERNAL URTSTR. BLNKLN. COON. PROHPT. CETANS EXTERNAL INVOPT. DIFPLT. DIFTBL CeeeANLDVReeeeeeeeeeeeeeeeeeeeeeeeeeeeeaeaeeeeeeeeeeeeeeeeaeeeeeeeeeeeee C g--- First check iF suFFicient data sets have been loaded IF (NDSET LT. N2) THEN CALL BLNKL CALL NRTSTR(’ GOO InsuFFicient data OOO’) CALL URTSTR(’ At least 2 data sets must be loaded to analyze’) RETURN C ENDIF E--- Present the options menu 10 CONTINUE IF (FULL) THEN CALL BLNKLN CALL BLNKLN CALL HRTSTR(’ Run data analysis options‘) CALL HRTSTR(’ --- --’) CALL HRTSTR(’ G: Gra h diFFerence values ’) CALL HRTSTR(: T: Tab e oF select diFFerence values ’) CALL HRTSTR( L: List processed diFFerence values.’) CALL HRTSTR( Return’) CALL HRTSTR( STRING-’ Enter option (R): ’ ELSE CALL BLNKLN CALL BLNKLN CALL HRTSTR(’ Run data analysis options’) STRING-’ Graph. Table. List. Return? (Full)’ ................ .) ENDIF C--- Now read the command CALL PPONPT)>>)))))))>))>>>>>>>>>>>>>>>>>>>>> Last Change; 4/9/89 TLB SUBROUTINE DIFPLT --- Purpose: Provide driver For hi-res graphicsT plots diFFerence in valhes store Screen scale Factors: 1 line a 22 points I column I 14 paints (WOCHDOCH) Offlfifi (H1 INCLUDE 'ENPORT)ROSENBERG>SHIP72>SIZEBK. INCLUDE 'ENPORT)ROSENBERG>SHIP72>SOLNBK. INCLUDE 'ENPORT)ROSENBERG)SHIP72>POSTBK. INCLUDE 'ENPORT)ROSENBERG>SHIP72>UTILBK. INCLUDE ’ENPORT>ROSENBERG>SHIP72>GRCHBK. INCLUDE ’RDATBK. CB OCWNWO mcnnmai XXJUFX on INTEGER SCLVARiD). NUHSCL. JTIH LOGICAL CONT. TIH REAL YHX(0:5). YHN(O:5). SCLHIN(O:5). SCLNAX(O:5) LOGICAL PROCFG. E7YORN INTEGER CURTER. CURDEV. VC2IS EXTERNAL NEHDEV. NENL. SETDEV. E7YORN. DALINE. TGRTYPE EXTERNAL HRTSTR. BLNKLN. GETLAB. DIFVRH. DFTL EXTERNAL DFYLHT. SCALY. CONTUE. GRIDLE. DFCURV. ANHODE EXTERNAL DAVIS. COLOR. DAFULL.VC2IS eeeo1FPLTeeeeeeeeeeeeeeeeeeeeaeeeeeeeeeeeeeeeeeeaeeeeeeeeeeeeeeeee OCHH1 IF (ITERH.E0.0) THEN CALL BLNKL SETLM HRTSTR(’ COO This is not a graphics terminal ’) NDIF C C--- Set deFu It t increments to maximum density JTIH-VC2éS: ’) l NUHSCL-l CALL GETLAB¢LABEL.DATIH) CALL DIFVRH(.TRUE.) IF (NREOD.E0.0) RETURN CALL DFTLHT 73. CFILfizDRUNIl --------------- DRUNIl ------------------------------------ CALL DFYLHTIYHX.YHN) CALL SCALY(SCLHIN.SCLHAX.YHN.YHX.SCLVAR.NUHSCL) CALL GRTYPE C CALL CONTUE(CONT) IF (.NOT.CONT) RETURN CALL GRIDLE(SCLHIN.SCLHAX.DATIH.SCLVAR.NUHSCL) C CALL DFCURV(SCLHIN.SCLHAX.SCLVAR) C--- Hait For next input to return (Ieeps screen clear) CALL NEHL C CALL PAGE CALL ANHODE C CALL DAVIS(.TRUE.) CALL DALINE(2) CURDIA-.FALSE. CALL BLNKLN CALL BLNKLN CALL BLNKLN IF (E7YORN(’ Hould ou like this image stored in a File? ’. l .FALSE.) THEN CURTER I ITERH C CURDEV - DEVICE CALL NEHDEV(PROCFG) IF (.NOT. PROCFG) THEN RETUR C ENDIF CALL GRIDLE(SCLHIN.SCLHAX.DATIH.SCLVAR.NUHSCL) C CALL DFCURV(SCLHIN.SCLHAX.SCLVAR) g--- And we put the pen away on HPGL hard copy plotters C CALL COLOR(-l) ’ ITERH-CURTER CALL SETDEV(CURDEV) C ENDIF CALL DAFULL CALL PAGE CALL ANHODE RETURN C C END C>)>>> EDFCURV >>>))>)))>)>>>>)>>>)>)>>))))>>>>>>))> Last Change' 04/l5/89 TLB 000000000 n 00 000 SUBROUTINE DFCURV(SCLHIN.SCLHAX.SCLVAR) DFCURV DRAHS THE Y VERSUS T CURVES FOR PROCESSED DIFFERENCE VALUES INPUTS: Tl.II.I2.NREGD.JDX.RES I- STAGE (X) INDEX J- VARIABLES (CURVE) INDEX L. TYPE OF LINE DRAWN INCLUDE 'ENPORT)ROSENBERG>SHIP72)UTILBK.CDK’ INCLUDE 'ENPORT)ROSENBERG>SHIP72>SIZEBK.CBK' INCLUDE 'ENPORT>ROSENBERG)SHIP72>SOLNBK.CBK’ INCLUDE 'ENPORT>ROSENBERG)SHIP72>POSTDK.CBK’ INCLUDE 'ENPORT>ROSENBERG>SHIP72>GRCHBK.CBK’ INCLUDE 'RDATBK.CBK' REAL SCLHIN‘O:5). SCLHAX(0:5). DFRSLT. TIH INTEGER SCLVAR(3). J. L. IVAR. INIT. JTIH. VCZIS EXTERNAL RECOVR. DUINDO. COLOR. NOVEA. DFRSLT. DASHA. HOME. BELL EXTERNAL ANHODE. VC2IS eeeDFCURVeeeeeeeeeeeeeeeeeeeeeeeeeeeaeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee CALL RECOVR 74 CFILEtoRUNIl --------------- DRUNI) ----—---------‘ --------------------- C Find the First point in time we are interested in C C JTIH I E7KVBG(‘TIHE') + l JTIHI VC2ISI’TIHE‘) INIT I 0 ll CONTINUE INIT I INIT * 1 TIM I DSET(INIT.JTIH.I) IF(TIH.LT.TI) GOTD II C DELTAIDSET(2.JTIH.I)-DSET(I.JTIH.I) DO IOO JII.NREOD CALL DUINDO(SCLHIN(O).SCLHAX(O). I SCLHIN(SCLVAR(J7).SCLHAX(SCLVAR(J))) IF(DEVICE.NE.2 .AND. DEVICE.NE.5) CALL COLOR(J) LIJ-l CALL HOVEA(DFRSLT(INIT.O).DFRSLT(INIT.J)) C IVAR I INIT IO IVAR I IVAR O I IF(IVAR .GT. RNS(I)) GOTO IOO TIH I DSET(IVAR.JTIH.I) IF(TIH.GT.T2) GOTO 100 CALL DASHA(DFRSLT(IVAR.O).DFRSLT(IVAR.J).L) C GOTO 10 éOO CONTINUE CALL HOHE CALL DELL CALL ANHODE CLOSE (18) RETURN END ))))) x DIFTBL ))))>))>>>>>>>>>>>)>>>>>>>2>>>>>>>> Last Change: 419/89 TLB SUBROUTINE DIFTBL This is a driving routine For listing run data diFFerence values in tabular Form. INCLUDE 'ENPORT)ROSENBERG>SHIP72>SIZEBK.CD INCLUDE 'ENPORT>ROSENBERG)SHIP72)SOLNBK.CB INCLUDE 'ENPORT)ROSENBERG>SHIP72)POSTDK.CB LOGICAL CONT. DATIH EXTERNAL GETLAD. DIFVRH. DFTLHT. CONTUE. DIFLST.DIFDEL eeeotFTBLeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee CALL GETLAB(LABEL.DATIH) CALL DIFVRN(.FALSE.) IF (NREOD.E0.0) RETURN 0 CONTINUE CALL DFTLHT CALL DIFDEL CALL CONTUE(CONT) IF (.NOT.CONT) GOTO l0 CALL DIFLST(DATIH) RETURN END >>))) 0000 00000 0 0 O O O 0 000 0 0 XXX *0 0 DIFDEL >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Last Change: 05/l6/89 TLB SUBROUTINE DIFDEL DIFDEL: SETS DISPLAY INCREHENT USED IN TABLE PRINTING. 000 00000 0 0 0 7S CFILE DRUNIl --------------- DRUNIl ------------- d; --------------------- C INPUTS: DELTA.TI.T2 E OUTPUTS: IDEL INCLUDE 'SIZEBK.CBK’ INCLUDE 'SOLNBK.CBK’ INCLUDE ’POSTBK.CBK’ C REAL DTHI. TINC LOGICAL NEHLIN.ENDLIN C CHARACTERI70 STRING C EXTERNAL BLNKLN. HRTSTR. PROHPT. GETRL CeeeDIFDELeeeeeeeeeeeeaeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeaeeeeeeeeeeeeeeeee C CALL BLNKLN CALL HRTSTR(’ Set time increment For display ’) CALL BLNKLN TINCIDELTA uRlTE>>)> E SDIFLST )>>>))>)>>)>>)>>>>>>>>)>>)))>))>)>>) Last Change: 4/9/89 TLB C SUBROUTINE DIFLST(DATIH) x C Purgose: E Lis the diFFerence values in the loaded run data. INCLUDE ’ENPORT>ROSENBERG>SHIP72>SIZEBK.CBK’ INCLUDE ’ENPORT>ROSENBERG>SHIP72>SOLNBK.CBK’ INCLUDE ’ENPORT>ROSENBERG>SHIP72>POSTBK.CDK’ C INCLUDE ’RDATBK.CBK’ LOGICAL DATIH INTEGER I. J. N. JTIH. VCQIS REAL TIN. DFRSLT CHARACTER DATEOS. TIHECHOS. STRINGOBO EXTERNAL GETTD. DLNKLN. HRTSTR. VC2IS. DFRSLT C C CeeeoIFLSTeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee c C --- Put up list heading CALL BLNKLN HRITE(STRING.lOIO) NDSET. DSNAH(NDSET) IOIO FORHAT(lX.’Data set ’.I2." ’.(A)) CALL NRTSTR(STRING) CALL URTSTR(’ Hinus’ HRITE(STRING.IO20) DSNAH(l) 1020 FORHATth.’ReFerence data set: ’.(A)) CALL URTSTR(STRING) CALL BLNKLN C--- Put u the date and time IF ( TIH) THEN CALL GETTDéTlHECH.DATE) IF (DATE TH HEN HRITE(STRING.1005) DATE. TIHECH IOOS FORMAT(IX.’Date: ’.A8.’ Time: ’.A8) CALL HRTSTR(STRING) ENDI C ENDIF C--- Put up title and column headings CALL BLNKLN STRINGI’ 'l/LABEL(I:7I) CALL NRTSTR(STRING) CALL BLNKLN HRITE(STRING.IOOO) (CLBL(J).JII.NREOD) 76 CFILELDRUNII FORHAT(' Ti '.5X.5(IX.AIO.1X)) CALL HRTSTR(STRING) C CALL BLNMLN C--- Now com JTIHIV 1000 ute a the table oF data TIH . 1100 DEI 2. 100 CALL NR CONTINUE RETURN END (3 0 V J V V V DIFVRH ))))))>)>>)>)>>>>>>)>>>>>>))>>>>>>>>>>> Last Change: SUBROUTINE DIFVRHSHIP72>SOLNBK. ’ENPORT)ROSENBERG>SHIP72>POSTBK. ’ENPORT)ROSENBERG>SHIP72)UTILBK. DVNAH(HAXNRO)012 RVBLX. NR ED PROMPT. eee Nothing available For display, (DF RSLT(I.N).NII.NREOD) 4) 04/15/89 TLB diFFers From DVAROH in FILRSD. CBK‘ CBK’ CBK’ CBK' SPEAKF RVBLX eeeDIFVRHeeeeeeeeeeeeeeeeeeeoeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee ‘) ') CFILE: c--_- I5 c---- 1020 C c-—_- '77 onunxi --------------- DRUNll ---------—-—--¥ --------------------- Do the horizontal axis here (one variable only) rixontal axis? (’// I).I) CALL GETANS(ANS) SPEAKFI.TRUE. KVBLXI RVBLX(ANS.SPEAKF) IF (KVBLX.E0.0) THEN GOTO 13 ELS SE JDX( CLBL ENDIF ENDIF And now the vertical axis variables. CALL BLNKLN CALL HRTSTR (’ The Current display list ’) CALL BLNKLN HRITE(STRING.1020) (CLBL(J).JI1.NREOD) CALL HRTSTR(STRING) FORHAT(5(1X.AI2)) Check iF the list is okay IF (E7YORN(’ NDo you want to change the list?’. .FALSE.)) THEN CALL BLNKL CALL HRTSTR(’ Enter a new list on one line (or HELP):’) CALL BLNKLN CALL PROHPT(’ )') NEHLIN-.TRUE. NREDI 0 - Commence to read the line ANSIBL CALL GETHD (ANS.NEHLIN.ENDLIN) IF (ANS. NE. BLANK) THEN NREDI NRED+1 DVNAH(NRED)I ANS IF (NRED.EO.HAXNRO) GOTO 203 NEHLIN-.FALSE. ° GOTO 200 ENDIF I KVBLX 0) (OII ANS C------ Commence to identiFy the entries 203 c ..... I 9010 0000 SPEAKFI. TRUE. NREODI 0 DO 220 II l.NRED KVBLXI RVBLX(DVNAH(I). SPEAKF) --- Implicitly ignore bad entries IF (KVBLX GT 0) THEN NREODI NREOD+1 JDX(NREOD)- KVBLX CLBL(NREOD)- DVNAH(1) ENDIF CONTINUE - This list has been cracked IF (NREOD E0 0) GOTO 10 IF (E7YORN(’ Do you want to see the list again?’..FALSE.)) GOTO 10 ENDIF Set the JDX entries For derived vbls to proper indices NODVI 0 IF (JDX(0).GT NOVV) THEN NODVI NODV+1 JDX(0)I NOVV+NODV ENDIF DO 250 II l.NREOD IF (JDX(I).GT.NOVV) THEN NODVI NODV+1 JDX(I)- NOVV+NODV ENDIF CONTINUE IF (DDGFLG) THEN CALL BLNKLN CALL HRTSTR(' 009 Debu data For d CALL HRTSTR(' DEBUG HO E NOT ACTIV HRITE(STRING.9010) NREOD. NODV. NOVV FORMAT(3X.’NREOD. NODV. NOVV: '.3 CALL HRTSTR¢STRINGl HRITE¢STRING.9020) (JDX(I).I=O.5) ved vbls ’) '78 CFILE onunx: --------------- DRUNll -------------- 1 --------------------- C9020 FORHAT(5X.’JDX: ’.bl5) C CALL HRTSTR(STRING) C HRITE(STRING.9030) (CLBL(I).I-0.2) C9030 FORHAT(SX.’CLBL: ’.3(A12.2X)) C CALL HRTSTR(STRING) C HRITE(STRING.9030) (CLBL(I).II3.5) C CALL HRTSTR(STRING) C ENDIF C---- Fill in the derived results iF necessary CALL DIFFIL C IF (DBGFLG) THEN C CALL BLNKLN C DO 940 JI i.5 C HRITE(STRING.9040) (RSLTD(J.I).II1.NODV) C9040 FORHAT(3X.1P.6E12.4) C CALL HRTSTR(STRING) C940 CONTINUE E ENDIF RETURN END C>)>>> E EDIFFIL >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Last Change: 03/)1/89 RR C SUBROUTINE DIFFIL E--- PURPOSE: Fills derived vbl buFFer with the proper diFFerence values. C--- INPUTS: CLBL. names oF all display vbls g JDX. indices oF all disp ay vbls g--- OUTPUTS: DRVVAL values oF derived vbls INCLUDE ’ENPORT)ROSENBERG>SHIP72>SIZEBK.CBK’ INCLUDE 'ENPORT>ROSENBERG>SHIP72)GREDBK.CBK’ INCLUDE ’ENPORT)ROSENBERG>SHIP72>SOLNBK.CBK’ INCLUDE ’ENPORT>ROSENBERG>SHIP72>POSTBK.CBK' INCLUDE ’ENPORT)ROSENBERG>SHIP72)UTILBK.CBK’ C INCLUDE ’RDATBK.CBK’ INTEGER I. JRD. N. VC2IS. IXE. IXF. NCON. IBIAS. J CHARACTER CH202. RESTOIO LOGICAL SPEAKF C REAL TEHPI. TEHP2 C EXTERNAL INTGR. VC2IS ceeeDIFF1Leeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee C IF (NREOD.E0.0) RETURN SPEAKFI.TRUE. C---- Get DRVVAL column index For this vbl (JRD) DO 100 II O.NREOD IF (JDX(I).LE.NOVV) GOTO 100 JRDI JDX(I) -NOVV rrrrrr Interpret the implied operation is derived momentum 0 is derived displacement H is power T is energy N is tota nodal energy CH2I CLBL(I)(1:2) RESTI CLBL(I)(3:12) IF (CH2.E0.’P.’) THEN IXEI VC2IS('E.'//REST) DO 20 NI l.RNS(l) 20 DRVVAL(N.JRD)I DSET(N.IXE.NDSET)-DSET(N.IXE.I) CALL INTGR(CLDL(I).JRD.SPEAKF) ELSEIF (CH2.EO.’0.’) THEN IXF- VC2IS(’F.’//REST) DO 30 u- 1.RNS(1) 30 onvvac¢~.unoi- DSET(N.IXF.NDSET)-DSET(N.IXF.1) CALL INTGR(CLBL(I).JRD.SPEAKF) 0CWNDOFWN5 0 '79 CFILE'DRUNII --------------- DRUNll ------------------------------------ ELSEIF (CH2 IXEI VC2IS IXFI VC2IS DO 40 NI 1 TEHPIIDS 40 DRVVAL(N.J IF (CH2 E0. ' CALL INTGR ENDIF ELSEIF (CH2.E0.’N.’) THEN DO 60 N- 1.RNS(l) 60 DRVVAL(N.JRD)I 0. C -------- IdentiFy this node DO 62 JI .INELS IF (REST E0 ELNAH(J)) GOTO 63 ONTINUE ETURN or each BOND on this node BIASI IBDPTR(J) -1 CON- IBDPTR(J*1) -IBDPTR(J) 0 b9 JI l.NCON IF (BDTP(I8DSEL(IBIAS+J)).NE.‘8’) GOTO 69 REST- BDNAH(IBDSEL(IBIAS¢J)) IXE- VC2IS(’E.’//REST) IXFI VC2IS('F.’//REST) DO 65 NI 1.RNS(1) TEHPl-DSET(N.IXE.1)¢DSET(N.IXF.1) TEHP2IDSET(N.IXE.NDSET)ODSET(N.IXF.NDSET) b5 DRVVAL(N.JRD)IDRVVAL(N.JRD)+(TEHP2-TEHP1) CALL INTGR>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Last Change 04/30/89 TLB SUBROUTINE INTGR(NAH.JVBL.SPEAKF) --- PURPOSE: Integrates the display vbl in INTVEC INPUTS: NAH. dis lay vbl name JVBL. DRV AL vbl (column) inder SPEAKF. a T call For initial value DRVVAL(O.JVBL) contains the vector to be integrated --- OUTPUTS: DRVVAL(O.JVBL) contains integrated vector INCLUDE 'ENPORT)ROSENBERG>SHIP72>SIZEBK_CBK‘ INCLUDE 'ENPORT>ROSENBERG>SHIP72>SOLNBK.CBK' INCLUDE 'ENPORTDROSENBERGDSHIP72}POSTBK CBK’ INCLUDE ‘ENPORT>ROSENBERG)SHIP72)UTILDK CBK' INCLUDE 'RDATBK CBK’ CHARACTER NAHOI2 INTEGER JTIH. LNAH. NCHARS. N. VC2IS. JVBL LOGICAL SPEAKF. NEHLIN. ENDLIN REAL VAL(HAXRES). TINSTP EXTERNAL BLNKLN. PROHPT. NCHARS. CETRL.VC2IS eeeINTCReeeeeoooeoeoeoeeeeeeeaeeoeeeoeeeoeeeaeeaeeeeeeeeeeeaeeeeeeeeeee 0("50fH50FH50 (H50FH1 0 C C C C---- Set initial value VAL(l)I 0. IF (SPEAKF) THEN CALL BLNKLN LNAHI NCHARSINAH) “ CsLL PROHPT(’ Enter initial oFFset value For '//NAH(1.LNAH)// NENLINI TRUE. EN DIFL GETRL(VAL(I).-10. £25.10. E25.NEHLIN.ENDLIN) C C--—- Now integrate DO 2.RNS(i) 8() CFILE:DRUNI1 --------------- DRUNI] -----------——-4 --------------------- C--- First Find the time step JTIH-VCZIS(‘TIHE') TIHSTP-DSET(N.JTIH.l)-DSET(N-l.JTlH.l) C 20 VAL(N)- VAL(N-l) +DRVVAL(N-I.JVBL)OTIHSTP 0 40 N' I.RNS(I) DRVVAL(N.JVBL) ‘ VALIN) RETURN END g>)>)) C C EDFRSLT >>))>)))>)))>>>)>>D>>>>>>>>>>>>>>>>>>>> Last Change: 08/29/88 RR REAL FUNCTION DFRSLTIISTACE.N) C gr-- PURPOSE: Retrieve data From the storage buffer DSET or DRVVAL. C--- INPUTS: ISTAGE. the stage 0? storage E N. the N- displau variable C--- OUTPUTS: DFRSLT. value of the result requested INCLUDE ’ENPORT>ROSENBERG>SHIP72>SIZEBK.CBK' INCLUDE ’ENPORT>ROSENBERC>SHIP72>SOLNBK.CBK' INCLUDE 'ENPORT)ROSENBERC>SHIP72>POSTBK.CBK' INCLUDE ’RDATBK.CBK' INTEGER ISTACE. N. J. JTIH. VC2IS EXTERNAL VCZIS OOODFRSLT 6996.00.00.999909900909999ooaeeaeeeeeeeeeeeeeeeeeeeeeeeee O J'JDXIN) x Check if re e9 JTIH-VC2IS( IF (JTIH .EO. DFRSLTIDSE RETURN ENDIF Of} OFHWO (T O 1?; a time value TH EN Ac U0 TI T E.J.l) osti IHE’ J) (IST C---- Set359(simple value if result alreadu stored IF (J. CT. NOVV) THEN C ------ Derived vbl J- J-NOW DFRSLT- DRVVAL(ISTACE.J) ELSEIF (Jn CT bO) HEN C ------ Soluti LDERSLT-DSETIISTACE. JDX(N). NDSET)-DSET(ISTACE JDX(N).i) C ------ Hho knows DFRSLTI O. C ENDIF RETURN END C>>)>> CEOF E gDFTLHT)>>>>))>>>>>>§>D>>>§>DFTLHT>>>>>>>>>>> Last Change 04/16/89 TLB C SUBROUTINE DFTLHT E--- Sets the time limit parameters For RUN DATA C INPUTS: DSET(0.0.l) g DELTA C OUTPUTS: Tl.T2 E II.I2 INCLUDE 'ENPORT)ROSENBERC>SHIP72)SIZEBK.CBK‘ INCLUDE ’ENPORT>ROSEN8ERC)SHIP72)SOLNBK.CBK' INCLUDE ’ENPORT>ROSENBERC)SHIP72>POSTBK.CBK‘ INCLUDE 'RDATBK.CBK' 81 CFILE DRUNI! --------------- DRUNI! ------------------------------------ 00"} n n lOIO n (DOC) 0 REAL TFINAL INTEGER JTIH. VCZIS. TZERO LOGICAL NEHLIN.ENDLIN CHARACTERO7O STRING EXTERNAL BLNKLN. HRTSTR. PROHPT. GETRL. VC2IS eevDFTLHTeeeeeeeeoeeeeeeeeeoeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeesee CALL BLNKLN CALL HRTSTRI' Set time limits For displau ’) JTIH-VC2ISI'TINE’) TZERO'DSETII.JTIH.I) TI=TZERO TFINAL‘DSETIRNSII).JTIH.l) T2= TFIN NA DELTA-DSETI2.JTIH.Il-TZERO CALL BLNKLN HRITEISTRINC.IOIO) Tl FORHATI’ Enter initial time ('.lPEll.4.‘)' ') CALL PROHPTISTRINC) NEHLIN‘ TRUE CALL GETRLITI. TZERO.TFINAL NEHLIN. ENDLIN) HRITEISTRINC.IO20) T2 FORHATI’ Enter Final time I’.IPEll.4.‘). ’) CALL PROHPTISTRINC) NEHLINI. TRUE CALL CETRLIT2. Tl. TFINAL. NEHLIN. ENDLIN) IFIDELTA.LT.1.0E-25) THEN CALL NRTSTRI' 099 Bad time control resolution.’) CALL HRTSTRI' Too small time steps ’) RETURN , ENDIF Il-ITI*.OOIODELTA-TZ IZ-IT2*.OOIODELTA-TZ RETURN N ERO)/DELTA*I EROl/DELTA‘I DFYLHT)))>>)))>))))>>}>>>>>>§DFYLHT>>>>>§>D§>>§> Last Change O4/lb/89 TLB SUBROUTINE DFYLHTIYHAX.YHIN) FINDS HINIHUH AND HAXIHUH VALUES FOR EACH DISPLAY VARIABLE INCLUDE 'ENPORT)ROSENBERG>SHIP72>SIZEBK,CBK’ INCLUDE 'ENPORT>ROSENBERG>SHIP72>SOLNBK.CBK' INCLUDE 'ENPORT)ROSENBERC)SHIP72>POSTBK.CBK' INCLUDE 'RDATBK.C8K' INTEGER I J REAL YHAXIO: 0). YHINIOZO). TRY. DFRSLT EXTERNAL DFRSLT eeeDFYLHTeooeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeaeeeeeeeeeeeeeeeeeeeeee DOIO I'O.NREGD YHAXIIII-IO.E3O YHINII)‘ IO.E30 éO CONTINUE DOZO I-II.I2 DOBO J'O.NREOD TRY-DFRSLTII.J) IF (TRY.GT.YHAXI J) I Y" AX IJ) l=TRY IF ITRY.LT.YHINI J) ) YH IN (J) 'TRY 30 CONTINUE go CONTINUE RETURN END C>)>))) CEOF. 82 CFILETDRULOC ---------------- DRULOC----—------------r ------------------ EFILE.DRULOC ---------------- DRULOC ------------------------------------ C--- PURPOSE: Local utilities File. For UNFormatted File mani ulation. g Hag need modiFication For a given operating sus em. E--- DESCRIPTION: Used For compact storage oF results Files C--- CONTENTS: CETUFL opens and checks a File For unFormated output FNDUFL Finds and opens unFormated File For reading --- INDEX: CETUFL FNDUFL --- Programmer: Tom Bush --- Last HodiFication: April 8. I989 EOFH DRULOC ----------------------------------------------------------- >>>> CETUFL )))>>>>>)>>>>)>>>>>>>>>)>>>>>>>>>>>>>>> Last Change. 4/8/89 TLB SUBROUTINE CETUFLIUNIT. FNAHE) Purpose: SpeciFicallu For UNFORHATTED influt/output Cet File name and open it on FT unit. --- Input: FNAHE The deFault name For File (can be ‘OUIT’) --- Outputs: UNIT The FORTRAN unit number on which File was opened. Set to :ero iF File was not opened. FNAHE The name oF the File (can be ‘OUIT') INCLUDE ‘ENPORT>ROSENBERC>SHIP72>INPTBK.CBK‘ INTEGER NCHARS. UNIT LOGICAL E7YORN ' EXTERNAL GETHD. INOUIR. PROHPT. BLNKLN. HRTSTR. E7YORN. NCHARS f) OCKNWOFKMWOCIIWO (“finsyNWOFNNWOCWNWO C CHARACTER FNAHEIIO). DEFALTe32. TESTLNGBO. LFNAHEOBZ INTEGER JCDFLT. JCFILE LOGICAL NEHLIN. ENDLIN. EXISTS ceeeCETUFLeaeeeeeeeeeeeeeooeeeeooeeaeeeeeeoeeeeeeeeeeeeeeeoeeaeeeoeeeeee UNIT I PRUNIT DEFALT I FNAHE LFNAHEI FNAHE IO CONTINUE CALL BLNKLN JCDFLT I NCHARSIDEFALT) CALL PROHPTI' Please enter the File name I'l/ DEFALTIlzJCDFLTIII 0).!) NEHLIN I .TRUE. LFNAHE I DEFALT CALL CETHDILFNAHE.NEHLIN.ENDLIN) IF ILFNAHE.E0.'OUIT‘.OR.LFNAHE.EO.‘/‘) THEN CALL BLNKLN CALL HRTSTRI' 000 No File will be created ') UNIT I 0 GO TO 20 ENDIF JCFILE I NCHARS(LFNAHE) C---- PRIHOS stgle (deFault) OPENIUNIT.FILEILFNAHE.STATUSI‘OLD‘.ERRI8010. l FORHI’UNFORHATTED'.ACCESSI‘SEOUENTIAL‘) READIUNIT.ENDI8020.ERR-8010) TESTLN 2 --- The File already exists CALL BLNKLN :CALL HRTSTRI' The File ”’l/LFNAHEIlzJCFILElll’“ alreadq'll ' exists ') IF (E7YORNI' Shall I overwrite it?'.LFNAHE.EO.DEFALT)) THEN ELSEO T0 16 CFILE: c--— 8010 801! C C--- C 8020 c-—_- C 12 C c--- C 8030 83 DRULOC ---------------- DRULOC ----------------- ‘ ------------------- CLOSEIUNIT) GO TO 18 ENDIF The File most probablg does not exist or it is not a sequential. unFormatted one. CONTINUE CLOSEIUNIT.ERRISOII) CONTINUE CALL INOUIR(LFNAHE.’UNFORHATTED’.EXISTS) IF (EXISTS) THEN CALL BLNKLN CALL HRTSTRI' GIG The File ”'l/LFNAHEII:JCFILE)//'" alreadg’l/ i ’ exists and') CALL URTSTRI: has incompatible Form and/or access mode.’) CALL HRTSTRI Please speciFu another File name.‘) GO TO 18 ELSE --- PRIHOS tule (deFault) OPENIUNIT.FIL EILFNAHE.STATUSI'NEU'.ERR=8040. l FORHI’UN FORMATTED’.ACCESSI'SEOUENTIAL') GO TO l6 ENDIF The File exists. but it seems to be empty. CONTINUE CLOSEIUNIT) PRIHOS stu le OPENIUNIT. FILEILFNAHE. STATUSI’OLD’ .ERRI8010. I FORHI'FORHATTED'.ACCESSI’SEOUENTIAL’l REHINDIUNIT. ERR-8010) READIUNIT.'IA)’.ENDII2.ERRI8030) TESTLN GO TO 8010 CONTINUE GO TO 16 The File exists. however. it is inaccessible. CONTINUE CLOSEIUNIT) CALL BLNKLN xCALL URTSTRI CALL HRTSTRI CALL HRTSTRI GO TO I8 The new File cannot be opened. CONTINUE CLOSEIUNIT.ERRI8041) CONTINUE CALL BLNKLN lCALL URTSTRI' eea The File ”'l/LFNAHEIlzJCFILElll'" cannot'l/ ' o ened.‘ CALL HRTSTRI‘ Please specin another File.') 00 T018 909 The File ”’l/LFNAHEII:JCFILE)//‘“ alreadg’l/ exists.’) Horeover. it is inaccessible.') Please speciFu another File.') \\\\ TEST For writing privileges and/or disk space availability CONTINUE REUINDI UNIT HRITE(UNIT.ERRI8050) TESTLN REHINDI UNIT) GO TO 20 Unable to write to the File. CONTINUE CLOSE(UNIT) CALL BLNKLN CALL URTSTRI' GOG Unable to write to the File.’) CALL HRTSTRI' Please speciFg another Filename ‘) CHANCE deFault name iF necessary. CONTINUE 84 crst DRULOC ---------------- DRULoc-------——-------4 ------------------- IF ILFNAHE.EO.DEFALT) THEN DEFALT I ’GUIT' ENDIF GO TO IO go CONTINUE FNAHE I LFNAHE RETURN END E>)>>) EFNDUFL )>)>>>>)>))>)>>>>>>>>>>>>>>>)>>> Last Change: 4/8/89 TLB C SUBROUTINE FNDUFLIUNIT.FNAHE) C Purpose: Get Filename and open it For UNFORHATED I/O g Hust be modiFied For VHS use. E INPUT: FNAHE The deFaIt name For File (can be 'OUIT') C OUTPUT: UNIT The FORTRAN unit number on which the File was opened C Set to zero iF the File was not a ened E FNAHE The name oF the File (can be 'GUI ') C INCLUDE ’ENPORT>ROSENBERG>SHIP72)INPTBK.CBK‘ CHARACTER FNAHEOII). DEFALT032. TESTLNOSO. LFNAHEOJZ INTEGER UNIT. JCDFLT. JCFILE. NCHARS C LOGICAL NEHLIN. ENDLIN C EXTERNAL GETUD. PROHPT. BLNKLN. URTSTR. NCHARS Ceea FINDUFL eeoeeoaeaaeeeeeeeaaeeeeeaeoeeeeeeeeeeeaoea C UNIT I PRUNIT DEFALT I FNAHE LFNAHE I FNAflE IO CONTINUE CALL BLNKLN JCDFLT I NCHARS(DEFALT) . CALL PROHPTI’ Please enter the File name ('/l 5 DEFALTIlzJCDFLTlll NEHLIN I .TRUE. LFNAHE I DEFALT CALL GETHDILFNAHE.NEHLIN.ENDLIN) IF (LFNAHE.E0.'0UIT’.0R.LFNAHE.E0.’/') THEN CALL BLNKLN CALL HRTSTRI' 000 No File will be sought'eoo') UNIT I 0 RETURN C ENDIF C--- Crunch on this File name JCFILE I NCHARSILFNAHE) C--- PRIHOS style IdeFalt) 0PENIUNIT.FILEILFNAHE.STATUSI’OLD'.ERRI8010. C l FORHI’UNFORHATTED’.ACCESSI’SEOUENTIAL’) C READIUNIT.ENDIBOIO.ERR-8010) TESTLN C--- The File is open and readable CALL BLNKLN CALL URTSTRI' File “'l/LFNAHEIllJCFILElll‘” Found ’) FNAHE I LFNAHE C RETURN C--- The File most probably does not exist or it is not a sequential C UNFormated one SOiO CONTINUE CLOSEIUNIT) CALL BLNKLN CALL HRTSTRI' 05* Unable to Find or read 'l/LFNAHE) C CALL HRTSTRI' Please speciFy another File name.') C--- Chan e deFalt name iF necessary. IF I FNAHE.E0.DEFALT) DEFALT I 'OUIT' C GO TO IO END C)>)>> CEOF --------------------------------------------------------- APPENDIX B 85 APPENDIX B An ENPORT File Listing of The System Used HEADING In The Study HEADING FILE 13:51:54 11/01/88 ENPORT-7.2 RESRCH TITLE RESEARCH INTO NODAL DECOHPOSITION H/ DAHPING SYSTEH GRAPH DESCRIPTION NUDE TYPE XLOC YIUC IA MIC 300. 600. I3 "IQ U00. (‘00. IA MIG 300. 900. CA ”CO ICC. 600. OI "CC 300, 300. TFIA HTC 300. 2:00. 02 "CC 800 300. TFZA ”TC 300. 400. TFQB H10 800 300, ID MIC “00. (“)0 (:I3 f1(:(3 I ()(Jf). £i()() 552 "EC U00. 200. SEI "EC 300. 200. TFIB "TC 400. 400. RA "RC 100. 800. R8 NRC IOOO. 000. FIT“ P1IIC; (‘()(I (i(’(‘. CONNECTOR TYPE FROM TO VERTICFS SI DC 51' I OI 2 BC SF# 0? PA BC IA If 0“ [4G IA LI‘. PB BC )0 I“ 08 BC I“ (N I “C U) I I- ll‘ 2 RC TFIA IA 3 DC OI II I" ‘3 [1(3 1 5' l I‘ l I. 5 BC 0? Ti H" 6 BC TFIWI I“ 7 BC ()9 I l-a'l‘. 8 BC TFTA IA DA Dc IA Hfl ' OB BC IU RU 800. 600. NA BC IA RN NB “C In RN GRAPHICAL ENVIRONMENT Node size: 1.0000EFOO Connector size. 6.?500E-01 Scale Factor; 9.0000F-Ol Horizontal window minimum: -8.8894E+OI Horizontal window maximum: 1.1889E+03 Vertical window minimum: 1.0000EF02 Vertical window maximum: 9.0000E+02 Gridding enabled: ON Griddino visible: ON Giid size: l.0000€+02 DeFault node regime enabled: ON DeFault connector regime enabled: OFF DeFault node regime: G DeFault connectr regime: G Postprocessor grid: ON Postprocessor box: ON Color I 0 30 0 Dark Gray (background) Color 2 O )00 0 white (deFault line and label color) Color 3 )2 50 100 Red (attention) Color 4 240 30 100 Green (Mechanical) Color 3 0 BO 100 Blue (Rotational) Color 6 300 50 )00 Cyan (Electrical) ~Color 7 60 50 100 Ha enta (Hadraulic) Color 8 ISO 50 IOO low (T ermal 'HEADING NODE EQUATIONS Number oF outputs: 14 Node. IA Connectors: Equation: Y I GAIN . Y_list X list F.PA PTPA Node: CA Connectors: Equation: Y I GAIN I X. Y_list X_list E.0A 0.0A Node: TFIA Connectors: F.) I HOD.TF)A .2 I HOD.TF)A Equation: Y I CON I X. Y list X_list MOD.TFIA Node: TF2A Connectors: F.7 a HOD.TFPA E.8 I HOD.TFPA Equation: Y = CON I X. Y list X_list HUD.TF2A Node: TF2B Connectors: F.5 I NOD.TP?B E.b I HOD.TFPB Equation: Y = CON I X. Y list Xfilist HOD.TF28 Node: IB Connectors: Equation: Y = GAIN I X. Y_list X-list F.PB P.PB Node: CB Connectors: Equation: Y I AIN I X. Y_list X_list E.GB 0.08 Node: SE2 Connectors: Equation: Y I STEP I X. Y_list X list E.52 TIME Node: SE) Connectors: Equation: Y I STEP I X. Ynlist X list E.Sl TIME Node. TFIB Connectors: .. I HOD.TFJB E.4 I HOD.TFIB Equation: Y I CON I X. Y list X_list HOD.TFIB Node: RA Connectors: Equation: Y I GAIN I X. Y list X list ETDA FFDA Node: RB Connectors; Equation: Y I GAIN I X. Y_list X_list E.DB F.DB Node: RN ' Connectors: Equation: Y I GAIN _ I X. Y list X list ETNA FENB . Equation: Y I GAIN I X. Y-list X list ECNB FENA 86 PA ) l I 1 Parameters 9.1743E-O2 GA P ) I l 1 Parameters 6.0000EFOO i 2 e F.2 O E.) P ) l O 1 Parameters I.OOOOE+OO 7 8 G F.8 D F.7 P ) I 0 1 Parameters 2.2250E+00 5 b e P.b I 5.5 P ) l O 1 Parameters -P.2500E-Oi PB P ) I I 1 Parameters 9.0827E-01 GB P ) i l 1 Parameters 6.0000E+OO S2 P ) l i 2 Parameters: 0.0000EF00 1.00006900 S) P ) i I 2 Parameters 0.0000E+OO i.OOOOEF00 3 4 G F.4 O E. P ) l 0 1 Parameters l.0000E+OO DA P ) l l I Parameters l.0000E+OO DB P ) l l l Parameters I.0000E+00 NA NB P ) I I 1 Parameters o.ooooe+oo ) I I I Parameters 0.0000EFOO 87 umflosum amummm may now nmmuouvcom emomzm one am musmwm mmm. . . . . Em mm o a s s ‘m mm . mm . . . . ,2 . {a "WIIMIIW