Department of Aerospace Engineering AENGM0032 Research Project 2018-2019 INVESTIGATION OF ACTIVE AEROELASTIC TAILORING THROUGH VARYING RIB DIRECTION Alexander C. J. Moss Department of Aerospace Engineering, University of Bristol, Queens Building, University Walk, Bristol, BS8 1TR, UK Abstract Adaptive control and aeroelastic tailoring are both areas of research which have the potential to drastically improve the aerodynamic efficiency and structural performance of aircraft wings. Active aeroelastic tailoring utilises the benefits of both methods to optimise the shape of the wing over the span. One promising technique involves varying the rib orientation to alter the twist response, while still maintaining the aerofoil shape. In order to understand the full potential of this adaptive device, a study has been conducted into the effect of it on the structural properties of a wing. A series of finite element models were built and tested using MSC. Nastran, with various sweep and rib orientation values. This paper describes the issues with analysing the response of swept wings due to the lack of clarity in many structural definitions. The report seeks to clearly define the structural axes and their affiliations with different methods of adaptive control, such as adaptive bend-twist coupling. A method of approximating the elastic and global flexural axes is presented and the implications of this include a potential to accurately idealise any wing to an Euler-Bernoulli 1D beam. The initial investigation involves finding the position of the local flexural axis of each wingbox and then applying distributed loads to assess the twist response. This study shows that there is the potential for large alterations in tip twist due to this adaptive device, further optimisation of the model would be required to prove this. There is currently not enough evidence to prove that varying the rib orientation of a wing will lead to beneficial aerodynamic and structural performance. Keywords: Aeroelastic Tailoring, BendTwist Coupling, Adaptive Structures, Finite Element Analysis, Global Flexural Axis 1 INTRODUCTION Worldwide air travel is predicted to expand by 8.2 billion by 2037 [1]. The market is facing new challenges to improve fuel efficiency due to pressure for ‘green’ air travel, reducing CO2 emissions [2] and noise pollution. Due to locally variable oil prices, profitability can be seriously affected by market volatility. Between 2014 and 2016, North America had large airline market growth due to fuel price declines [3]. To protect airlines’ profits against potential uncertainty in the future oil markets, aircraft manufacturers must find methods of improving fuel efficiency in the design of future aircraft. In the last 50 years, aircraft wingspans have been increasing [4], currently the largest span of any civil aircraft is the Airbus A380 at 80 metres. Increasing the wingspan contributes to a higher aspect ratio, a key factor in reducing the induced drag. Due to the gate sizes at airports, there are regulations governing the maximum wingspans for different classes of aircraft. As many aircraft families have already reached this limit, manufacturers have begun incorporating new methods of extending the span, such as the Boeing 777X, with its folding wing-tips. This enables it to have a wingspan of 72 metres and an aspect ratio of 11 while still being able to fit within the 65 metre airport gates. Further improvements in aerodynamic efficiency can only be achieved by drastic technological changes in wing design. High aspect ratio wings are flexible, if not then there is a large weight penalty associated with the amount of material required to stiffen them. Negative aeroelastic effects such as flutter, 1 divergence, localised stall and gust response issues become more prevalent for flexible wings. It is the field of aeroelasticity which can help to alleviate these issues, by optimising the shape of the wing at each spanwise section. To alter the geometric form of the wing, a technique referred to as adaptive control is required. Ideally this would include a system which could vary the span, sweep, bending, twist and airfoil shape of the entire wing, however this is unrealistic for the current technology level. Many adaptive control methods involve ‘smart’ internal structural design, varying the bendtwist response of the wing through a technique called aeroelastic tailoring. This is defined as “the embodiment of directional stiffness into an aircraft structural design to control aeroelastic deformation, static or dynamic, in such a fashion as to affect the aerodynamic and structural performance of that aircraft in a beneficial way” [5]. There are many distinct methods of tailoring the structural properties of a wing, both by altering the structural elements of the wing-box and changing the material properties of those elements, to achieve a desired response under loading. Examples include static tailoring such as element thickness variation and composite laminate fibre manipulation and include in-flight tailoring such as varying the position or orientation of web spars. The method which this report focuses on is an adaptive internal structure which changes the orientation of the ribs in a wing-box, which has previously been investigated by Harmin [6]. This is an active aeroelastic tailoring method which is similar to the passive tailoring techniques of laminate fibre direction optimization or the inclusion of out-of-plane stiffness elements. As the role of ribs is to prevent buckling to maintain the aerofoil shape, their orientation can be varied greatly before structural design assumptions break down and there is an increased risk of problematic deformations such as buckling. This report first covers the technical background of adaptive structures and the importance of clarity when defining the structural properties used to describe how they work. The investigation focuses on the effect of varying rib orientation on the structural properties for different amounts of wing sweep. The results of the investigation are then used to determine the usefulness of the technology in its ability to vary the bend-twist coupling thereby improve the aerodynamic efficiency of the wing. 1.1 Active vs. Passive Control It is important to discuss the available methods of adaptive control, as they all benefit the aircraft in different ways. Passive tailoring devices such as out-of-plane stiffness elements and tow-steered composites are much simpler to model and can be included in complex models more easily than moving parts. They also lead to optimal deflection response of the wing for alleviation of flutter and divergence. Active tailoring devices such as moving spars have been used for active flutter suppression [7] as well as improving the aerodynamic efficiency of the wing throughout the flight in a variety of conditions and phases. For example, a different optimal wing shape exists for cruise than it does for cruise-climb. New developments in adaptive control technology can only occur if improvements over current methods can be clearly shown. In terms of active control, the ability to vary the twist response over the entire wingspan would enable fully aerodynamically optimised design and therefore reduced fuel consumption. Despite this, most civil aircraft do not require this level of optimisation to provide improved fuel efficiency, as the expense and weight required for complex active systems may mitigate any savings for airline companies. The passive method of a fixed optimal design provides not only improved aerodynamic efficiency but also flutter protection and therefore weight reduction. Active control systems rely entirely on external power to operate the actuators and supply the control forces [8]. By extension, passive control relies entirely upon external forces for actuation, for example the aerodynamic forces a wing experiences during flight. Passive control 2 involves the wing being aeroelastically tailored at the design and manufacture stage to optimise the bend-twist response under loading. All adaptive wing structures fall under the umbrella of active control, as they either vary the shape of the aerofoil or planform directly or vary the wing structural properties leading to deformation under aerodynamic forces. Either way, external energy is required to cause adaption, however the latter is commonly referred to as ‘semi-active’ due to the major contribution of the aerodynamic loads to the deformation. Semiactive adaptive control can be described as active aeroelastic tailoring which, using Weisshaar’s definition of aeroelastic tailoring, is defined by this report as the following. Active aeroelastic tailoring is the ability of an aircraft wing to vary its structural properties to control aeroelastic deformation, to affect the aerodynamic and structural performance in a beneficial way. Weisshaar [5, 9] varied the orientation of the principal bending and torsion axes in order to change the bend-twist coupling, which is why the term “directional stiffness” is used in the definition of aeroelastic tailoring. The structural properties of a wing can instead be defined through simplifying the wingbox to a beam which is then modelled using Euler-Bernoulli theory. Although this method allows for a more intuitive approach to understanding how adaptive control techniques work, structural properties such as the global flexural axis, which determines the bend-twist coupling, can’t be defined. To improve on the methods used in the previous study [10], a comprehensive review of the definitions of the structural properties is required, to make a clear foundation on which to build a better analysis. 1.2 Clarifying the Structural Property Definitions As stated by Stodieck, Cooper and Weaver, there are many conflicting definitions of structural properties [11]. It would be beneficial to clearly define the structural properties which help to describe how various adaptive control methods work. Table 1 summarizes these definitions. Table 1: Structural Property Definitions [11] Property Shear Centre Elastic Axis Flexural Centre Local Flexural Axis Global Flexural Axis Definition Location on a 2D cross-section where a shear load can be applied and no rate of twist is generated at that section. Locus of Shear Centres along the wing. Location on a 2D cross-section at which a shear load can be applied and no twist occurs relative to the fixed root at that section, not necessarily at any other points along the wing Locus of Flexural Centres along the wing. Position of a distributed set of loads applied simultaneously along a wing that will result in zero twist along the entire wing. Shear centre is a key property of a beam, the locus of shear centres is referred to as the elastic axis. If a shear force is applied at the shear centre of a section, there will be no rate of twist generated at that section. This is shown by Equation 1, as no torsion (T ) is generated at that section so there is no rate of twist (θ0 ) produced. The denominator is the torsional stiffness, which is made up of the shear modulus of the material (G) and the polar second moment of area (J ). T θ0 = (1) GJ For a homogeneous wing, the shear centre location is the same along the span and therefore the elastic axis is straight in the spanwise direction. A homogeneous wing is uniform and unswept, 3 with the same structural properties at every section along the span. Altering the position of the shear centre of a wing is known as adaptive torsion, Ajaj [12] achieves this by varying the locations of the front and rear spars, moving the shear centre location, this technique is shown by Figure 1. Figure 1: Adaptive Torsion Structure [12] This method also has the potential to vary the torsional stiffness through the polar second moment of area, as the enclosed wing-box area is changing. Combining Equation 1 and the BredtBatho twist deformation equation, Equation 2 is formed, which shows that (J ) is proportional to the square of the enclosed area of the wing-box (A). 4A2 J = H ds (2) t Raither [13] demonstrated a variable torsional stiffness concept by altering the shear modulus of a material to ‘open’ and ‘close’ 3 cells inside an adaptive aerofoil, shown in Figure 2. The concept uses the variable stiffness of polyvinyl chloride under changing temperature to control the shear modulus. It is shown by the analysis that it is effective at varying the shear centre location and torsional stiffness. The concept was able to increase the tip twist to be 40 times larger than the minimum, therefore has the potential for finding optimal wingbox properties for shape control. There is also indication that the structural properties can be altered along the span. Figure 2: Cross-section of the Adaptive Aerofoil [13] A similar method of adaptive control involves varying the spar orientation, the effect of which is a change in the second moment of area, which contributes to the bending stiffness of the wing. Implementing variable bending stiffness for roll control has been discussed by Chen [14], Amprikidis [15] and more recently Florance [16] using the Variable Stiffness Spar concept, shown in Figure 3. Florance conducted wind-tunnel testing on the concept being used in a F/A-18A model aircraft but found that the structure had to be made very stiff to handle the design loads and the VSS performed worse than in the analytical model. The loads must be carried through 4 the structure throughout any changes to that structure, making the ‘flexible’ wings are only as flexible as the design loads allow them to be. Adaptive bending stiffness therefore isn’t relevant to high aspect ratio wings. Figure 3: Variable Stiffness Spar Concept [16] The concept of adaptive bend-twist coupling has been discussed numerous times, but rarely has it been clearly defined in terms of the local section properties, as it does not occur in homogeneous unswept wings. Raither [13] made this error, assuming that the variation in twist was due to structural coupling when actually the torsion and the torsional stiffness were changing. This error made was due to the calculation of twist being taken from the centroid of the wingbox rather than the shear centre. When the elastic axis is straight and perpendicular to the chord, there is no bend-twist coupling. Upon reflection of the previous study [10], this error was also present where a change in torsion was mistaken for bend-twist coupling. In this study, a wing-box with a single translating and rotating spar was investigated to find the effect on bend-twist coupling, but instead found changes in shear centre position. The method used by Moss, taken from Weisshaar [9], defines the amount of bend-twist coupling using the non-dimensional term ψ, a function of the terms in the stiffness matrix from Euler-Bernoulli beam theory, shown in Equation 3. A limitation of this method is that it treats the wingbox as a one-dimensional homogeneous beam with constant section properties and can’t easily be scaled up to a heterogeneous wing model. A bend-twist coupling (−K) distribution has not been determined in any previous research for this reason. EI −K u00 M = θ0 T −K GJ (3) K ψ=√ EIGJ Weisshaar [9] assigned principal stiffness directions and calculated bend-twist coupling values in order to conduct aeroelastic analysis of flutter and divergence. Rather than modelling a specific method of changing the structural properties of a wingbox, it was assumed that the wingbox had those properties already. Equation 3 is the ideal end point of this report’s structural analysis, to simplify the wing to a beam with a stiffness distribution, which is where Weisshaar begun the investigation from. At that point the static and dynamic response of the wing can be determined from the moment and torsion distribution along the span. To reach this point, it must be made clear why, in terms of structural properties of a wing, bend-twist coupling occurs. Swept back wings are a good example of where bend-twist coupling is usually present, as under design loading the wing will twist leading edge down, this is referred to as “washout,” which is shown in Figure 4. Swept forward wings do the opposite, twisting leading edge up which is referred to as “wash-in.” In conventional civil aircraft design, the tailoring effect of the swept-back wings is considered, as the level of “washout” does factor into the cruise lift-to-drag ratio and therefore affects the fuel efficiency. Sweep leads to a change in the directional stiffness of the wing, as the principal torsion axis, i.e. the elastic axis, changes 5 Figure 4: Washout [17] position. To define how the sweep affects the twist response of the wing, the positions of the flexural axes, local and global, must be found. 1.3 Local and Global Flexural Axis The position at which a shear load is applied on a chord-wise section of the wing and no twist of that section occurs relative to the fixed root is known as the flexural centre, or local flexural axis position. This is an important definition, as for homogeneous unswept wings it is the same as the shear centre. If the aim is to use bend-twist coupling to achieve aeroelastic tailoring then the local flexural axis must differ from the elastic axis. Figure 5: Positions of Elastic and Flexural Axes for a Uniform Swept Wingbox Figure 5 shows an idealised uniform swept wingbox, where the flexural centre is located at the mean elastic axis position up to that section. This is a simplistic relationship which relies on the wingbox being analysed as if a homogeneous wingbox has undergone rotation about its centroid at the root. This does not account for the effect of any structural constraints at the root or any potentially out of plane elements such as ribs on the wingbox properties. On a realistic swept wingbox, assuming that it is approximately uniform, the gradient of the local flexural axis will be roughly half the sweep. 6 For a general case where the shear force is applied at the tip flexural centre, no twist occurs relative to the root because the mean rate of twist between the root and tip is zero. The elastic axis must move spanwise from forward to aft of the flexural centre chordwise, or vice versa, in order to change the torsion and therefore rate of twist from positive to negative over the span. Using the fact that the mean rate of twist must be zero allows for a calculation of the position of the shear centre at every section, as long as all flexural centres are known. Figure 6 shows an example of how the elastic axis position can be calculated from the known local flexural axis, assuming constant torsional stiffness. The triangular area enclosed by the local flexural and elastic axes is the total rate of twist over that section of span and is defined by Θ0 . Along the linear slope of the local flexural axis, the elastic axis position is correct as long as Θ01 = Θ02 . Θ01 and Θ02 represent the total leading edge up and down rates of twist respectively. When the local flexural axis is parallel to the wingbox spars, the shear centre must be at the same location as the flexural centre so that the balanced rate of twist remains at zero. The shear centre and flexural centre coincide at the root also as there is no rate of twist to measure, due to it being constrained. Figure 6: Demonstration of the Method of Calculating Elastic Axis Position This proposed method of calculating the shear centre along the span is easier to implement than the analytical methods described by Rohde [18] and Katori [19] as they require additional derivation for each specific case and section. This is not an issue for the proposed method as this only requires knowledge of the local flexural axis and torsion and torsional stiffness distributions. There also exists a global flexural axis which Stodieck [11] defined as “position of a distributed set of loads applied simultaneously along a wing that will result in zero twist along the entire wing (i.e. the global flexural axis is characteristic of the wing under a specific load case).” This is the axis which defines where there is no bend-twist coupling for a distributed load, the local flexural axis is a special case of the global axis which only applies to point loads. Stodieck calculated the positions of this flexural axis for a swept wing under different loading conditions, shown in Figure 7. Although there is a skew of the results in Section #1 and #2, the trend is clear. This skew occurs due to the effective increase in the rear spar stiffness at the kink, moving the local elastic axis aft. The work of Stodieck has created a starting point in a method to calculate the position of the global flexural axis in a similar way to how the shear centre distribution could be calculated from the local flexural axis. No twist along the span means that no torsion is generated at any section, in other words, the torsion is balanced. Figure 8 shows a method of calculating the global flexural axis of a 7 Figure 7: Local and Global Flexural Axes and Elastic Axis [11] Figure 8: Demonstration of the Method of Calculating Global Flexural Axis Position simplified wingbox with an arbitrarily discretised constant lift distribution applied. The tip global flexural axis position must coincide with the elastic axis as the torsion must be equal to zero and if there is any end loading, the moment arm will cause torsion to be generated. At each load application point along the span, working from the tip, a rate of twist is calculated from each of the applied forces and their distance from the elastic axis at each point. For the torsions to balance, the positive and negative twist rates must be equal over the span. For this simplified case, that means if Θ01 = Θ02 and Θ03 = Θ04 + Θ05 , then the global flexural axis has been determined. Reducing the step size between each load application point would lead to an accurate approximation of the continuous global flexural axis position. When upscaling this concept, a numerical optimiser would be required, as the number of calculations scales triangularly. Assuming that the load distribution and torsional stiffness is constant would simplify this problem, however using an elliptical or triangular load distribution with reducing torsional stiffness spanwise due to taper would be more applicable to civil aircraft wings. 8 Figure 7 also shows that the global flexural axis position is different under constant, triangular and elliptical distributions. Both the elliptical and triangular distributions have reduced loading nearer the tip, meaning that the global flexural axis moves closer to the elastic axis. This is because less torsion is generated from the lift in the tip region, therefore less of a moment arm near the root is required to balance the rate of twist at every section along the span. The loading near the root is also higher for the triangular and elliptical load distributions, meaning that the moment arms in this region, i.e. the distances between the elastic axis and the global flexural axis, are smaller. Under realistic distributed loading at the 25% chord, the constant lift distribution would cause the largest twist, then the elliptical, then the triangular. Using swept wings is a great way of defining how the flexural axes help to better understand wing twist response due to bend-twist coupling. For adaptive devices, such as the translating spar, the shear centre position will be proportional to the displacement of the spar and the torsional stiffness will be dependent on the area enclosed by the wingbox, whose cells will change size with the spar movement. For the adaptive interfaces presented by Raither [13], the torsional stiffness and shear centre can be determined, for each configuration of open and closed cells. If further work into this concept had included modelling of a heterogeneous wing, with the interfaces having the ability to be scaled from open to closed along the span, the distribution of torsional stiffness and shear centre could still be calculated. For the variation in rib orientation, this cannot be done so easily, as the rib elements are not included in analytical models of calculating the cross-section structural properties using the boom and skin idealisation. This is because they serve to maintain the shape of the aerofoil, preventing effects such as buckling. Using them as out-of-plane stiffness elements to vary the structural properties of the wingbox can be thought as adding a secondary set of principal stiffness directions, which alters the overall directional stiffness of the wingbox. In theory, the same method described earlier for swept wings can be used to describe the effect of varying rib orientation. Figure 9: Harmin’s ‘Realistic’ Wingbox Model [6] Harmin conducted a study into the effect of varying rib orientation on the bend-twist response of a realistic wingbox based on a twin-engine single-aisle aircraft wing under distributed loading. The model used is shown in Figure 9, where rib angle was varied from -20◦ to 30◦ . A smaller model with a 1-metre span was also investigated with rib angle variation of ±45◦ . The tip twist of the realistic model varied by less than 0.2◦ over a 30◦ rib orientation change. The reason for such a low twist variation was due to the chosen lift distribution did not apply enough force to generate sufficient twist. Scaling the twist relative to the loading shows that, for a total lift of 900000N which a wing of that size should be experiencing, the tip twist variation should have been 10◦ over the 30◦ rib orientation change. Such a large potential variation shows that this adaptive control device has the potential to optimise the twist distribution along the wing of a civil aircraft and produce beneficial results for the aerodynamic performance. 9 1.4 Aims & Objectives The overall goal of the project is to fully assess the feasibility of varying rib orientation being used to improve the aerodynamic efficiency of a wing through optimal bend-twist coupling leading to a desired deflection response. The scope of this report details an initial study into the effect of varying rib orientation on the twist response of a flexible wing. The effect of sweep on this adaptive control technique is also analyzed. The methods of approximating the elastic and global flexural axes detailed above are examined in more detail, applying them to a wingbox using the local flexural axis results to calculate the structural properties. Comparisons between the results of this study and the work of Stodieck [11] and Harmin [6] are made for verification and validation. 2 METHODOLOGY In this method, the variation in rib orientation’s effect on bend-twist coupling is investigated by finding the position of the local flexural axis. Variation in sweep is also used to study the combined effect of rib and sweep angle on the coupling. Linear static finite element analysis is used to produce deflection results from which twist distributions and local flexural axis positions are calculated. The model’s sweep and rib orientation can be altered by the use of a MATLAB script which generates an input file for MSC. Nastran. This file contains the finite elements’ node connectivity and global positions as well as the material and element properties and finally the constraints and forces to apply to the model. MSC. Patran was used to check that the MATLAB script output file was working correctly as a Nastran input file and that the correct loads and constraints were being applied. The MATLAB scripts used in this method are shown in the Appendix. Table 2: Computational Tools Used Tool NASTRAN PATRAN MATLAB 2.1 Developer MSC Software MSC Software Mathworks Details of the Model The baseline wingbox is similar to Moss’ previous study [10], with an 8-metre span, 1-metre chord, which the front and rear spar positions at 15% and 65% chord respectively. The thicknesses of the elements have been changed for this model, with 5mm for the spars and ribs and 1mm for the skins. Having the ribs the same thickness as the spars will lead to a greater effect of varying rib orientation, simplifying results analysis. The rib pitch is chosen to be 1 metre for this model, as the analysis will assume an approximately uniform wingbox, which will begin to break down if there are too many ribs varying their orientation. This is also the reason for the upper limit of rib orientation, as the ribs begin to act like additional spars, increasing the bending stiffness of the wingbox. A square wingbox was chosen for the model, as no stress analysis was required so it would simplify the calculations of global positions greatly. The thickness-to-chord ratio was chosen to be 12%, which was again the same as Moss’ study. This is a realistic wingbox height and is arbitrary as the bending stiffness is not being studied. The wingbox model is shown in Figure 10 with Λ and ν representing the amount of sweep and rib orientation respectively. The sweep variation was chosen to be from 0-30◦ , as the forward 10 Figure 10: Model of the Uniform Swept Wingbox with Rib Orientation Aligned with the Root sweep results can be intuitively determined by changing the sign of the results from the sweptback wingbox. 30◦ was chosen as the upper limit as this is the approximate sweep of most civil aircraft. The rib orientation can vary from 0-45◦ . The lower limit was derived from Harmin’s results [6], as they describe an anti-symmetry between the effect of the variation of positive and negative rib deflection, shown in Figure 11. Figure 11: Effect of Varying Rib Orientation on the Tip Deflection, Bending And Twist, taken from Harmin’s Study [6] 2.2 Generation of Input Files for NASTRAN The MATLAB script to generate Nastran inputs files was broken down into four sections, plotting the geometry, plotting the nodal positions, assigning node IDs to finite elements and finally populating files with the data. Firstly, the geometry of the wing-box was constructed, using a function called ‘plot geom’, 11 which took the geometric constraints, detailed in Section 2.1, and converted them into a usable geometry from which the global positions of the nodes could easily be calculated. Geometric positions of the corners of each square rib surface were the basis for building the network of nodes. The order of the nodes is arbitrary, however it is ideal to have a system to make element creation simpler to compute. The node ID number ascended from root to tip, going around the circumference from the bottom of the forward spar in an anti-clockwise direction about positiveY. Version 1 had a very small number of elements and used only CQUAD shells, however this did not allow for accurate modelling under loading, as the model must be loaded at nodal positions. Therefore a new node set was chosen, to allow 6 potential loading positions along the chord at each base rib location, the positions of which would not change with the rib orientation. This required the use of CTRIA shell elements to complete the model with full node connectivity. Finally CBEAM elements were used as ‘spar caps’ as this would lead to increased bending stiffness, allowing for a reduction in skin thickness and therefore reduced torsional stiffness, ideal for finding the change in twist under different loading conditions. A function called ‘plot nodes’ calculates the coordinates of each node from the geometry; it also varies the node setup depending on whether the ribs are deflected or not. Figure 12 shows the different finite elements used for no rib deflection vs a rib deflection. Figure 12a shows the setup where the ribs are aligned with the root, so the ribs are modelled with CTRIA elements so that the six nodes along the chord are positioned correctly. For the setup shown in Figure 12b, the ribs are modelled with a single CQUAD element and the CTRIA elements are now used on the skins to maintain the six nodes. This method has very high skew angles for the CTRIA elements, but when the model is scaled up with many more nodes, this problem will be alleviated. The number of nodes in the model in each case is shown in Table 3, for the initial study this number is small, future versions would have far greater numbers of elements to provide highly accurate results of an approximately continuous distribution of structural properties. (a) Finite Element Setup used for the Undeflected Rib Case (b) Finite Element Setup used for the Deflected Rib Case Figure 12: Different Finite Element Setups shown in MSC. Patran Table 3: Breakdown of Finite Elements used in the Model Element Type CQUAD CTRIA CBEAM Number Used in Un-deflected Case 32 108 32 12 Number Used in Deflected Case 46 100 32 This method currently only works for positive rib deflections. The associated nodes for each element are defined in ‘plot elems’. The outputs from which are then used to print the .bdf and .txt files. The properties of the material used were a Young’s modulus of 70GPa and a Poission ratio of 0.3. The Nastran library was especially helpful in determining the correct format for file printing. 2.3 Calculation of Local Flexural Axis Each station has 6 nodes along the chord, at 15%, 25%, 35%, 45%, 55% and 65% chord; and there are 8 stations along the span, at each undeflected rib location. A shear load of 1kN is applied and the twist is calculated for each of the 6 loading positions at that station. A 6th order polynomial solver MATLAB script called ‘findZeroCrossing’ fits a curve to the measured twists. The position at which the shear load would be applied to generate no twist at that section, i.e. the local flexural axis, is then calculated. It is expected that the relationship between the position of the applied load and the twist is linear, however the function helps in the case of any nonlinearities to provide an accurate result, or to help explain unexpected results. 2.4 Deformation Under Distributed Load A discrete load distribution is applied to the nodes placed at 25% chord. The total lift applied to the wingbox is 2kN, as it was found that at a load of 10kN, the bending deflections indicated the strain was large enough to have caused failure. Further study into the reasons for this occurence would be required for future work, especially using Nastran for stress analysis to keep the structure in a pre-failure condition for the larger loads it would experience. A constant, triangular and elliptical distribution are all applied and the response of the wingbox recorded. The distributions applied are shown in Figure 13, which is not constant for the constant lift distribution due to the positions where the forces must be applied at each station along the span. The average load for the first 1.5 metres and last 0.5 metres at the root and tip of the span is applied at the first station and tip stations respectively. This approximation maintains the full 2kN of load whilst increasing the bending moment or torsion loading by a negligible amount. Figure 13: Simplified Lift Distributions Applied to the Model 13 3 RESULTS (a) Unswept Wingbox (b) 15◦ Swept Wingbox (c) 30◦ Swept Wingbox Figure 14: Effect of Varying Rib Orientation on the Local Flexural Axis 14 (a) Unswept Wingbox (b) 15◦ Swept Wingbox (c) 30◦ Swept Wingbox Figure 15: Effect of Varying Rib Orientation on the Spanwise Twist Distribution 15 Figure 16: Effect of Sweep on the Change in Relative Tip Twist due to Varying Rib Orientation Figure 17: Effect of Different Lift Distributions on the Twist for a 15◦ Swept Wingbox 4 DISCUSSION Both Figure 14b and 14c confirm the effect of sweep on the local flexural axis discussed in Section 1.3, however it is not exactly where it was predicted to be, as shown in Figure 18. This means that one of two things is true, the prediction is incorrect, or the shear centre has moved forward due to the sweep. The effect of the increasing the rib angle makes the wing more uniform, as the ribs are more perpendicular to the spars. This may be why the prediction isn’t accurate, as the ribs’ directional stiffness effect is acting while they are aligned with the root. Further study would be required to find out the truth, but it is still a reasonable estimate for the position of the local flexural axis on an approximately uniform swept wing. This result is still proof that 16 Figure 18: Predicted and Measured Local Flexural Axis Position for a 15◦ Swept Wingbox the elastic axis of a heterogeneous wingbox can be calculated, just from applying loads and measuring deflections. Figure 14a shows that the flexural centre moves aft of the centroid within the first two rib bays due to the deflection of the ribs, indiscriminate of the rib angle. The act of changing the rib direction any amount leads to the flexural centre, and by extension the shear centre, moving further from the forward spar. Past 3 metres of span, the local flexural axis is approximately linear for all cases. This shows that close to the root, the results are not indicative of the effect of varied rib orientations, as the structure is less homogeneous due to the fixed root. This problem may be alleviated by adding more ribs in the root half of the span to homogenize the structure. The effect of changing the rib angle is non-linear. At 15◦ rib angle, the local flexural axis has moved further back from the forward spar than the uniform 0◦ axis, but at 30◦ rib angle it moves back towards the forward spar. This trend continues for the 45◦ local flexural axis, which has moved past the 0◦ axis closer to the forward spar. This confirms the results of Harmin’s study [6], which Figure 19 shows for a similar unswept wingbox. The twist distributions due to an elliptical load distribution are shown in Figure 15. The elliptical distribution is the most representative lift distribution for the untapered wingbox used in the model, therefore ideal for demonstrating a realistic twist response. The largest change in tip twist occurs between 15◦ and 45◦ for the unswept wingbox, causing 0.1◦ of twist over length of span. If the lift distribution was scaled up to a realistic design load of 100000N, the amount of twist would be 5◦ . This is a simplistic scaling up of the effectiveness, as the wing twist due to other effects would be wildly larger and therefore the wing would need to be stiffer than it is in the model. This does however prove that this technology could lead to an ability to significantly change the twist distribution over the span. It is clear that the highest rate of twist is in the root-half of the span, especially for the swept cases, as this is where the largest torsional forces are acting. Varying the elastic axis in this region leads to the biggest change in torsion and therefore rate of twist, which impacts the twist distribution over the rest of the span more than any variations closer to the tip. This is therefore where the adaptive device has the most effect and further study should focus on just altering the ribs in this part of the span. The importance of the adaptive device in the root-half of the 17 Figure 19: Effect on The Tip Twist due to Changing Rib Orientation from Harmin’s Study [6] wing in combination with the non-linearity of the flexural centre shown in the first 2 rib bays of the model indicates that this study has not demonstrated the full potential of this technology in its ability to vary the twist distribution. Figure 14b shows that there is a change in the effect of changing rib orientation due to sweep. The 45◦ rib angle no longer causes the local flexural axis to move forwards, however it is still further forward than the 15◦ and 30◦ rib angles, which have very similar axis positions in this case. The effect of a further increase in sweep is shown in Figure 14c. The trend indicates that as sweep increases, the effectiveness of the variation in rib orientation reduces past 15◦ . Figure 16 shows this in more detail, as the absolute variation in tip twist for the 30◦ sweep case is much smaller than the unswept and 15◦ cases. Also the unswept case has more variation from 15◦ -45◦ rib angle variation, whereas the 15◦ sweep case has the most variation from 0◦ -15◦ . This shows that for each sweep, there is an optimal rib angle variation range where the most change in twist occurs, which would need to be identified to make full use of this technology. For the 30◦ sweep case, this is especially important, as most civil aircraft use 25◦ -30◦ sweep. Currently there is not enough evidence to show that this adaptive device could be used to improve its aerodynamic efficiency. Figure 17 confirms the predicted effect from Figure 7 detailed in Section 1.3. This proves that the global flexural axis for a swept wing is the furthest forward under a constant distribution and that the triangular distribution is the furthest aft. The issue with applying this technology to civil aircraft is that they tend to have large taper ratios of 0.3 or less, meaning that the lift distributions they experience are more triangular than elliptical, which would reduce the effect of any adaptive torsion or bend-twist coupling device. 4.1 Calculating an Estimate for Global Flexural Axis Position Using the approximation methods mentioned in Section 1.3, an estimate for the position of the elastic and global flexural axis for the 30◦ swept, 45◦ rib orientated wingbox is calculated. The result is shown in Figure 20. A constant lift and torsional stiffness distribution was assumed. 18 The global flexural axis position does appear to take a similar form to the results presented by Stodieck [11], however further study would be required to check that this approximation method is accurate. Once this method is proved, any wing can be simplified to a beam model with a stiffness distribution, shown in Equation 3, using an adapted version of the method used in Moss’ study [10]. Figure 20: Calculated Elastic and Global Flexural Axis Positions from the Local Flexural Axis 5 CONCLUSION A linear static finite element analysis of a series wingbox at 0◦ , 15◦ and 30◦ sweep with an adaptive control device which varies the rib orientation between 0◦ and 45◦ in 15◦ intervals. The local flexural axis position was calculated in each sweep and rib orientation case from the resulting deflections under point loading. Constant, triangular and elliptical distributed Loads were then applied to simulate the response in realistic loading conditions. A method of approximating the position of the elastic and global flexural axis was proposed and attempted. An estimate was produced and compared against the research of Stodieck [11]. The implications of the success of this method could lead to improvements in analytical dynamic aeroelastic analysis due to accurate determination of the structural properties. The study conducted confirms the work of Harmin [6], where the twist response due to varying rib orientation is non-linear. More detailed study of the effect of varying rib orientation was not possible due to the limitations of the model, such as the large resolution of the measured local flexural axis. This meant that there is currently no explanation for the non-linearity of the local flexural axis in the first two rib bays. Aspirations for further work into this are detailed in Section 6. This study does show that there is the potential for up to 5◦ alterations in tip twist due to this adaptive device, however further optimisation of the model would be required to prove this. It is for these reasons that this study cannot say for certain whether or not varying the orientations of the ribs in civil aircraft wing would lead to improvements in aerodynamic efficiency. 19 6 FUTURE WORK This study has produced sub-standard results due to the limited structural optimisation conducted before the creation of the final model. A future model would require more detailed analysis in the root-half of the span, as it has been shown that this is the region which not only has the most potential to affect the twist distribution, but also has provided potentially inaccurate local flexural axis data. The combination of which means very little has been learned about the effect of varying rib orientation on the bend-twist coupling of wings. To improve the accuracy of the model, the finite element setup process will require changing, as there are too few nodes and therefore too few load application points. Also the way that the elements are connected leads to more potential for buckling and non-linear responses. It would also be important to study the effect on the twist response of both varying the number of ribs in the model, but also varying the individual rib orientations. This could lead to in-situ optimisation of the shear centre position throughout the structure. With the increase in number of load application points, the calculated local flexural axis could be approximated to a continuous distribution and therefore the effects on the shear centre position in the region where the ribs are being deflected can be studied in more detail. This will lead to better analysis of the adaptive control device of varying rib orientation. This would also further test the method of approximating the elastic axis and global flexural axis positions, which if proved accurate, could be useful for future structural analysis of all wing structures. Further study into the effect of varying rib orientation would involve aero-structural analysis to find an estimate of drag and lift-to-drag ratio, thereby measuring a quantifiable difference in the aerodynamic efficiency due to the application of this adaptive device. 20 REFERENCES [1] International Air Transport Association, “IATA Forecast Predicts 8.2 billion Air Travelers in 2037,” Oct. 2018. [2] International Air Transport Association, “IATA ”Green” Taxes Fact Sheet,” May 2018. [3] Boeing, “Current Market Outlook 2016 2035,” 2016. [4] Y. Ding, “Boeing Airplane Overview,” 2016. [5] T. A. Weisshaar, “Aeroelastic Tailoring - Theory, Practice, and Promise,” Journal of Aircraft, vol. 23, no. 1, pp. 6–18, 1986. [6] M. Harmin, A. Ahmed, J. E. Cooper, and F. Bron, “Aeroelastic Tailoring of Metallic Wing Structures,” 04 2011. [7] R. Ajaj, M. Bourchak, and W. Harasani, “Twist morphing using the variable cross section spar: Feasibility study,” Journal of Aerospace Engineering, vol. 28, p. 04014146, 07 2014. [8] Z. Xu, Y. Guo, J. Zhu, and F. Xu, “Chapter 4 - Semiactive Intelligent Control,” in Intelligent Vibration Control in Civil Engineering Structures, pp. 85 – 149, Oxford: Academic Press, 2017. [9] T. A. Weisshaar and R. J. Ryan, “Control of Aeroelastic Instabilities Through Stiffness Cross-coupling,” Journal of Aircraft, vol. 23, pp. 148–155, 02 1986. [10] A. Moss, “Exploiting Aeroelastic Effects for Optimal Aerodynamic Performance,” Individual Exploratory Project, 2018. [11] O. Stodieck, J. Cooper, and P. Weaver, “On the interpretation of bending-torsion coupling for swept, non-homogenous wings,” 56th AIAA/ASCE/AHS/ASC Structures, Structural Dynamics, and Materials Conference, 12 2015. [12] R. Ajaj, M. Friswell, W. Dettmer, A. Isikveren, and G. Allegri, “Conceptual Modeling of an Adaptive Torsion Wing Structure,” 04 2011. [13] W. Raither, M. Heymanns, A. Bergamini, and P. Ermanni, “Morphing Wing Structure with Controllable Twist Based on Adaptive Bending–Twist Coupling,” Smart Materials and Structures, vol. 22, p. 065017, may 2013. [14] P. C. Chen, K. Griffin, R. Jha, D. D. Liu, D. Sarhaddi, and R. Yurkovich, “Variable Stiffness Spar Approach for Aircraft Maneuver Enhancement Using ASTROS,” Journal of Aircraft, vol. 37, pp. 865–871, 09 2000. [15] M. Amprikidis, J. Cooper, C. Rogerson, and G. Vio, “On the Use of Adaptive Internal Structures for Wing Shape Control,” 04 2005. [16] J. Florance, J. Heeg, C. Spain, T. Ivanco, C. Wieseman, and P. Lively, “Variable stiffness spar wind-tunnel model development and testing,” vol. 1, 04 2004. [17] A. Web, “Wing Twist and Dihedral.” http://www.aerospaceweb.org/question/dynamics/q0055.shtml. [18] S. E. Rohde, P. G. Ifju, B. V. Sankar, and D. A. Jenkins, “Experimental testing of bend-twist coupled composite shafts,” Experimental Mechanics, vol. 55, pp. 1613–1625, Nov 2015. [19] H. Katori, “Determination of Shear Center of Arbitrary Cross-Section,” World Journal of Mechanics, vol. 06, pp. 249–256, 01 2016. 21 APPENDICES Appendix A - MATLAB Scripts %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % % % % WINGBOX BDF GENERATOR % % % % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% clear all close all %INPUTS r_v = 45; %rib angle from straight lambda = 30; %sweep (deg) %constants c = 1; %chord (m) tcr = 0.12; %thickness-chord ratio bcr = 0.5; %box-chord ratio fwd = 0.15; %front spar position s = 8; %semi-span (m) p = 1; %rip pitch r_n = ceil(s/p-1); %number of ribs %Set material properties E = 7e+10; %GPa nu = 0.3; %poission ratio t_spar = 0.005; % (m) t_skin = 0.001; % (m) t_rib = 0.005; % (m) %Set Forces & Moments (Just end loaded at this point) P1 = 1000; % (N) n_f1 = 103; % force applied at this node P2 = 1000; % (N) n_f2 = 108; % force applied M1 = 0; % (Nm) n_m = 103; % moment applied at this node %%PLOT WING BOX (Square to begin with, straight lines, simple) %plot geometry bc = c*bcr; bt = c*tcr; [x_g,y_g,z_g] = plot_geom(bc,bt,s,lambda,p,r_v,r_n); figure(1) plot3(x_g,y_g,z_g,’o’) %% geom = [x_g;y_g;z_g;]; [nodes] = plot_nodes(s,r_v,r_n,geom); figure(2) plot3(nodes(1,:),nodes(2,:),nodes(3,:),’o’); n_l = length(nodes); 22 if r_v == 0 n_1 = n_l-9; else n_1 = n_l-2; end %% [fwd_spar,aft_spar,bot_skin,top_skin,ctria_skin_top,ctria_skin_bot,ctria_ribs ,cquad_ribs,cbeam1,cbeam2,cbeam3,cbeam4] = plot_elems(s,p,r_v,r_n,n_l); %% fileID = fopen(’30degsweep_45degrib_wingbox_GP.txt’,’w’); fprintf(fileID, ’$\r\n’); fprintf(fileID, ’$ Material Coordinates System $\r\n’); fprintf(fileID, ’$\r\n’); fprintf(fileID, ’$ CID RID A1 A2 A3 B1 B2 B3\r\n’); fprintf(fileID, ’CORD2R 999 %-5.4f %-5.4f %-5.4f %-5.4f %-5.4f %-5.4f\r\n’,0,0,0,0,0,bt); fprintf(fileID, ’$ C1 C2 C3\r\n’); fprintf(fileID, ’ %-5.4f %-5.4f %-5.4f\r\n’,bc,0,bt); fprintf(fileID, ’$\r\n’); fprintf(fileID, ’$ GPs $\r\n’); fprintf(fileID, ’$\r\n’); fprintf(fileID, ’$ ID CP X1 X2 X3\r\n’); for i = 1:1:length(nodes) fprintf(fileID, ’GRID %-15u %-5.4f %-5.4f %-5.4f\r\n’,i,nodes(1,i),nodes(2,i), nodes(3,i)); end fprintf(fileID, ’$\r\n’); fprintf(fileID, ’$ FWD SPAR SHELL ELEMENTS $\r\n’); fprintf(fileID, ’$\r\n’); fprintf(fileID, ’$ EID PID N1 N2 N3 N4\r\n’); for i = 1:1:length(fwd_spar) fprintf(fileID, ’CQUAD4 %-7u %-7u %-7u %-7u %-7u %-7u\r\n’,i,1,fwd_spar(1,i),fwd_spar(2,i),fwd_spar(3,i),fwd_spar(4,i)); end ID = length(fwd_spar); fprintf(fileID, ’$\r\n’); fprintf(fileID, ’$ AFT SPAR SHELL ELEMENTS $\r\n’); fprintf(fileID, ’$\r\n’); for i = 1:1:length(aft_spar) fprintf(fileID, ’CQUAD4 %-7u %-7u %-7u %-7u %-7u %-7u\r\n’,ID+i,1,aft_spar(1,i),aft_spar(2,i),aft_spar(3,i),aft_spar(4,i)); end ID = ID+length(aft_spar); fprintf(fileID, ’$\r\n’); fprintf(fileID, ’$ BOT SKIN SHELL ELEMENTS $\r\n’); fprintf(fileID, ’$\r\n’); for i = 1:1:length(bot_skin) fprintf(fileID, ’CQUAD4 %-7u %-7u %-7u %-7u %-7u %-7u\r\n’,ID+i,2,bot_skin(1,i),bot_skin(2,i),bot_skin(3,i),bot_skin(4,i)); 23 end ID = ID+length(bot_skin); for i = 1:1:length(ctria_skin_bot) fprintf(fileID, ’CTRIA3 %-7u %-7u %-7u %-7u %-7u\r\n’,ID+i,2,ctria_skin_bot(1,i),ctria_skin_bot(2,i),ctria_skin_bot(3,i)); end ID = ID+length(ctria_skin_bot); fprintf(fileID, ’$\r\n’); fprintf(fileID, ’$ TOP SKIN SHELL ELEMENTS $\r\n’); fprintf(fileID, ’$\r\n’); for i = 1:1:length(top_skin) fprintf(fileID, ’CQUAD4 %-7u %-7u %-7u %-7u %-7u %-7u\r\n’,ID+i,2,top_skin(1,i),top_skin(2,i),top_skin(3,i),top_skin(4,i)); end ID = ID+length(top_skin); for i = 1:1:length(ctria_skin_top) fprintf(fileID, ’CTRIA3 %-7u %-7u %-7u %-7u %-7u\r\n’,ID+i,2,ctria_skin_top(1,i),ctria_skin_top(2,i),ctria_skin_top(3,i)); end ID = ID+length(ctria_skin_top); fprintf(fileID, ’$\r\n’); fprintf(fileID, ’$ RIB SHELL ELEMENTS $\r\n’); fprintf(fileID, ’$\r\n’); for i = 1:1:length(ctria_ribs) fprintf(fileID, ’CTRIA3 %-7u %-7u %-7u %-7u %-7u\r\n’,ID+i,3,ctria_ribs(1,i),ctria_ribs(2,i),ctria_ribs(3,i)); end ID = ID+length(ctria_ribs); if r_v ~= 0 for i = 1:1:length(cquad_ribs) fprintf(fileID, ’CQUAD4 %-7u %-7u %-7u %-7u %-7u %-7u\r\n’,ID+i,3,cquad_ribs(1,i),cquad_ribs(2,i),cquad_ribs(3,i),cquad_ribs(4,i)); end ID = ID+length(cquad_ribs); end fprintf(fileID, ’$\r\n’); fprintf(fileID, ’$ BEAM ELEMENTS $\r\n’); fprintf(fileID, ’$\r\n’); fprintf(fileID, ’$ EID PID N1 N2 X1 X2 X3\r\n’); fprintf(fileID, ’$ BEAM FWD BOT $\r\n’); for i = 1:1:length(cbeam1) fprintf(fileID, ’CBEAM %-4u %-4u %-4u %-4u %#-4.0f %#-4.0f %#-4.0f\r\n’,ID+i,4,cbeam1(1,i),cbeam1(2,i),0,0,1); end ID = ID+length(cbeam1); fprintf(fileID, ’$\r\n’); fprintf(fileID, ’$ BEAM AFT BOT $\r\n’); for i = 1:1:length(cbeam2) fprintf(fileID, ’CBEAM %-4u %-4u %-4u %-4u %#-4.0f %#-4.0f %#-4.0f\r\n’,ID+i,4,cbeam2(1,i),cbeam2(2,i),-1,0,0); 24 end ID = ID+length(cbeam2); fprintf(fileID, ’$\r\n’); fprintf(fileID, ’$ BEAM AFT TOP $\r\n’); for i = 1:1:length(cbeam3) fprintf(fileID, ’CBEAM %-4u %-4u %-4u %-4u %#-4.0f %#-4.0f %#-4.0f\r\n’,ID+i,4,cbeam3(1,i),cbeam3(2,i),0,0,-1); end ID = ID+length(cbeam3); fprintf(fileID, ’$\r\n’); fprintf(fileID, ’$ BEAM FWD TOP $\r\n’); for i = 1:1:length(cbeam4) fprintf(fileID, ’CBEAM %-4u %-4u %-4u %-4u %#-4.0f %#-4.0f %#-4.0f\r\n’,ID+i,4,cbeam4(1,i),cbeam4(2,i),1,0,0); end ID = ID+length(cbeam4); fprintf(fileID, ’$\r\n’); %% fileID = fopen(’30degsweep_45degrib_wingbox_props.txt’,’w’); fprintf(fileID, ’$\r\n’); fprintf(fileID, ’$ PSHELL thicknesses $\r\n’); fprintf(fileID, ’$\r\n’); fprintf(fileID, ’$ PID MID1 T MID2 I2I MID3\r\n’); fprintf(fileID, ’PSHELL %-4u %-4u %7.6f%-7u %-u\r\n’,1,1,t_spar,1,1); fprintf(fileID, ’PSHELL %-4u %-4u %7.6f%-7u %-u\r\n’,2,1,t_skin,1,1); fprintf(fileID, ’PSHELL %-4u %-4u %7.6f%-7u %-u\r\n’,3,1,t_rib,1,1); fprintf(fileID, ’$\r\n’); fprintf(fileID, ’$ PBEAML thicknesses $\r\n’); fprintf(fileID, ’$\r\n’); fprintf(fileID, ’$ PID MID GROUP TYPE\r\n’); fprintf(fileID, ’PBEAML %-4u %-4u L\r\n’,4,1); fprintf(fileID, ’$ DIM1 DIM2 DIM3 DIM4\r\n’); fprintf(fileID, ’ %-5.4f %-5.4f %-5.4f %-5.4f\r\n’,0.005,0.005,0.001,0.001); %% fileID = fopen(’30degsweep_45degrib_wingbox.bdf’,’w’); fprintf(fileID, ’SOL 101\r\n’); fprintf(fileID, ’CEND\r\n’); fprintf(fileID, ’TITLE = FYPmodelver1.1\r\n’); fprintf(fileID, ’ECHO = NONE\r\n’); fprintf(fileID, ’SUBCASE 1\r\n’); fprintf(fileID, ’SPC = 6\r\n’); fprintf(fileID, ’LOAD = 5\r\n’); fprintf(fileID, ’DISPLACEMENT = ALL\r\n’); fprintf(fileID, ’BEGIN BULK\r\n’); fprintf(fileID, ’PARAM POST 1\r\n’); fprintf(fileID, ’PARAM PRTMAXIM YES\r\n’); fprintf(fileID, ’INCLUDE ’’30degsweep_45degrib_wingbox_GP.txt’’\r\n’); fprintf(fileID, ’INCLUDE ’’30degsweep_45degrib_wingbox_props.txt’’\r\n’); fprintf(fileID, ’$\r\n’); fprintf(fileID, ’$ MATERIALS PROPERTIES $\r\n’); 25 fprintf(fileID, ’$\r\n’); fprintf(fileID, ’$ MID E G NU RHO\r\n’); fprintf(fileID, ’MAT1 %-4u %-3.2e %-4.3f\r\n’,1,E,nu); fprintf(fileID, ’$\r\n’); fprintf(fileID, ’$ STRUCTURAL CONSTRAINTS $\r\n’); fprintf(fileID, ’$\r\n’); fprintf(fileID, ’$ SID C G1\r\n’); for i = 1:1:12 fprintf(fileID, ’SPC1 %-4u 123456 %-u\r\n’,i,i); end fprintf(fileID, ’SPC1 %-4u 123456 %-u\r\n’,13,n_1+1); fprintf(fileID, ’$\r\n’); fprintf(fileID, ’$ LOADING $\r\n’); fprintf(fileID, ’$\r\n’); fprintf(fileID, ’$ SID G CID F N1 N2 N3\r\n’); fprintf(fileID, ’FORCE %-4u %-4u %-3.2e%-5.1f %-5.1f %-5.1f\r\n’, 1,n_f1,P1,0,0,1); fprintf(fileID, ’$ $\r\n’); fprintf(fileID, ’$ SID G CID F N1 N2 N3\r\n’); fprintf(fileID, ’FORCE %-4u %-4u %-3.2e%-5.1f %-5.1f %-5.1f\r\n’, 2,n_f2,P2,0,0,1); fprintf(fileID, ’$ $\r\n’); fprintf(fileID, ’$ SID G CID M N1 N2 N3\r\n’); fprintf(fileID, ’MOMENT %-4u %-4u %-3.2e%-5.1f %-5.1f %-5.1f\r\n’, 3,n_m,M1,0,1,0); fprintf(fileID, ’$\r\n’); fprintf(fileID, ’$ SID S S1 L1 S2 L2 S3 L3\r\n’); fprintf(fileID, ’LOAD %-4u %-6.1f %-6.1f %-4u %-6.1f %-4u %-6.1f %-4u\r\n’,5,1,1,1,1,2,1,3); fprintf(fileID, ’$\r\n’); fprintf(fileID, ’$ SID S1 S2 S3 S4 S5 S6 S7\r\n’); fprintf(fileID, ’SPCADD 6 1 2 3 4 5 6 7\r\n’); fprintf(fileID, ’$ S8 S9 S10 S11 S12 S13 $\r\n’); fprintf(fileID, ’ 8 9 10 11 12 13\r\n’); fprintf(fileID, ’$\r\n’); fprintf(fileID, ’ENDDATA\r\n’); function [x_g,y_g,z_g] = plot_geom(bc,bt,s,lambda,p,r_v,r_n) %effect of sweep at initial rib positions p_sw = p/cos(deg2rad(lambda)); for i = 1:1:r_n x_sweep(i) = (i)*p_sw*sin(deg2rad(lambda)); end x_tip = s*tan(deg2rad(lambda)); %root geometry x_g(1) = 0; y_g(1) = 0; 26 z_g(1) = 0; x_g(2) = bc; y_g(2) = 0; z_g(2) = 0; x_g(3) = bc; y_g(3) = 0; z_g(3) = bt; x_g(4) = 0; y_g(4) = 0; z_g(4) = bt; %effect of rib orientation rc = bc*(sin(deg2rad(90-lambda)))/(sin(deg2rad(90+lambda-r_v))); x_rib = bc - rc*cos(deg2rad(r_v)); y_rib = rc*sin(deg2rad(r_v)); %ribs geometry for i = 1:1:r_n x_g(1+4*i) = x_sweep(i)+x_rib; y_g(1+4*i) = i+y_rib; z_g(1+4*i) = 0; x_g(2+4*i) = x_sweep(i)+bc; y_g(2+4*i) = i; z_g(2+4*i) = 0; x_g(3+4*i) = x_sweep(i)+bc; y_g(3+4*i) = i; z_g(3+4*i) = bt; x_g(4+4*i) = x_sweep(i)+x_rib; y_g(4+4*i) = i+y_rib; z_g(4+4*i) = bt; end %tip geometry x_g((4*s/p)+1) = x_tip; y_g((4*s/p)+1) = s; z_g((4*s/p)+1) = 0; x_g((4*s/p)+2) = x_tip+bc; y_g((4*s/p)+2) = s; z_g((4*s/p)+2) = 0; x_g((4*s/p)+3) = x_tip+bc; y_g((4*s/p)+3) = s; z_g((4*s/p)+3) = bt; x_g((4*s/p)+4) = x_tip; y_g((4*s/p)+4) = s; z_g((4*s/p)+4) = bt; end function [nodes] = plot_nodes(s,r_v,r_n,geom) %check for double nodes so the order of nodes is preserved num = 12; %number of nodes per rib %root node locations for i=1:1:num/2 node(1,i) = (i-1)*(geom(1,2)-geom(1,1))*0.2+geom(1,1); 27 node(1,num+1-i) = (i-1)*(geom(1,3)-geom(1,4))*0.2+geom(1,4); node(2:3,i) = geom(2:3,1); node(2:3,num+1-i) = geom(2:3,4); end root_nodes = node(1:3,1:num); skin_nodes = zeros(3,0); rib_nodes = zeros(3,0); for i = 1:1:r_n for j = 1:1:num/2 node(1,j) = geom(1,4*i+2)-(num/2-j)*(geom(1,2)-geom(1,1))*0.2; node(1,num+1-j) = geom(1,4*i+3)-(num/2-j)*(geom(1,3)-geom(1,4))*0.2; node(2:3,j) = geom(2:3,4*i+2); node(2:3,num+1-j) = geom(2:3,4*i+3); end if r_v ~= 0 rib_nodes = [geom(1:3,4*i+1),geom(1:3,4*i+4)]; end skin_nodes = [skin_nodes,node(1:3,1:num),rib_nodes]; end for i=1:1:num/2 node(1,i) = (i-1)*(geom(1,2)-geom(1,1))*0.2+geom(1,4*(r_n+1)+1); node(1,num+1-i) = (i-1)*(geom(1,3)-geom(1,4))*0.2+geom(1,4*(r_n+1)+4); node(2:3,i) = geom(2:3,4*(r_n+1)+1); node(2:3,num+1-i) = geom(2:3,4*(r_n+1)+4); end tip_nodes = node(1:3,1:num); if r_v ==0 for i =1:1:r_n+2 ref_nodes(:,i) = [geom(1,4*i)+(geom(1,4*i-1)-geom(1,4*i))/2;i-1; (geom(3,4*i)-geom(3,4*i-3))/2]; end else ref_nodes = [(geom(1,3)-geom(1,4))/2 geom(1,(r_n+1)*4+3)-(geom(1,(r_n+1)*4+3) -geom(1,(r_n+1)*4+4))/2;0 s;(geom(3,4)-geom(3,1))/2 (geom(3,(r_n+1)*4+4)-geom(3,(r_n+1)*4+1))/2]; end nodes = [root_nodes,skin_nodes,tip_nodes,ref_nodes]; end function [fwd_spar,aft_spar,bot_skin,top_skin,ctria_skin_top,ctria_skin_bot ,ctria_ribs,cquad_ribs,cbeam1,cb eam2,cbeam3,cbeam4] = plot_elems(s,p,r_v,r_n,n_l) num=12; % SET UP VARIABLES DEPENDENT ON ANGLE OF RIB if r_v ==0 dum = num; ref = num*9+1; X1 = 0; X2 = 0; fwd_spar1 = zeros(4,0); 28 cquad_ribs = zeros(4,0); else dum=num+2; ref = 7*dum + 2*num +1; X1 = -2; X2 = 10; ctria_rib = zeros(3,0); end % set up beam element IDS cbeam1 = zeros(2,r_n+1); cbeam2 = cbeam1; cbeam3 = cbeam1; cbeam4 = cbeam1; cbeam1(:,1) = [1;num+1]; cbeam2(:,1) = [num/2;1.5*num]; cbeam3(:,1) = [num/2+1;1.5*num+1]; cbeam4(:,1) = [num;2*num]; for i = 1:1:r_n if r_v == 0 cbeam1(:,i+1) = [i*dum+1;(i+1)*dum+1]; cbeam2(:,i+1) = [i*dum+num/2;(i+1)*dum+num/2]; cbeam3(:,i+1) = [i*dum+num/2+1;(i+1)*dum+num/2+1]; cbeam4(:,i+1) = [i*dum+num;(i+1)*dum+num]; else cbeam1(:,i+1) = [i*dum-1;(i+1)*dum-1]; cbeam2(:,i+1) = [i*dum+num/2-2;(i+1)*dum+num/2-2]; cbeam3(:,i+1) = [i*dum+num/2-1;(i+1)*dum+num/2-1]; cbeam4(:,i+1) = [i*dum+num-2;(i+1)*dum+num-2]; end end % set up root panel elements for i = 1:1:num ctria_root(:,i) = [ref;i;i+1]; ctria_tip(:,i) = [n_l;ref-num-1+i;ref-num+i]; if i==12 ctria_root(:,i) = [ref;i;1]; ctria_tip(:,i) = [n_l;ref-num-1+i;ref-num]; end end % set up root rib bay elements fwd_root = [1;num+1;2*num;num]; bot_root = [num/2;1.5*num;num+1;1]; aft_root = [num/2;1.5*num;1.5*num+1;num/2+1]; top_root = [num/2+1;1.5*num+1;2*num;num]; % set up the rest of the elements spars skins and ribs ctria_ribs = zeros(3,0); ctria_skin_top = zeros(3,0); ctria_skin_bot = zeros(3,0); ctria_top_skin = zeros(3,0); ctria_bot_skin = zeros(3,0); 29 fwd_spar = zeros(4,0); bot_skin = zeros(4,0); aft_spar = zeros(4,0); top_skin = zeros(4,0); for i = 1:1:r_n fwd_spar(:,i) = [i*dum+1+X2;(i+1)*dum+1+X1;(i+1)*dum+12+X1;i*dum+12]; bot_skin(:,i) = [i*dum+6+X1;(i+1)*dum+6+X1;(i+1)*dum+1+X1;i*dum+1+X2]; aft_spar(:,i) = [i*dum+6+X1;(i+1)*dum+6+X1;(i+1)*dum+7+X1;i*dum+7+X1]; top_skin(:,i) = [i*dum+7+X1;(i+1)*dum+7+X1;(i+1)*dum+12+X1;i*dum+12]; if r_v == 0 ref = ref+1; for j=1:1:num ctria_rib(:,j) = [ref;i*dum+j;i*dum+1+j]; if j==12 ctria_rib(:,j) = [ref;i*dum+j;i*dum+1]; end end else fwd_spar1(:,i+r_n) = [i*dum-1;i*dum+11;i*dum+12;i*dum+10]; for j =1:1:num/2-1 ctria_top_skin(:,j) = [i*dum+12;i*dum+11-j;i*dum+10-j]; ctria_bot_skin(:,j) = [i*dum+11;i*dum-2+j;i*dum-1+j]; end cquad_ribs(:,i) = [i*dum+11;i*dum+4;i*dum+5;i*dum+12]; end ctria_ribs = [ctria_ribs,ctria_rib]; ctria_skin_top = [ctria_skin_top,ctria_top_skin]; ctria_skin_bot = [ctria_skin_bot,ctria_bot_skin]; end if r_v == 0 fwd_spar = [fwd_root,fwd_spar]; else fwd_spar = [fwd_root,fwd_spar,fwd_spar1(1:4,r_n+1:2*r_n)]; end bot_skin = [bot_root,bot_skin]; aft_spar = [aft_root,aft_spar]; top_skin = [top_root,top_skin]; ctria_ribs = [ctria_root,ctria_ribs,ctria_tip]; end function[y_zero, y_2] = findZeroCrossing(x, y, x_2) %Create the matrix of the variables (first order so 1,x) M = [ones(length(x),1),x] %Perform the least squares approximation to get p1 (c) and p2 (m) p = (pinv(M’*M)*M’)*y; y_2 = p(2).*x_2+p(1); for i = 1:length(x_2)-1 if x_2(i)<=0 && x_2(i+1)>=0 30 y_zero = ((0-x_2(i))/(x_2(i+1)-x_2(i))) * (y_2(i+1)-y_2(i))+y_2(i); elseif x_2(i)>=0 && x_2(i+1)<=0 y_zero = ((0-x_2(i))/(x_2(i+1)-x_2(i))) * (y_2(i+1)-y_2(i))+y_2(i); end end end Appendix B - Full Results 31