NOTICE 

This report was prepared as an account of work sponsored by the United States Government. Neither the 

United States nor the United States Department of Energy, nor any of their employees, nor any of their 

contractors, subcontractors, or their employees, makes any warranty, expressed or implied, or assumes any 

legal liability or responsibility for the accuracy, completeness or usefulness of any information, apparatus, 

product or process disclosed, or represents that its use would not infringe privately owned rights. 

Printed in the United States of America 

Available from: 

National Technical Information Service 

U.S. Department of Commerce 

5285 Port Royal Road 

Springfield, VA 22161 

Price: Microfiche A01 

Printed Copy A 14 

Codes are used for pricing all publications. The code is determined by the number of pages in the publication. 

Information pertaining to the pricing codes can be found in the current issue of the following publications. 

which are generally available in most libraries: Energy Research Abstracts. (ERA): Government Reports 

Announcements and Index (GRA and I): Scienriflc and Technical Abstract Reports (STAR): and publication. 

NTIS-PR-360 available from ~JTIS at the above address. 
LIFTING SURFACE PERFORMANCE ANALYSIS 

FOR HORIZONTAL AXIS WIND TURBINES 

SlMtARY 

The application of numerical lifting surface theory to the calculation 

of a horizontal axis wind turbine's aerodynamic characteristics and 

performance is developed, and its computer implementation as Program LSWT 

(L ifti ng Surface Wi nd Turbi ne) is descri bed. The method employed has 

evolved from rotary wing and helicopter applications, and features a 

detailed prescribed wake. The wake model is extended from a hovering rotor 

experimental generalization by including the effect of the windmill brake 

state on the radial and axial displacement rates of the trailing vortex 

system. 

Performance calculations are made by coupling the lifting surface circulation solution to a blade element analysis that incorporates two-dimen-

, sional airfoil characteristics as functions of angle of attack and Reynolds 

number. Several analytical stall models are also provided to extend the 

airfoil characteristics beyond the limits of available data. 

Although the primary emphasis of the current work is on the steady performance problem, the method includes facilities to investigate the effects 

of wind shear profile, tower shadow, and off-axis shaft al ignment. These 

influences are included in a quasi-steady sense, and also add additional 

displacement detail to the wake model. 

Correlation of the method to measured wind turbine performance and comparisons to blade element momentum theory calculations provide validation, 

but also highlight the extreme sensitivity of predictions to the quality of 

early post stall airfoil behavior. 

i i 
TABLE OF CONTENTS 

SUMMARY . . . . . . . . . . . . . . . . . . 

LIST OF FIGURES 

NOMENCLATURE 

INTRODUCTION 

EXISTING METHODOLOGY . . • . . . • • • 

LIFTING SURFACE METHOD WITH PRESCRIBED WAKE . . . • . 

NUMERICAL LIFTING SURFACE THEORY . • • . • . . . . 

PANEL METHOD SOLUTION . . . . . . . . . . . . . . . • . . . . . CALCULATION OF AERODYNAMIC INFLUENCE COEFFICIENTS 

COMBINED LIFTING SURFACE - BLADE ELEMENT THEORY 

LIFTING SURFACE BLADE MODEL 

BLADE SEGMENTATION 

REFERENCE BLADE DEVELOPMENT 

GENERALIZED PRESCRIBED WAKE FOR AXIAL FLOW 

ROTOR WORK STATE EFFECT ON WAKE RATES 

ROLLUP OF CONCENTRATED VORTICES 

PERFORMANCE CALCULATION 

SIMULATION OF POST-STALL AIRFOIL CHARACTERISTICS 

VITERNA STALL MODEL •. • • • . •• •••. 

CMA STALL MODEL ............••.. 

EXTENSIONS FOR QUASI-STEADY SOLUTION 

COMPARISON TO PERFORMANCE MEASUREMENTS 

CONCLUSIONS AND RECOMMENDATIONS 

REFERENCES 

APPENDIX A, LSWT INPUT SEQUENCE GUIDE . . . . . . . . . . . . 

APPENDIX B, PROGRAM AND INSTALLATION NOTES 

APPENDIX C, PROGRAM LSWT SOURCE LISTING 

APPENDIX D, SAMPLE INPUT AND OUTPUT FILE LISTINGS 

iii 

Page 

i i 

iv 

vi 

1 

2 

4 

6 

6 

12 

18 

20 

20 

20 

28 

32 

40 

44 

49 

50 

51 

55 

58 

71 

73 

A-1 

B-1 

C-1 

D-1 
LIST OF FIGURES 

Figure 

1. Horizontal Axis Wind Turbine Configuration and Reference 

2. 

Geometry Description .•..••.• 

Schematic of General Surface Panel and Wake Strip Indexing Scheme •..•••...•..•..•• 

3. Coordinate System for Application of the Biot-Savart 

Law to a Linear Vortex Element •.••.•..•• 

4. Coordinate System for Modeling of the Far Wake With 

a Semi-Infinite Vortex Cylinder •.•...•..• 

5. Development of Reference Blade Geometry From 

Segment Descriptions of Major Components .•••• 

6. Spanwise Panel Distributions Corresponding to Blade 

Segment Grid Options ....•.....•.• 

7. 

8. 

Modeling of Complex Planform With Segment Chord 

Reference Station {x/c)ref and Distributed 

Planform Offset .••..•....•••.•• 

Association of Airfoil Characteristic Tables with 

Segment Spanwise Regions Allows Interpolation 

Between Tables ......•..•...... 

9. Gray's Concept of Hovering Rotor Wake Structure 

10. 

11. 

12. 

13. 

14. 

Model Rotor Tip Vortex Trajectory Measured From 

Schlieren Flow Visualization Photographs of Wake 

(Reference 3) ••••••••••••••••• 

Rotor Work State Velocity Relationships in Axial 

Flow . . . . . . . . . . . . . . . . . 

Rotor Work State Settling Rate Relationships in 

Axi a 1 Flow ................. . 

Schematic of Wake Grid Regions, Sheet Definitions, 

and Rollup Options •.....••••.• 

Panel, Panel Boundary Grid, and Wake Trailer Index 

Assignments •.•••...••........• 

15. Flow Chart of Major Steps in Solution Procedure 

16. Velocity, Force Coefficient, and Angle of Attack 

Resolution at a Blade Element. . .••. 

iv 

· · 

· · 

· · 

· · 

· · · 

· · · 

· · · 

· · · 

· 

· 

· 

· 

Page 

7 

11 

13 

16 

21 

22 

25 

26 

29 

31 

36 

39 

42 

43 

45 

47 
17. 

18. 

19. 

20. 

CMA Stall Model Region Definitions and Key Points 

for Matching Data ••.••....••..•.• 

Comparison of Calculated and Measured Rotor Power, 

NASA MOD-O Wind Turbine, Viterna Stall Model 

Comparison of Calculated and Measured Rotor Power, 

ES1-54 Wind Turbine, Viterna Stall Model ...• 

Comparison of Calculated and Measured Rotor Power, 

Carter 25 Wind Turbine, Viterna Stall Model 

52 

61 

62 

63 

21. Comparison of Calculated and Measured Rotor Power, 

22. 

23. 

24. 

25. 

Enertech 1500 Wind Turbine, Viterna Stall Model .•...••. 64 

Comparison of Calculated and Measured Rotor Power, 

NASA MOD-O Wind Turbine, CMA Stall Model .•.• 

Comparison of Calculated and Measured Rotor Power, 

ES1-54 Wind Turbine, CMA Stall Model ...••. 

Comparison of Calculated and Measured Rotor Power, 

Carter 25 Wind Turbine, CMA Stall Model .•..• 

Comparison of Calculated and Measured Rotor Power, 

Enertech 1500 Wind Turbine, CMA Stall Model 

v 

65 

66 

67 

68 
Symbol 

A 

AR 

Al' A2, 

B1, B2 

A12 , A22 , 

B12 , B22 , 

A13 , A23 , 

B13 , B23 

B 

Bpr 

C, C 

CT 

D, D 

D * 

D 

K 

K 

N 

P 

R 

S 

T 

NOMENCLATURE 

Definition 

minimum nondimensional wake radius 

aspect ratio 

coefficients of Viterna stall model equations 

coefficients of CMA stall model equations 

general boundary surface 

base pressure factor (post stall) 

contour direction unit vector, contour path 

rotor thrust coefficient 

vector, scaler aerodynamic influence 

coeffi ci ents 

aerodynamic influence coefficient, modified 

for non-potential lift response 

aerodynamic influence coefficient, modified 

for quasi-steady effects 

distributed circulation 

ratio of disk average to target blade 

distributed circulation 

positive normal vector 

discretized surface panel 

rotor radius; also used to nondimensionalize 

Dimension 

all geometry parameters ft 

lifting surface 

rotor thrust lb 

vi 
TS 

Tl, T2, 

T3, T4 

Va 

va 

Vnet 

Vnet 

Vr 

Vw 

V 

wo 

V co 

W 

a 

c 

tower shadow velocity deficit fraction 

intermediate terms in vortex cylinder 

calculations 

axial impressed velocity 

referred axial impressed velocity 

net axial velocity through rotor 

referred net axial velocity through rotor 

blade element relative velocity 

wind profile speed 

reference wind speed 

freestream velocity vector 

wake surface 

lift curve slope 

effective linear lift curve slope 

local blade chord 

airfoil drag coefficient 

airfoil maximum drag coefficient (post stall) 

airfoil drag coefficient at stall 

airfoil drag coefficient at 45 degrees 

airfoil drag coefficient at 90 degrees 

airfoil lift coefficient 

vii 

ft/sec 

ft/sec 

ft/sec 

ft/sec 

ft/sec 

ft/sec 

ft 
e 

go 

h 

r 

i ,j ,k 

airfoil lift coefficient at recovery angle 

airfoil lift coefficient at stall 

airfoil lift coefficient at 45 degrees 

airfoil lift coefficient at 90 degrees 

airfoil moment coefficient 

leading edge suction force coefficient 

blade element aerodynamic force coefficient 

components 

induced velocity unit direction vector 

components 

wind profile exponent 

leading edge suction force parameter 

hub (shaft) height above ground 

Cartesian unit direction vector components 

wake axial settling rate due to impressed 

velocity transport 

referred wake axial settling rate due to 

impressed velocity transport 

wake axial settling rate due to mean axial 

induced velocity transport 

radial contraction rate 

hover reference radial contraction rate 

wake axial settling rate 

referred wake axial settling rate 

hover reference axial settling rate 

viii 

ft 
ns 

q 

r, r 

v 

v 

x,y,z 

(x/c)ref 

A 

a 

a· 1 

a 

W 

number of azimuthal integration steps 

in vortex cylinder calculations 

vector induced velocity 

radial vector, radial coordinate 

mean axial induced velocity 

referred mean axial induced velocity 

blade element induced velocity components 

mean hover axial induced velocity 

Cartesian coordinates 

chord reference station 

bound circulation 

aerodynamic sweep angle 

rotor rotational speed 

general angle of attack 

effective angle of attack 

geometric angle of attack 

induced angle of attack 

inflow angle of attack 

recovery angle of attack (post stall) 

drag stall angle of attack 

lift stall angle of attack 

wind angle of attack 

zero lift angle of attack 

ix 

ft/sec 

ft 

ft/sec 

ft/sec 

ft/sec 

ft 

rad 

rad/sec 

rad 

rad 

rad 

rad 

rad 

rad 

rad 

rad 

rad 

rad 
p 

horizontal shaft offset with respect to 

reference wind direction 

vertical shaft offset with respect to 

reference wind direction 

wake radial contraction parameter 

hover reference radial contraction parameter 

azimuth coordinate 

wake azimuth coordinate 

azimuth increment over which inboard sheet 

forms into root vortex 

azimuth increment over which outboard sheet 

forms into tip vortex 

azimuthal integration variable in vortex 

rad 

rad 

rad 

rad 

rad 

rad 

cylinder calculations rad 

atmospheric density slug/ft3 

Indices, Superscripts, and Subscripts 

target point 

k source point 

N normal direction to surface 

i lifting surface panel row index 

j 1 ifti ng surface panel column index, wake 

strip index 

le leading edge 

m maximum row index 

n maximum column index, or blade index 

s lifting surface 

te trail i ng edge 

w wake 

1,2,3 local blade segment coordinate systems 

x 
a,b,c 

x,Y,z 

r 

field points 

Cartesian vector components 

radial component 

xi 
INTRODUCTION 

Wind energy conversion systems based on horizontal axis rotor configurations have evolved through the stages of technology demonstration to the 

level of a mature concept which now demands more rigorous methodology for 

analysis and design of an efficient, cost effective machine. In particular, a reliable, working methodology for aerodynamic design and performance 

prediction is a key technology element required to guide further development in this area. 

Recent progress in the area of hel i copter rotor hover performance 

analysis as described in References 1 through 3, has demonstrated a high 

level of predictive capability using numerical lifting surface theory combined with a distorted prescribed wake model. The objective of the 

present work is to extend applicable elements of this similar technology 

base to wind energy turbines and establish an aerodynamics methodology 

from which configuration concepts for performance benefits can be achieved. 

This report describes the lifting surface method and the development of 

a generalized prescribed wake for wind turbine application. The method 

includes a comprehensive yet straightforward procedure to model complex 

blade geometry, a wake model which allows roll-up of tip and root vortices, 

and facil i ti es for i nvesti gati ng quasi -steady effects of wi nd shear profile, tower shadow, and off-axis operation. 

Detai 1 ed bl ade aerodynamics and system performance are cal cul ated by 

combining the lifting surface method with a blade element analysis that 

incorporates two-dimensional airfoil lift, drag, and moment coefficients as 

functions of angle of attack and Reynolds number. High angle of attack 

analytical simulations are used to extend the supplied airfoil characteristi cs into stall. The method al so incorporates a procedure to guarantee 

compatibility between the lifting surface circulation and the nonlinear 

sectional response impressed through the airfoils. Also, the use of lead1 
ing edge suction forces in the calculation of the radial distribution of 

induced drag affords the most accurate prediction of torque, especially for 

low aspect ratio blades and those with advanced planforms or tips. 

Implementation of the analysis as Fortran Program LSWT (Lifting Surface 

Wind Turbine) is also described, and an input guide, programming notes, 

source code listing, and examples of input and output files are provided as 

appendices to this report. 

Examples of correlation of the present method to measured performance 

for one research and three commercial wind turbines demonstrate and validate the analysis. For all cases presented, calculations are also shown 

from a blade element momentum analysis. In constructing the cases for 

comparing the two analytical methods, the same blade geometry description, 

placement of solution stations, airfoil characteristics, and stall models 

were used down to the code level where possible. The lifting surface 

results show generally good agreement with measurements of power output at 

low to moderate wind speeds, and are consistently higher than the momentum 

analysis. At the wind speed for peak power and beyond the difference grows 

significantly, the lifting surface results still being higher. In this 

region the extreme sensitivity of the results to modeling of early post 

stall airfoil behavior is shown; however, with reasonable assumptions for 

the airfoil post stall characteristics the lifting surface method provides 

improved predictions of the peak power levels. 

EXISTING METHODOLOGY 

Because of experienced and knowledgeable users, analytical tools have 

always been available for evaluating limited modifications to established 

configurations. Such methods often contain empirical corrections designed 

to produce sati sfactory performance correl ati on over an avai 1 abl e data 

base. This is certainly the case with the traditional axial flow blade 

element momentum theory techniques which find wide use throughout rotarywing analysis, and which are in popular use for wind system applications. 

Properly used, momentum theory is very valuable for rapid estimation of 

2 
integrated performance with minimal impact on computational resources. 

However, inherent assumptions in the theory limit its usefulness in producing detailed blade aerodynamic distributions for diagnostic or design 

information. 

Originally derived for analysis of cruising propellers with very slight 

induced velocity, these procedures are more frequently applied to rotors in 

hover, and low speed climb or descent. In most applications adjustments to 

the theory are necessary, especi ally to provi de correct level s of induced 

power. These corrections may be categorized as either modifying the radial 

distribution of induced velocity or the overall magnitude of the induced 

velocity. 

Accuracy of Radial Loading 

The category of corrections dealing with the modification of the radial 

induced velocity is the most familiar and includes the array of methods to 

approximate the physical boundary condition of zero loading at the 

streamwise edges, or tips of lifting blades. Most procedures are derived 

with various degrees of simplification from the original work of Prandtl 

and Betz as best descri bed by Gl auert (Reference 4). In concept the 

correction accounts for "tip losses" associated with a finite number of 

blades. That is, momentum theory always assumes an infinite number of 

lightly loaded blades of infinite aspect ratio, and thus non-zero loading 

at blade tips. 

This assumption also equates to azimuthwise uniform induced velocity. 

Actually, there is an impulse of induced velocity from each blade's trailed 

wake causing the velocity at the blades to be higher than the disk average. 

It is also a particular blade's wake that causes that blade's loading to 

smoothly approach zero at the tip. However the tip loss approximation does 

not completely account for this effect since the tip loading is shaped by 

the blades finite planform as well. In this sense the tip loss approximates finite span, but cannot account for finite blade aspect ratio. 

Lifting line theory accounts for finite span, but still assumes infinite 

3 
aspect ratio. Blade p1anform effects can only be modeled with lifting surface theory, and accordingly, the emphasis of the analysis shifts from one 

of only predicting integrated performance to that of additionally calculating detailed distributions of aerodynamic parameters. 

Influence of the Rotor's Vortex Wake 

The second type of correction is needed to account for deviations in 

the true momentum flux from the ideal model. In actual flows the theoretical slipstream acceleration of axial induced velocity is never realized. 

This is because of radial leakage across the real wake boundary, the spiraling tip vortex trajectory, and diffusion mechanisms which cause dissipation of the wake cylinder. Thus, for a given level of thrust the axial 

impulse of induced velocity produced at the rotor disk must be higher than 

the theoretical in order to establish the momentum flux from far upstream 

to far downstream. 

A correction for this effect is included in the empirical rotor work 

state model s used to describe the mean velocity through the rotor as a 

function of the axial freestream velocity. These models have been derived, 

however, by setting the apparent flow through the rotor in either a disk or 

b1 ade e1 ement momentum analysis to gi ve agreement with measurements of 

thrust and power. The result is that a particular model is then strictly 

consistent only with the analysis used in its derivation, with assumed 

airfoil characteristics and profile drag levels, with the tip loss model, 

and with the accuracy of the measurements. References 5 and 6, descri be 

wi nd turbi ne work state model s based on G1 auert I s work. Although the 

importance of this consideration reduces with wind speed, Castles and Gray 

show striking differences and comment that G1auert 's empirical formula is 

hi gh1y suspect at lower wi nd speeds (rotor descent rates) as the vortex 

ring state is approached. 

lIFTING SURFACE METHOD WITH PRESCRIBED WAKE 

Lifting surface theory with a realistic wake model thus reduces the 

4 
uncertainties discussed by el iminating the need for the tip loss correction, and by providing an inflow model with physical details. Further, 

the access that such an analysis provides for independently examining 

details leads to correct identification of modeling deficiencies and subsequent improvement. 

In hel icopter rotor aerodynamic analyses, the prescri bed wake method 

has become the standard for performance prediction and blade design. 

Originally conceived by Gray (Reference 8), the approach was generalized by 

Landgrebe (Reference 9), and establ i shed by the broad experimental data 

base measured by Kocurek and Tangler (References 3). In the prescribed 

wake approach the complex distorted wake geometry is economically computed 

in terms of basic parameters which are themselves coupled to some primary 

vari abl e of the analysi s, such as thrust 1 evel. These coupl i ng rel ati onships are derived from experimental measurements of wake geometry. 

Reference 10 describes the UTRC WECSPER analysis and shows the feasibility of the wake modeling approach for wind turbines. This method is 

extended from hovering rotor lifting line theory combined with a classical 

wake with modifications for nonuniform onset wind conditions. Although 

accommodations for a distorted wake are made in the analysis, no extensive 

evaluation of the required level of wake detail has been made. This is 

due in part to the lack of a systematically obtained experimental data base 

of wind turbine wake geometry. 

The results obtained with the classical wake are encouraging and probably consistent with the relative pitch of the wake in hover compared to the 

wake additionally displaced by axial onset velocity. Also, the wind 

turbine's expanding wake places the tip vortices outside the rotor disk's 

perimeter, thus lessening their influence in comparison to their position 

for a rotor in hover. These observations suggest that wind turbine wake 

behavior is dominated by kinematic displacement and that distortions due to 

induced effects can be derived and superposed with sufficient accuracy from 

established techniques for prescribing hovering rotor wakes. This is then 

the approach taken in the present work. 

5 
NUMERICAL LIFTING SURFACE THEORY 

The basic lifting surface method has evolved with emphasis on extended 

features whi ch accommodate the speci al consi derati ons for appl i cati on to 

rotary wings such as summarized for calculation of helicopter hover performance in Reference 1. As illustrated in Figure 1, the horizontal axis rotor is described in a global Cartesian coordinate system with origin at the 

rotor hub, and aligned with the shaft. The shaft may have horizontal and 

vertical angular offsets from the principal wind direction. Positive rotation is in the right-handed sense, and a wind vector in the positive z-axis 

direction places the rotor in descent (normal turbine operation). Nose-up, 

positive, blade pitch and twist increment are defined when the blade leading edge is displaced in the positive z- direction. This system and convention are consistent with general rotor theory, and are required for 

self-consistent handling of the detailed geometry of the rotor lifting surface and wake model. This convention is opposite to most turbine analyses. 

PANEL METHOD SOLUTION 

The lifting surface theory is applied through a panel method formulation which is nonlinear in that all stream and induced velocity components 

are considered as well as a full three-dimensional thin surface representation of each blade. By using an influence coefficient formulation derived 

with vector analysis, a linear system is maintained without the usual 

neglect of radial flow at a blade or the assumption of small angles. 

In the rotor fixed coordinate system, Laplace's equation governs the 

steady, irrotational flow, and an application of Greens's theorem 

(Reference 2) shows that all surfaces of discontinuity in the flm'l field 

may be replaced by a doublet sheet. For the present application all blades 

and trailing wakes are thus replaced. Further, the disturbance, or 

induced, velocity at point 1 due to the doublet sheet of net circulation 

strength K is 

6 
,(lSl SHAFT 

1 ORIENTATION 

~ 

/"'.S2 

x 

BLADE 1 

(REFERENCE) 

GROUND 

PLANE 

Figure 1. Horizontal Axis Wind Turbine Configuration and 

Reference Geometry Description. 

7 
q, = ~+w a 1 

\7 1 K aN 4;; dB (1) 

where the subscript of the gradient operator denotes differentiation with 

respect to the coordinate variables at 1, and N is the positive normal 

vector on the surface. 

The blade and wake surface (S+W) is then subdivided into small regions, 

or panels, P

k, and the circulation is approximated as uniform over each. 

Then the surface integration may be taken discretely over each panel and 

. the contributions summed, 

1 

-dB 4Tr r (2) 

The solution procedure can now be focused on calculating the vector 

aerodynamic influence coefficients (AIC's) defined by 

(3) 

which give the induced velocity influence at (xl'Yl,zl) per unit strength 

of the doublet panel P

k• Through Stoke's theorem the surface integration 

giving the AIC's is reduced to a contour integration about the perimeter 

Ck of P

k, 

(4) 

8 
where C is the unit vector along the contour. Equation (4) is simply a 

statement of the well known Biot-Savart law for a closed vortex filament of 

unit strength. 

By building the panel geometry solely from straight line elements then 

the contour i ntegrati on of Equati on (4) can be conveni ently broken into 

separate intervals over each circuit element, and the resulting quantities 

summed to gi ve the total contri buti on of the panel. The integral taken 

over a straight line vortex filament has a simple analytic solution given 

entirely by the Cartesian coordinates of the target point 1 and the end 

point of the filament. Calculation of the AlC's will be described in a 

later section. 

The unknowns of the problem are now the circulation strengths of each 

panel, and their solution is obtained by forming a set of simultaneous 

linear algebraic equations based on Equation (2) while satisfying flow tangency on the blade surfaces and the Kutta condition at the trailing edges. 

The formulation is reduced by noting that at a point within panel P

l on a 

blade surface, flow tangency requires 

(5) 

Then the normal wash velocity at the panel 

(6) 

and the scalar influence coefficient 

Dl , k = N"l· 01 , k (7) 

in combination with Equations (2) yield the basic relation of the present 

.theory 

9 
=E (8) 

k 

Since the wake must be force free, the circulation along a wake streamline is constant, and its value must be that of the circulation at the 

blade trailing edge at the point from which the wake streamline emanates. 

Enforcement of the Kutta condition at the trailing edge, which renders the 

blade surface circulation unique, further requires that the circulation be 

conti nuous. The wake panel ideal i zati on thus becomes a seri es of semiinfinite strips trailing aftward from the blade in the streamwise 

direction. 

If an m by n array of panels are arranged on a blade surface as shown 

in Figure 2, in streamwise columns and spanwise rows, then associated with 

each surface column of panels is a wake strip. The indices i and j are 

used to identify the panel of the i~ row and jth column, and the jth wake 

strip. The panels are numbered by rows so that panel P

l is indexed by 

1 = (i-1)n + j, 1 < 1 < (mon) (9) 

Equation (8) can be written for the lth panel by taking separate summations 

for surface and wake contributions to the normalwash, 

(m o n) n =L: D Kk + 

sl ,k L: (10) 

k=1 j=1 

Specific enforcement of the Kutta condition allows the wake strip strengths 

Kw to be expressed as functions of the surface strengths Kk thus reducing 

the unknowns to just the surface distribution. This is accomplished by 

assuming that (Kw/K ). is the same as the ratio known from the two-dimenm J 

sional solution. Equation (10) is then simplified to 

10 
ROW 

COLUMN INDEX 

j=1 2 

INDEX i=1 

2 

-

3 

r---

· 

· 

· 

m 

3 n 

. . . 

GENERAL PANEL INDEX, 

l=(i-l}n+j 

. . . m·n 

WAKE STRIPS 

INDEXED ON j 

Figure 2. Schematic of General Surface Panel and Wake Strip Indexing Scheme. 

11 
(m. n) 

qNl = ~ (Dsw}l,k Kk (11 ) 

k=l 

Applying this equation to a collocation point at each surface panel P

l 

on a target blade and accounting for the velocity induced by all source 

blades and wakes generates a system of (m·n) linear algebraic equations 

which are solved for the (m·n) unknown Kk. Thus, for given surface and 

wake geometry, the circulation produced in response to surface motion can 

be obtained. 

CALCULATION OF AERODYNAMIC INFLUENCE COEFFICIENTS 

The working equations for calculation of the AIC's are presented in 

this section. The primary calculations are for the discrete straight line 

vortex geometry of the idealized blade and wake surfaces. The far wake is 

optionally approximated by a vortex cylinder. In the following it is understood that coordinate variables have been normalized by unit radius R. 

line Vortex Induced Velocity 

The following implementation of the Biot-Savart law in Cartesian coordinates is used to calculate the contributions to the AIC's from each vortex element. This formulation is derived from parametric integration of 

the governing vector equation. A source element is considered to run from 

point 'a' to point 'b' such that the direction from a to b is consistent 

with the right hand rule in view of the element's circulation sense. Point 

'c' is the target point where the velocity is calculated. This geometry is 

sketched in Figure 3. With the parameter definitions 

A = (xa-xc}2 + (Ya-yc}2 + (Za-Zc)2 

B = 2[(xa-xb)(xc-xa) + (Ya-Yb)(Yc-Ya) 

C = (xa-xb)2 + (Ya-Yb)2 + (Za-Zb)2 

12 

+ (z -zb)(z -z )] a c a 
x 

Figure 3. Coordinate System for Application of the BiotSavart Law to a Linear Vortex Element. 

13 
and 

Q = 4AC - B2 (12) 

then the magni tude of the vel oci ty induced at poi nt c per uni t vortex 

strength is for Q 1 0, 

Iql = [1/(2nQ}][(2C+B)/(A+B+C)1/2 - B/A1/2] (13) 

If Q = a then point c is collinear with a and b, and the velocity 

induced is zero. The cartesian vector components of the induced velocity 

are obtained by multiplying the velocity magnitude by the appropriate 

direction vector components which from the defined element geometry are 

Cx = (Yc-Yb)za + (Ya-Yc)zb + (Yb -Ya )zc 

c

y = (zc-zb)xa + (za-zc)xb + (zb-za)xc (14) 

Cz = (xc-xb)Ya + (xa-xc)Yb + (xb-xa)yc 

giving 

q = Iql[ (cx)i + (cy)j + (cz)k ] (15) 

Having now obtained the vector velocity induced by the element at the 

target point, the element's contribution to its surface panel or wake strip 

AIC is simply the scalar product of the velocity and the direction vector 

for the desired influence coefficient sense. This formulation is easily 

applied to the discrete geometry of the surface and wake model by systematically sweeping the coordinate arrays, calculating the influence of each 

straight line element in turn, while summing each element's contribution to 

the applicable AIC's. 

14 
Vortex Cylinder Induced Velocity 

An optional analytical far wake is included in the analysis and modeled 

by extending each filament of the specified length discretized wake with 

a conti nuous, semi -i nfi nite vortex cyl i nder. The i nfl uence of a vortex 

cylinder is calculated following the derivation presented by Miller in Reference 11, except that direct numerical integration is used exclusively 

instead of in combination with elliptic integrals. Direct integration is 

chosen since the number of steps required for accuracy is similar to the 

number of terms needed in the usual series representation of the elliptic 

integrals, and implementation is more straightforward. 

Figure 4, shows the relative geometry of the target point c and the 

semi-infinite vortex cylinder of radius rae The mouth of the cylinder is 

located at the axial coordinate za. Following Miller's derivation, the 

axial and radial induced velocities due to a cylinder of unit strength density are given by 

21T 

4:Rj ra(ra-rc coscp) 

qz = 

r 2 + r 2 -2rarc cosCP 

0 c a 

. (1 - za 

) d+ (r 2 + r 2 + z 2 _ 2rarc coscp)I/2 c a a 

(16) 

21T 

4!Rj (r 2 

ra COScp 

qr = 

+ t' 2 + z 2 coscp)I/2 dcp 

- 2r r 

o c a a a c 

(17) 

The tangential, or swirl, component due to the far wake is assumed to be 

negligible. 

A simple numerical integration procedure for these expressions divides 

the interval into a number of steps which vary with the axial distance from 

15 
FAR WAKE 

VORTEX 

CYLINDER 

f 

1 

DISCRETE 

VORTEX 

NEAR WAKE 

x 

./" 

/ 

{ 

.,.---

ONSET 1 

WIND 

y 

Figure 4. Coordinate System for Modeling of the Far Wake With 

a Semi-Infinite Vortex Cylinder. 

16 
the target poi nt to the mouth of the vortex cyl i nder. If the di stance is 

greater than unit radius then ten steps are used. Otherwise, the number of 

steps is calculated from 

(18) 

The step size is then ~~ = 2n/ns. If the value of ~ is taken as the average over a step, and with the following definitions 

Tl = ra-rc cos~ 

T2 = rc2+ra2-2rarc cos~ 

T3 = (r 2+r 2+(z -z )2-2r r cos~ a c a c a c ~ 

(19) 

the cylindrical components of the induced velocity are then simply summed 

as 

qz = T4 L ra(Tl/T2)[1-(za-zc)/T3] 

i 

qr = T4 L ra cos~/T3 

i 

(20) 

( 21) 

The term T4 contains the axial settling rate kz of the near wake, and thus 

sets the strength density of the vortex cylinder based on the pitch of the 

vortex spiral which feeds it. 

The cartesian components of the radial induced velocity are resolved as 

qx = qr(xc/rc) 

qy = qr(xc/rc) 

17 

(22) 

(23) 
which together with the previously defined z-component yield the required 

AIC when combined as a scalar product at the target point c with its direction vector. 

COMBINED lIFTING SURFACE - BLADE ELEMENT THEORY 

A feature unique to the present method is a technique termed circulation response tailoring. This modification replaces the inherent linear 

secti onal 1 i ft response characteri sti cs of the potenti al flow theory with 

those deri ved from suppl i ed two-dimensional ai rfoil coeffi ci ents. These 

coefficients are also used in a blade element strip integration to obtain 

performance characteristics. Thus, the loading from the circulation solution is fully compatible with the blade element performance analysis. 

Inherent in any potential flow analysis is that the lift, or equivalently circulation, response to angle of attack is through the lift slope 

2n. Cons i der a secti on of the 1 i fti ng surface to be respondi ng to an 

effective angle of attack defined relative to the local freestream. The 

effecti ve angl e of attack is the net resul t of the combi ned interference 

from all other secti ons of the 1 i fti ng surface and wake, and defi nes the 

normalwash contribution for satisfying flow tangency which must be supplied 

by the self-induced velocity of a section. The section circulation which 

develops is that which will satisfy this partial velocity boundary condition. The circulation can be tailored then by modifying the self-induced 

velocity to preserve the boundary condition while allowing prescribed rates 

of circulation to develop. 

The full derivation of this procedure is in Reference 2. Aerodynamic 

influence coefficients are calculated which give the self-induced velocity. 

These are actually just two-dimensional AIC's for the simple flat plate 

case. With this AIC denoted as Dls' the self-induced velocity at a panel 

can be i sol ated, modifi ed, and then recombi ned to form the fi nal coefficient which will produce a sectional response with a lift slope of aj . The 

modified response coefficient is 

18 
(24) 

when a source panel is in the same column as the target, 

j(k) = j(l) (25) 

and otherwise remains unchanged. In application the sectional lift slopes 

are nonconstant functions of angl e of attack, and thus an i terati on is 

requi red to produce consi stency between the cal cul ated ci rcul ati on, whi ch 

determines effective angle of attack, and the corresponding effective 

linear lift slope. 

19 
\ 

LIFTING SURFACE BLADE MODEL 

The model i ng and specifi cati on of bl ade geometri c characteri sti cs for 

development of the lifting surface panel grid is designed to provide 

maximum flexibility for a wide variety of configurations while maintaining 

simplicity of input data requirements. The goal is to have any 

restrictions be due to technical assumptions in the physical model rather 

than to any inability to represent the blade geometrically. 

BLADE SEGMENTATION 

To accomplish this, the concept of a segmented blade is adopted. By 

describing the blade as a series of spanwise segments, abrupt changes or 

even discontinuities in geometry or airfoil definition can be faithfully 

reproduced in the lifting surface idealization. Figure 5 shows a blade 

modeled with cuff, main blade body, and tip segments. As many as four completely independent segments can be utilized. This limit is selected only 

to set program array dimensions, and can of course be easily changed. Each 

segment is al so described independently in the input data set. Thus, the 

input for the simplest case of a single segment blade is not complicated by 

this capability. For more than one segment, the geometric description is 

repeated for each in a completely parallel format. 

Surface Panel Arrangement 

The number and spanwise arrangement of panels on the blade surface is 

also specified individually for each blade segment, and is controlled 

through four grid options as illustrated in Figure 6. Within each segment 

the panels may be uniform in width, or in proportion to a cosine grid 

spaci ng. The cos i ne gri d can be centered in order to provi de denser 

paneling at both inboard and outboard blade segment edges, or biased only 

toward the inboard, or only toward the outboard edge. In practice the 

selection of a paneling scheme should allow denser definition in regions 

20 
...- x 2 

SEGMENT 3, TI P 

z 

SEGMENT 1, CUFF 

.. 

y 2 

-

SEGMENT 2, MAIN BLADE BODY 

COMBINED SEGMENTS, 

FINAL DEVELOPED BLADE 

Figure 5. Development of Reference Blade Geometry From 

Segment Descriptions of Major Components. 

21 
ROOT I I I I I I I I I 

GRID 1, EQUAL SPACING 

GRID 3, HALF COSINE, 

INBOARD DENSITY 

TIP 

GRID 2, FULL COSINE 

DISTRIBUTION 

GRID 4, HALF COSINE, 

OUTBOARD DENSITY 

Figure 6. Spanwise Panel Distributions Corresponding to Blade 

Segment Grid Options. 

22 
which are anticipated to have larger gradients in surface loading. Grid 

generation is automated and requires no further user input. 

In the chordwi se di recti on the number of panel sis constant for the 

entire blade. The chordwise arrangement is fixed and is based on a cosine 

grid biased toward the leading edge. This selection evolved from the work 

in References 2 and 3, as has the procedure for 1 ocati ng each panel's 

control, or normalwash collocation point. The numerical circulation 

solution is uniquely related to the location of these points and their 

optimized location greatly speeds solu~ion convergence with respect to the 

number of panels employed. The chordwise locations are calculated from the 

known two-dimensional flat plate circulation distribution. This guarantees 

the correct self-induced velocity influence of each streamwise section of 

the lifting surface. Convergence of the solution then depends only upon a 

panel density which adequately accounts for the interference velocities 

from the remaining surface stations and the wake. The spanwise location of 

the collocation points is at the midspan of each panel. In general a 2 by 

15 chordwise by spanwise grid of panels on the blade is sufficient. 

Segment Description 

The segment description begins with the number of spanwise panels, the 

type of gri d desi red, and the radi al extent of the segment. Detai 1 ed 

segment geometry is supplied in a particular segments own axis system, 

although the same axis system may be used for all segments if convenient. 

Translations and rotations for each segment allow the segment to be placed 

in any desired location and orientation to form the developed blade. Thus 

the segment can be "built" in a convenient axis system and then placed in 

its proper location with respect to the rotor axis system. 

Segment details are interpolated from piecewise linear radial 

distributions of chord, pitch increment due to twist, and planform offset 

(sweep). These di stri buti ons are suppl i ed independently for each segment 

and are requi red to cover the radi al extent of each. Al so, the chord 

station (x/c)ref is specified which is used to initially align the chord 

23 
di stributi on along the segment span (y-axi s). Fi gure 7 illustrates the 

effect of varying (x/c)ref for a tapered planform segment, The figure also 

shows how (x/c)ref is used in combination with an offset distribution to 

model a complex planform. 

Airfoil Definition 

The ai rfoi 1 characteri sti cs of a segment are defi ned by associ ati ng 

each span station of interest with tables of lift, drag and pitching 

moment coefficients which are bivarient with angle of attack and Reynold's 

number. A segment must have at least one airfoil defined. An airfoil may 

be defined over a range of the segment or at a point on the segment. As 

sketched in Figure 8, this allows regions of constant airfoil 

characteri sti cs, transi ti on regi ons bounded by defi ned ai rfoi 1 s, and butt 

joined airfoils. Within a transition region, the characteristics at an 

intermediate station are averaged from the bounding airfoils. In 

calculating the average, weighting is used in proportion to the distance to 

each bounding airfoil. Thus, at the exact center of a region a simple 

average resul ts, and at the edge of a regi on the boundi ng ai rfoi 1 is used 

exclusively. 

REFERENCE BLADE DEVELOPMENT 

The actual panel grid coordinates of the lifting surface are developed 

for a reference blade without displacements for collective pitch or 

flapping. The blade surface is then the warped surface of zero lift 

chordlines positioned by twist increments due to physical twist and the 

aerodynamic twist due to camber. This twist is applied about the segment 

y-axi s. The zero 1 ift 1 i ne angl e of attack is interpol ated from the 

supplied airfoil tables. Rotations of the reference coordinates to pitch, 

azimuth, and flapping angles are subsequently performed as needed to create 

target and source blades for calculation of the AIC's. 

The reference blade is built segment by segment. First, the untwisted 

planform is developed in the segment axis system from the chord and offset 

24 
STRAIGHT LEADING EDGE, 

(x/c)ref = 0.0 

~.----------------~~ 

y 

x 

---------------~ 

y 

STRAIGHT QUARTER CHORD, 

x (x/c)ref = 0.25 

x 

~---; 

STRAIGHT TRAILING EDGE, 

x (x/c)ref = 1.0 

PIECEWISE LINEAR 

PLANFORM OFFSET 

y 

PLANFORM OFFSET DISTRIBUTION 

USED TO SHEAR BLADE 

y 

Figure 7. Modeling of Complex Planform With Segment Chord 

Reference Station (x/c) f and Distributed Planform 

Offset. re 

25 
x 

AIRFOIL CHARACTERISTIC 

TABLE IDENTIFIER 

00 

.. 

y 

CONSTANT 

AIRFOIL REGION 

CONSTANT 

AIRFOIL REGION 

TRANSITION AVERAGED 

AIRFOIL REGION 

POINT DEFINED 

AIRFOIL 

Figure 8. Association of Airfoil Characteristic Tables with 

Segment Spanwise Regions Allows Interpolation 

Between Tables. 

26 
di stri buti ons, and the reference chord stati on (x/c) ref" Then the panel 

and collocation grid span stations are rotated about the segment y-axis 

through the combined physical and aerodynamic twist angle. Finally, y-, 

X-, and z- rotations about the segment axes, and X-, y-, z- translations 

are performed in the listed sequence to position the segment in the rotor 

axis system. For instance, if a common segment axis system is used then 

blade precone results from an x- rotation. If different systems are used 

for each segment then combinations of x- rotations and z- translations will 

provide the precone. As can be seen, several approaches through the blade 

development scheme can yield the same result. In all cases the user is 

cauti oned to carefully check the output coordi nate reports to veri fy the 

desired result. 

27 
GENERALIZED PRESCRIBED WAKE FOR AXIAL FLOW 

The wake model for the wind turbine application is extended and simplified from those used for helicopter rotor hover analysis. The basic structural concept for the wake is that described by Gray in Reference 8, and 

reproduced here as Figure 9. Each blade's trailing wake is assumed to 

split into inboard and outboard sheets at the radial station corresponding 

to the blade's maximum bound circulation. The inboard sheet continues to 

settle in that form, and the outboard sheet quickly rolls to complete formation of a concentrated tip vortex. Although there is little experimental 

evidence of a concentrated root vortex, modeling capability is included in 

the wind turbine wake so that its analytical influence can be determined. 

This leads to the definition of an additional mid-sheet region, such that 

the inboard sheet can then roll-up to form a root vortex. 

In hover these wake components are positioned through prescribed functions which give axial settling rates and radial contraction rates in terms 

of basic inflow parameters. Experimental measurements of the wake rates 

shows them to be primarily functions of the rotor thrust coefficient CT 

T 

(26) 

which is related to the mean hover induced velocity v

h at the rotor disk as 

given by the actuator disk momentum theory, 

(27) 

In describing the hovering wake the primary emphasis is on the tip vortex 

trajectory because the vortex remains in close proximity to the disk, and 

is the major source of induced velocity from the wake. Because of the 

proximity, the initial trajectory is also influenced by the local flow 

about the blade, and thus configuration parameters such as twist and taper 

28 
TIP VORTEX 

Figure 9. Gray's Concept of Hovering Rotor Wake Structure. 

29 
which influence the local aerodynamics. Figure 10, from Reference 3, shows 

measured axial and radial tip vortex trajectories of a hovering model 

rotor. The tip vortex initially settles at a near constant rate until 

passing beneath the following blade, at which time the additional induced 

velocity from the second blade's bound vorticity and wake increase the settling rate. The effects of subsequent blade passages appear minimal; thus, 

the secondary rate region is not significantly influenced by rotor details, 

and is dominated by the mean inflow of the rotor. The radial contraction 

behaves exponentially with increasing wake azimuth, reaching a minimum wake 

radius, after which the tip vortex trajectory usually becomes unstable as 

the vorticity diffuses. 

This observed behavior is represented by parametric equations in 1V w

' 

the wake azimuth increment aft of the generating blade, of the form 

and -A1V 

r/R = A+(l-A)e w 

(28) 

(29) 

where k

z is the axi al settl i ng rate, A is the contracti on rate parameter, 

and A is the developed wake radius. 

For the wind turbine case the trajectory rates will be augmented by the 

axial transport due to onset wind, which allows for some simplifications. 

First, note that the wake transport is attributable to induced and wind 

contributions. In the limit of very high wind speed there will be no 

induced effects because of the high pitch (settling rate) of the wake 

spiral. In this extreme all wake components, both sheet and concentrated 

vortices, will also experience the same transport, that due only to wind. 

It is further assumed then, that operating wind speeds are sufficiently 

high to require only mean induced effects to be included in describing wake 

trajectories, and that all wake component rates have the same induced contributions. The fact that the turbine wake will normally expand, rather 

than contract also supports this assumption since expansion results in increased displacement of the tip vortex trajectory away from the blade, even 

30 
P:i 

........ 0.0 

4J 

N 

-. 

~ 

8 

r:x: 

Z 

H 

§ 

-0.2 

0 

0 w 

...... U 

H 

r:x: 

H 

~ -0.4 

X 

~ 

8 

P:i 

0 

~ 

PI 

H -0.6 

8 

o 

n = 2 b e = 12° 75 

AR = 6.2 

CT = 0.0083 

e = 0° 1 nR = 500 FT/SEC 

AXIAL 

Zt/R = k

1 1)!W 

RADIAL 

r/R = A+(l-A)eAl1)!w 

100 200 300 

WAKE AZIMUTH, 1)! (DEG.) w 

400 500 

Figure 10. Model Rotor Tip Vortex Trajectory Measured From 

Schlieren Flow Visualization Photographs of Wake 

(Reference 3). 

0.7 ~ 

1-1 

-. 

riI 

8 

~ H 

0.8 ~ 

o 

o 

u 

:;i! 

H 

Q 

0.9 ~ 

X 

riI 

8 

p:: 

~ 

1.0 PI H 

8 
at lower wind speeds. Since only the wake position, and not the wake 

structure, is affected by these simplifications, then the model can be 

readily improved as better understanding or measurements are available. 

The task is then to develop expressions for the turbine wake's axial 

and radial translation rates. Reference values in hover are first defined 

from the generalized expressions developed from measurements in Reference 

3. The hover reference axial rate is taken as the secondary settling rate, 

and is given as 

(30) 

The contraction rate parameter is generalized as 

(31) 

But, defining contraction in terms of a displacement rate 

k = Ah/(kz ) 

r h h (32) 

then the radial trajectory is more conveniently expressed as a function of 

the axial displacement, 

-[kr (z/R)] 

r/R = A+(l-A)e h (33) 

ROTOR WORK STATE EFFECT ON WAKE RATES 

Equations (28) and (33) are the basic working expressions for generating the coordinates of the individual filaments of the wake, once the axial 

and radial displacement rates are modified to include the effects of wind 

speed. This wake rate modification is accomplished by forming an analogy 

between the rates and the average flow through the rotor as a function of 

the rotor work state. 

32 
The three basic rotor work (or flow) states are defined by the sense of 

the axial impressed velocity Va (usually described as climb or descent rate 

in rotor termi nol ogy) through the rotor and by the presence or 1 ack of an 

organized wake slipstream. A convenient format for describing the states 

is the plot of net flow through the rotor as a function of the axial 

impressed velocity. This format is generalized if all velocities are normalized by, or referred to, the absolute value in hover of the mean induced 

velocity from Equation (27). The referred axial, induced, and net velocities are then 

and, 

Va = V/vh 

v = v/vh 

(34) 

(35) 

(36) 

The normal state extends from hover through cl imb, Va < O. The 

impressed velocity and induced velocity are both downward through the rotor 

and V net ..: v. From hover into descent the rotor enters the vortex ri ng 

state in ~/hich the induced velocity is opposed by the descent speed. At 

the center of this state the apparent net flow through the rotor vanishes, 

and the persistence of streamline flow through the rotor diminishes until a 

definite slipstream in the vicinity of the rotor fails to exist. 

Characteristically, a highly unstable air-body of recirculating flow develops about the rotor, from which the flow state is named. The limits of the 

vortex ri ng state are 0 ..: Va ..: 2. At hi gher descent speeds the wi ndmi 11 

brake state is entered and streamline flow reorganizes. This, of course, 

is the work state of primary interest for wind turbine analysis. In the 

normal and windmill brake states, because of the existence of a continuous 

streamtube, the disk momentum theory is applicable, and gives the mean 

induced velocity for the two states respectively as 

v = -V /2 - [ (V /2)2 + 1 ]1/2 a a (37) 

and 

v = -V /2 + [ (V /2)2 _ 1 ]1/2 

a a (38) 

33 
In the vortex ring state, momentum theory fails to give observed 

results for the induced velocity because of the breakdown of the streamline 

structure of the flow. However, it does give approximate trends at the 

initial entry from hover at very low descent speeds. The complete description of the vortex ring region must therefore be accomplished with empirical relationships implied by the apparent mean induced velocity required to 

match experimental measurements of rotor thrust or torque to corresponding 

values calculated from momentum theory. 

In wind turbine analyses, the most widely used empirical relationship 

between induced and axial stream velocity in the vortex ring state is that 

due to Glauert from his 1926 work (Reference 12). More recent (1951) measurements on rotors in descent made by Cas tl es and Gray in Reference 7, 

show considerable discrepancy in comparison to Glauert's results. At a referred descent velocity of about 1.5, the turbulent wake begins its transition toward the organized streamlines of the windmill brake state. In 

this region the Glauert empirical curve yields about one-half the induced 

velocity as measured by Castles and Gray. Their data also agrees with helicopter measurements while in ideal autorotation, and the authors suggest 

that Glauert's data is in error because of unaccounted for changes in blade 

angle of his solid brass model rotor when under load. As the Glauert empirical model is in popular use in momentum analyses for wind turbines, 

this discrepancy could yield misleading results at low wind speeds. 

For the present application, an empirical model based on Castles and 

Gray is preferred. Additionally, the work of Drees et al in Reference 13, 

supports that of Castles and Gray. This Reference also presents smoke flow 

visualization studies of the entire axial flow regime and provides a 

complete discussion of the flowfield behavior in the vortex ring state. 

With a degree of idealization the apparent induced velocity in the 

vortex ring state can be simply represented by two 1 i near functions as 

'1= -v 

a - 1, . o < v < 1.5 - a- (39) 

'1= 3V - 7, Va ~ 1.5 (40) a 

34 
These relationships are plotted in the work state velocity diagram 

presented as Figure 11. A very interesting result seen in this format is 

that based on the Castles and Gray measurements, the net flow through the 

rotor from hover to Va = 1.5 is nominally constant and equal in magnitude 

to the induced velocity in hover. 

With the preceding discussion in mind the behavior of the wake parameters in axial flow is now developed. It is first assumed that the net settling rate in the normal and windmill brake states is composed of an 

induced component and one due to the impressed axial velocity transport, 

k = k + k. Z a 1 (41) 

where 

(42) 

and where ki is proportional to the induced velocity. Proceeding as before 

with the velocities, the settling rate components are referred to the 

reference value from hover 

(43) 

yielding 

(44) 

(45) 

The functionality of ki is determined now by recognlzlng that the pitch 

of the wake vortex helix is given by the settling rate and that the induced 

velocity varies inversely with the pitch. Therefore 

35 
3 

2 

...., 

(I) 

I>c 

"0 

C 

~ 1 .. I> 

.. I>~ AXIAL, 

V') 

UJ 

...... 

I-

...... 

u 

0 

....J 

UJ 

> 

0 

UJ 

0:: 

0:: 

UJ 

lL. 

UJ 

0:: 

a 

-1 

INDUCED, v 

-2 

CLIMB HOVER DESCENT 

-3 

-2 -1 a 1 2 

REFERRED AXIAL VELOCITY, Va 

Figure 11. Rotor Work State Velocity Relationships in Axial 

Flow. 

36 

3 
(46) 

For the normal work state the constant is determined by matching the known 

conditions at hover, ka = 0 and kz = -1, giving the constant a value of 1. 

Then Equation (46) is solved to give the final expression for the settling 

rate for the normal work state, 

(47) 

In the vortex ring state as previously noted, the organized streamline 

flow transitions to a complex large scale circulation about the rotor, and 

therefore the wake spiral most probably also becomes disorganized. 

However, in the prescribed wake model it is assumed that the integrity of 

the wake spiral remains, and thus its position should nominally represent 

the overall circulation of the flow. This is accomplished by recognizing 

at hover that the settling rate is purely due to induced velocity, but that 

the induced velocity is also the net flow through the rotor at this key 

point. It is further assumed that in the vortex ring state the settling 

rate continues to be proportional to the net flow. From Equations (39) and 

(40) the settling 

k

z = Va 

k

z = -1, 

k

z = 4Va 

rate 

+v 

- 7, 

in the vortex ring state is simply given by 

o < V < 1.5 - a1.5 < V < 2 - a-

(48) 

(49) 

(50) 

In addition to matching the end conditions at the axial velocity limits 

of the vortex ring state, note that the settling rate will also reduce to 

zero at Va = 1.75, (the wake will remain inplane v/ith the rotor disk) and 

change sign (the wake will move from beneath the rotor, the upwind side, to 

the downwind side). This point corresponds to the ideal autorotation vertical descent speed at which the rotor flowfield is analogous to that of a 

solid disk; that is, there is no net axial flow. Thus the present modeling 

37 
approach at least intuitively models the accumulation of the wake into a 

vortex ring and the subsequent transition toward the windmill brake state. 

Once into the windmill brake state the settling rate is modeled as in 

the normal state. Determining the constant in Equation (46) now at Va = 2 

or ka = 2, and k

z = 1, then the constant is (1-]2) and the settl i ng rate 

;s 

(51) 

Figure 12 presents the work state diagram in terms of the settling rate as 

described by the several equations above, and the analogy to the velocity 

work state diagram is clearly seen. 

The poi nt at whi ch the wake mi grates from upwi nd to downwi nd of the 

rotor disk is also taken as the nominal condition when the radial character 

of the wake changes from contraction to expansion. Maintaining the form of 

Equation (33) for the wake radial coordinate throughout the axial regime, 

-[k (z/R)] 

r/R = A+(l-A)e r (52) 

Then the developed wake radi us A and the rate parameter kr vari ati on 

with axial velocity must be determined. The reference value in hover of 

A = 0.78 is again taken from the experimental measurements of Reference 3. 

In the normal work state the wake will contract, but at a rate decreasing 

with axial velocity to a negligible value in the high speed limit such that 

contraction is also negligible, even if the developed wake radius remains 

at the hover value. Similarly, the developed radius of the expanding wake 

is of little importance in the other extreme of axial velocity, so that the 

developed wake expanded radi us is only important at low speed. Without 

guiding experimental data, the value is set by assuming the same expansion 

increment as for contraction, thus giving as a function of the sign of the 

settling rate 

38 
N 

I~ 

..... I~ 

" I~n:l 

V') 

l.LI 

le( 

0:: 

c.!J 

:z 

...... 

....J 

lIl.LI 

V') 

Cl 

l.LI 

0:: 

0:: 

l.LI 

l.L. 

l.LI 

0:: 

3 

2 4---------+---------r-------~--------_+------~~ 

1 

0 

-1 

INDUCED, k. 

1 

-2 

CLIMB HOVER DESCENT 

-3 +---------r-------~~------_+--------~------~ 

-2 -1 o 1 2 

REFERRED AXIAL VELOCITY, Va 

Figure 12. Rotor Work State Settling Rate Relationships in 

Axial Flow. 

39 

3 
A = 1 + 0.22[sign(k )] z 

The rate parameter is assumed to be inversely 

pitch which sets the radial induced velocities. 

proper vani shi ng rate at the hi gh speed axi al 

consideration for the required sign then 

(53) 

proportional to the wake 

Thi s al so provi des the 

velocity 1 imits. With 

(54) 

Equations (28) and (33) can now be used to generate the cylindrical 

coordi nates of the wake as a functi on of the wake azimuth. The wake is 

composed of a number of trailers, each with an origin at the intersection 

of a blade surface panel boundary with the blade trailing edge, and the 

generating equations are adjusted with the appropriate offsets to match the 

origin (rte,Zte) of a particular trailer, 

(55) 

-[k (z-z ) /R] 

r/R = (rte/R){A+(l-A)e r h te } (56) 

ROllUP OF CONCENTRATED VORTICES 

The implementation of the prescribed wake model is designed to allow 

the inboard and outboard sheets to roll up into concentrated root and tip 

vortices respectively. The rollup of the two vortices may be selected 

independently or in combination, and a portion of the wake called the midspan sheet can be included without any rollup if desired. Also, the rollup 

mechanism can be suppressed altogether, fixed to include a series of specified trailers, or for the tip vortex allowed to vary through iteration to 

be compatible with the calculated radial bound circulation distribution. 

Compatibility is interpreted to mean that the inboard edge of the outboard 

sheet coincides with the radial position of the outermost maximum in the 

bound circulation distribution. The generality in selection of the rollup 

40 
is provided to allow exploration of the importance of the several wake 

structure elements and to accommodate future refinements of the wake 

model's structure as data and better understanding of the real wake become 

available. 

Fi gure 13, shows the overall scheme of the wake gri d and roll up 

options. The near wake extends from the blade trailing edge through one 

revolution. In the near wake the number of azimuth increments is increased 

toward the blade to improve the fidelity of the discrete, piecewise linear 

wake elements to the actual curved trajectory of the wake filament 

trailers. The number of azimuth increments per revolution in the nonuniform grid of the near wake is twice that specified in the uniform grid region that follows and continues to the truncation point. At the truncation 

of the uni form gri d the wake can optionally be conti nued with the semi ':" 

infinite vortex cylinder described in a previous section. 

The optional rollup process is described first by specifying the 

bounding indices of the trailers on the edges of a sheet that will develop 

into a concentrated vortex. Then the azimuth increment is specified over 

which the sheet will form into the vortex. The index of a trailer 

corresponds to the blade surface panel grid index from which the trailer 

emanates. As shown in Figure 14, the grid indices are a function of the 

number of panels spanwise within a blade segment, and the number of blade 

segments. 

41 
-rl BLADE 1--; 

I 

INBOARD MID-SHEET w SHEET 

NEAR WAKE 

NONUNIFORM GRID _Wmt 

w

mr _ 

• 

r 

UNIFORM GRID 

WAKE REGION 

ROLLED UP 

1 

ROLLED UP 

ROOT VORTEX TIP VORTEX 

JI II- I I FAR WAKE II 

I I II 

I I VORTEX CYLINDER II 

I I 

• 

II 

I I I I 

I I II 

Figure 13. Schematic of Wake Grid Regions, Sheet Definitions, 

and Rollup Options. 

42 
SEGMENT 1 ----I.~II---- SEGMENT 2 ~ 

BLADE PANEL INDICES 

I la 

,. 

+- 1 2 3 4 5 6 ... 

n+1 n+2 ... 

I I 

1 2 3 4 5 6 

7 ... I I 

TRAILER INDICES 

Figure 14. Panel, Panel Boundary Grid, and Wake Trailer Index 

Assignments. 

43 
PERFORMANCE CALCULATION 

With the general characteristics of the lifting surface theory and prescribed wake now defined, the overall solution procedure can be outlined. 

The principal steps in obtaining a converged solution of the detailed aerodynamics and integral performance are described in the flow chart of Figure 

15. The major iteration cycle of the problem is to seek a thrust level and 

wake geometry which are mutually compatible at the specified blade pitch. 

Secondary iterations are performed to insure correspondence of the sectional effective linear lift curve slope with the potential flow circulation solution, and to develop the outboard sheet boundary and tip vortex 

rollup if optioned. 

For given blade and rotor geometry, and with an iterative estimate of 

the wake settling and contraction rates, the discretized panel representation of the blade surfaces and wakes is developed in cartesian coordinates. 

Then an aerodynamic influence coefficient matrix is assembled from separate 

calculations of the component coefficients due to each blade's surface and 

wake. Gauss-Seidel iteration is used to obtain the circulation solution 

from the resulting linear equation system. 

The blade element effective angle of attack is calculated from the circulation solution at each chordwise column of surface panels. The effective angle is related to the bound circulation, that is the value of distributed circulation at the trailing edge rte , through the Kutta-Joukowski 

theorem, 

(55) 

where c is the blade element chord and 

44 
GIVEN CONFIGURATION GEOMETRY I 

AND OPERATING CONDITIONS 

~ I GENERATE BLADE I DISCRETIZED GEOMETRY 

~ I CALCULATE SURFACE AIC'S J 

~ I ASSUME INITIAL CT I ~ 

-, DEFINE WAKE PARAMETERS FROM CT 

~ I GENERATE WAKE l 

DISCRETIZED GEOMETRY J 

~ I CALCULATE WAKE AIC'SJ I CONVERGE TIP I ~ VORTEX ROLLUP 

-l ASSEMBLE AIC MATRIX I 

~ I SOLVE FOR CIRCULATION ~ 

• I CALCULATE PERFORMANCE I 

~ ASSESS CONVERGENCE OF LIFT SLOPES, SOLUTION 1 ASSESS COMPATIBILITY OF CT AND WAKE CONVERGED 

, l UPDATE LIFT SLOPES I 

~ I UPDATE CT J 

Figure 15. Flow Chart of Major Steps in Solution Procedure. 

45 
(56) 

is the effective linear lift curve slope available from a previous iteration. The blade element relative velocity Vr contains the full freestream 

vector plus the induced swirl and downwash. It is calculated from the 

AIC's and the now known circulation, and the single blade element value of 

Vr is taken as the chordwise average value. The aerodynamic sweep angle A 

is the angle between the Vr vector and the blade element quarter chord. 

Also, the use of the large angle form of Equations (55) and (56) is 

required because of the very high angles that a wind turbine can encounter 

at high wind speeds when operating near peak power output. 

Below stall, the total inflow angle is deduced from the difference 

between the geometric angle adjusted for zero lift line offset, 

(57) 

and the induced angle is then the difference between the total inflow angle 

and that due only to the axial freestream, 

a. = a _ a 

1 n w (58) 

The blade element airfoil lift and drag coefficients, cl and cd' are 

obtained from bivarient tables of two-dimensional coefficients as functions 

of angle of attack and Reynolds number. The coefficients are also corrected for sweep using infinite yawed wing theory and the blade element 

sweep angle A. The aerodynamic coefficients are then resolved as shown in 

Figure 16, into element z- and x-forces (thrust and torque forces) using 

the dynamic pressure based on Vr and the relations 

Cz = cl cos(a n) + cd sin(an) - C

s sin(ag-aO) (59) 

Cx = cl sin(an) + cd cos(a n) + Cs cos(ag-aO) (60) 

46 
or 

ZERO LIFT 

CHORDLINE 

x 

INDUCED VELOCITIES 

NOTE: BLADE PITCH, INDUCED x,z-VELOCITIES, SUCTION FORCE INCREMENT, 

AND x-FORCE ARE NORMALLY NEGATIVE AS SHOWN 

Figure 16. Velocity, Force Coefficient, and Angle of Attack 

Resolution at a Blade Element. 

47 
The el ement forces and torques are then integrated radi ally to gi ve the 

final configuration performance. The coefficient C

s 

is the increment in 

leading edge suction force due to three-dimensional effects such as finite 

planform, 

(61) 

The two-dimensional portion of the suction force is assumed to be contained 

in the tabular airfoil coefficients. The suction force is proportional to 

the coeffi ci ent go whi ch is deri ved from the devi ati on near the 1 eadi ng 

edge of the chordwise circulation distribution from the two-dimensional 

flat plate value. The force acts in the chord plane, normal to the leading 

edge, and so is resolved through the leading edge sweep angle Ale' Further 

detail of the suction force calculation may be found in Reference 1. 

In the pre-stall range of angl es of attack the use of the effecti ve 

linear lift curve slope causes the potential flow circulation response to 

match that of the airfoil characteristics. After stall occurs the procedure will still continue to match the calculated circulation to the stalled 

airfoil behavior. In this case the process is of course only simulating a 

very complex aerodynamic environment by forcing the blade element to stall 

in the sense of a two-dimensional airfoil. Furthermore, it is no longer 

clear how to relate any calculated leading edge suction increment to the 

fully separated real flow, or how to properly calculate the induced angle 

to resolve the element aerodynamic coefficients, which at high angles are 

themselves simply resolved from the normal pressure force. It is reasoned 

that the local flow should be dominated by the separation and so only the 

suction force already contained in the two-dimensional airfoil characteristics is considered post-stall. The effective angle of attack is continued 

to be calculated from Equation (55), but the total inflow and induced 

angles are now implied directly from the average chordwise velocity vector 

at the blade element. This approach is believed to more correctly resolve 

the separated flow force coefficients. 

48 
SIMULATION OF POST STALL AIRFOIL CHARACTERISTICS 

Wind turbine aerodynamic calculations and performance estimates are 

additionally complicated by the fact that the blades are partially stalled 

for all wind conditions. As any practical analysis must rely on airfoil 

characteri stics incl uded through a bl ade el ement representati on of the 

local performance quantities, considerable attention is given to modeling 

high angle of attack airfoil behavior. Most approaches are based on 

stalled flat plate aerodynamics with corrections to address suspected 

three-dimensionality of the stall phenomena. 

Assuming the availability of reliable measurements up through the stall 

angle associated with maximum lift coefficient, and assuming that the fully 

separated flow is adequately model ed by the fl at pl ate theory, then the 

transition region from stall onset to the point that the flow recovers to 

the flat plate behavior is of critical interest. This transition generally 

occurs in the angle of attack range from about 15 to 30 degrees, based on 

observation of the very limited amount of detailed experimental data in 

this range. Airfoil data is difficult to measure in this transition 

because both surface pressure and wake rake measurements become unreliable 

after stall, especi ally for the measurement of drag. Once the flow is 

fully separated, and assuming that two-dimensionality of the flow is maintained, then integration of surface pressure can yield reliable results. 

The calculation of wind turbine peak power is very sensitive to the 

treatment of stall transition airfoil characteristics, and as yet there 

does not appear to be a completely satisfactory and validated model. In 

the implementation of the LSWT analysis several post-stall models are 

available in addition to directly using tables at high angles. These 

models include the Aerovironment, Inc. stalled flat plate model from 

Reference 6, the synthesis method developed by Viterna in Reference 14, and 

a method developed as part of the present work which allows more flexibility in selecting parameters to explore the sensitivity of the model. The 

Aerovironment method is included for completeness, but will not be 

49 
described in detail because it requires the transition region characteristics to be part of the supplied table. 

VITERNA STAll MODEL 

This method synthesizes the post stall lift and drag characteristics 

based on idealizing the stall such that the calculated torque at high 

angles of attack is constant. This requirement is based on the observation 

for some large scale turbines such as the NASA Mod-O, that the peak power 

remains relatively flat with increased wind speed. It should be noted that 

the deri vati on is stri ctly val i d only for untwi sted bl ades operati ng at 

flat pitch. The result is a set of analytical expressions giving cl and cd 

for all angles above that for stall. 

A parameter in the method is the drag coefficient at a= 90 degrees, 

c = 1.11 + 0.018(AR) d

max 

(62) 

The variation of the maximum drag with aspect ratio AR is a correction for 

three-dimensionality based on the data presented in Reference 15, for fully 

stalled finite span flat plates. With the subscripts 1, d, and s denoting 

respectively lift, drag, and the value of a parameter at stall, the Viterna 

model is described by the equation set 

Al = 8/2 

A2 = [c l - cd sin(as )cos(a s )] sin(as )/cos 2

(as ) 

s max 1 1 1 1 

50 
c

l = 2A1

sin(a)cos(a) + A2COs 2(a)/sin(a) 

cd = B1sin2(a) + B2cos(a) (63) 

In implementation the stall angles are the maximum angles contained in 

the ai rfoil tabl es of 1 i ft and drag coeffi ci ents, and the aspect rati 0 is 

based on the blade chord at 0.75 radius. The use of aspect ratio in this 

manner is really equivalent to the assumption that the entire blade stalls 

at once. If the radi al extent of the stall were only parti al then the 

degree of relief would intuitively be a function of a stalled elements 

proximity to a free edge, if in fact the stall region included either the 

bl ade root or ti p. If the regi on were bounded by attached flows then it 

mi ght be rna i nta i ned more nearly as two-di mens i ona 1 • A 1 so, the re 1 i ef is 

probably partially accounted for in the calculation of the radial load distri buti on itself. There are then a number of conceptual di ffi culti es in 

making the aspect ratio analogy. 

An additional uncertainty introduced by the synthesis is that it 

results in vary favorable ratios of lift to drag at a= 45 degrees. This 

occurs in the synthes is because of the match to condi tl ons at a = 90 

degrees, leaving the region above stall under constrained. At the 45 

degree point exprimental data shows that the lid is almost universally 

equal to unity, in agreement with flat plate theory. 

CMA STAll MODEL 

The procedure descri bed now is an attempt to provi de a more general 

model, one which is in agreement with stalled flat plate theory at higher 

angl es where the flow is fully separated, whi ch systemati cally generates 

the characteristics in the stall transition region, and over which a 

greater degree of parametric control can be exercised for refinement. The 

angle of attack range is considered in four regions as shown in Figure 17. 

Region 1 is the range up to stall in which the airfoil characteristics are 

assumed known. 

51 
..... 

:z 

w 

..... 

u 

..... 

l.J... 

l.J... 

w 

0 

u 

..... 

l.J... 

..... 

-J 

..... 

:z 

w 

..... 

u 

..... 

l.J... 

l.J... 

W 

o 

u 

~ 

c:( 

ex: 

Cl 

- 1 

cl 

s 

c 

145 

cl r 

c 

19O 

0 

-1 

c dgO 

o 

(ls 1 

2 -+- 3 4 

REGION DEFINITIONS " 

(l 45 r 

ANGLE OF ATTACK 

2 3 4 

ANGLE OF ATTACK 

gO 

Figure 17. CMA Stall Model Region Definitions and Key Points 

for Matching Data. 

52 
Region 2 covers the range from stall to the recovery point after which 

the stalled flat plate theory is assumed to be valid. The characteristics 

at a = 45 degrees are specified as parameters, as is the angle of attack 

for recovery. With the subscript r denoting the recovery point, then the 

following functions, similar to those used by Viterna, provide a very systematic fairing of the region, 

cl = 2c l sin{a )cos{a r ) 

r 45 r 

cd = 2cd sin2{a r ) 

r 45 

= [cl cos2{as )sin{ar ) - cl cos

2{ar)sin{as )] 

r 1 s 1 

/ (2cos{as )COs{a )[sin2(a )cos(a s ) 1 r r 1 

- sin2(a s )cos(ar)]J 

1 

= [cl - 2A12sin{as )cos(as )]sin(as )/cos2(as ) 

s 1 1 1 1 

= [cd cos(a r ) - cd cos(a s )] 

s r d 

/ [sin3(a s )cos(a r ) - sin3(ar)cos(as ) 

d d 

B22 = [cd - B12sin3(ar)]/cos(ar) 

r 

c

l = 2A12sin(a)cos(a) + A22cos

2(a)/sin(a) 

cd = B12sin3(a) + B22cos(a) (64) 

The recovery point concept was chosen based on review of airfoil characteristics from several sources including References 16, and 17. The latter reference is particularly insightful because it indicates a fairly general trend for the family of lift curves representing Reynolds number variati on to merge toward a common poi nt at an angl e of attack of about 32 

degrees. This Reynolds number independence at the recovery point supports 

the assumption that the flow is fully separated, and that stalled flat 

53 
plate behavior represents the airfoil, independent of the pre-stall characteristics. 

Region 3 then continues to 45 degrees angle of attack. The factor Bpr 

is introduced to allow determination of the effect of relieving the base 

{leeward side} pressure of the stalled plate. The generating functions in 

this region are 

A13 = 2c B 145 pr 

= [cl r 

2c l Bprsin{ar}cos{ar}]/[l- 45 

2 Cd45BprCOS(ar}]/[Sin2{ar} 

B23 = {cd Bpr - B13/2}J2 45 

cl = A1 3sin{a}cos{a} + A23[1-2sin2(a}] 

cd = B13sin2(a} + B23cos(a} (65) 

And finally Region 4, with selectable values at 90 degrees angle of 

attack is represented by 

c = Bp {2cl sin(a}cos(a} - cl [1-2sin2(a}]} 1 r 45 90 

c = Bp [cd sin2(a} + (2cd - cd }/)2 cos(a)] (66) 

d r 90 45 90 

This model provides the capability to adjust its characteristics to 

match whatever is known about the actual airfoil. Or, if little information is available, then it will provide a systematic basis to synthesize 

the high angle of attack behavior. 

54 
EXTENSIONS FOR QUASI-STEADY SOLUTION 

The analysis as described thus far is based on axial symmetry of the 

onset wind and the problem geometry when viewed in a fixed coordinate 

system attached to a reference blade. The extensions described now are 

designed to permit investigation at an exploratory level of effects which 

cause the flowfield to be time variant. The quasi-steady approach 

calculates the aerodynamics of the reference blade as the rotor is indexed 

around the azimuth, and accounts for blade motion, nonuniform wind profile, 

and distortion of the wake. To simplify the analysis, the effects of all 

other blades are calculated with the assumption that their influence is 

represented through the average loading over the disk. 

Rigid blade flapping and cyclic pitch motions with respect to the shaft 

axis are permitted as harmonic functions of azimuth. The shaft may be 

inclined both horizontally and vertically to the principal wind direction. 

Nonuniformity of the onset wind is included with a ground boundary layer 

profile and velocity deficit functions to represent the effects of tower 

shado\'l. The wi nd profi 1 e as a functi on of hei ght above ground y and hub 

height h is given by, 

(67) 

Tower shadow in the form of a velocity deficit fraction Ts further modifies 

the wind profile to give the final axial velocity 

v = V 0-T ) a w s (68) 

The velocity deficit fraction can be supplied at an array of points in the 

x,y- plane at the rotor disk, or the formulation described in Reference 18, 

can be selected. 

55 
A 11 of these effects enter the problem through the no normal fl ow 

through the bl ades boundary condi ti on, and through perturbati ons in the 

wake transport. To position a particular wake trailer, for instance, the 

induced component of the wake rate parameter is based on the disk average 

thrust coefficient developed as the quasi-steady solution stabilizes. The 

transport due to the distorted onset wind must now be calculated locally in 

the field, and therefore the position of a particular point on the trailer 

is found by integrating the transport from the point's origin in the field 

as a function of time to its position later in time (azimuth). 

The working equation of the circulation solution relates the normalwash 

required at the blade to the induced velocity produced by all blades and 

wakes, and was given by Equation (11). At panel 1 on blade n Equation (11) 

can be expanded to isolate the contributions from each blade and wake, 

(qNl)n = I:[L: (Dsw)l,k KkJ b 

b k 

(69) 

With the assumption that at the reference blade all other blade's effects 

are through disk average loading, then the Kk circulations at all blades 

other than the reference bl ade n are taken as di sk average val ues. By 

defining the circulation ratio 

then Equation (69) becomes 

(qNl)n = L:[I: (Dsw)l,k Kk(Kk)n ] b 

b k 

(70) 

(71 ) 

The influence coefficients from all the blades and wakes can now be 

combined as 

56 
(Dsw)l,k = L [(DSW)l ,k Kk ] b 

b 

(72 ) 

giving the new working equation for the quasi-steady solution at the 

reference blade n as 

(73 ) 

k 

Since the ratio Kk is itself a function of the solution, then an 

iteration is set up around the li~ear system solution of Equation (73), 

beginning with an initial value of Kk = 1. The ratio is updated after each 

solution of Equation (73) until the process converges. The overall 

solution process begins at an initial azimuth and proceeds for a specified 

number of steps. As the solution progresses, disk averages of the aerodynamic and performance quantities of interest are developed and can be monitored to assess the dissipation of transients as the solution approaches 

the (periodic) steady state. 

57 
COMPARISON TO PERFORMANCE MEASUREMENTS 

The initial assessment of the lifting surface prescribed wake analysis 

has been made based on comparisons to measured wind turbine power characteristics and to similar calculations made with a blade element momentum 

theory analysis. The four turbines chosen for this comparison represent a 

variety of power output capacities, physical sizes, and aerodynamic configurations, and include both research and commercial machines. The turbines 

and major features of their configurations are listed in Table 1. 

Table 1. 

Turbine Radius Number Airfoil Chord Twist 

(ft) of Blades Family 

NASA MOD-O 63.96 2 NACA 230xx Tapered Untwisted 

ESI-54 27.0 2 NACA 230xx Tapered 10° Linear 

Carter 25 16.0 2 NACA 230xx Tapered Nonlinear 

Enertech 1500 6.56 3 NACA 44xx Tapered Tip 5° Linear 

Appendix D contains Program LSWT input data file listings for each of 

the example turbines. These listings describe the details of each 

turbine's blade geometry, the source and values of the airfoil performance 

characteristics utilized, and the selection of analysis options. As yet no 

attempt has been made to optimize the selected analysis parameters. Those 

that appear in the input listings are recommended as a nominal configuration and are consistent across all cases presented. The measured rotor 

power data for the NASA MOD-O, ESI-54, and Carter 25 turbines was furnished 

by the contracti n9 agency. For the 1 atter two machi nes the source of the 

data was manufacturer's tests. The measured performance of the Enertech 

1500 was obtained from Reference 19. All cases are for the turbines with 

58 
blades set to zero pitch at the tip; however, information is not available 

to confirm that chordline reference is consistently used. 

The blade element momentum analysis used for comparison is a highly 

modified version of the PROP Code described in Reference 6. Technical modifications include the addition of the blade element drag coefficient in 

the expressions used to calculate both the inp1ane and axial inductions. 

There is some disagreement over the correctness of including this term in 

the induction. The argument against its inclusion is based on the assumption that the drag is substantially of viscous origin, and therefore does 

not contribute to the lift forces. At very low lift coefficients the drag 

of most airfoil sections is approximately 50% viscous and 50% pressure. At 

the high element angles of attack at which wind turbine blades operate, the 

drag is mostly due to pressure. In fact, when the flow is fully separated 

both the lift and drag are simply components of the normal pressure force. 

Therefore the drag should be included in the induction. 

However, the major reason for modifying the PROP code is to minimize 

modeling differences between it and the lifting surface analysis. To 

accomplish this the PROP code was restructured to accept the identical 

geometry input and options, to utilize the same solution grid, to accept 

the same airfoil data tables, and to implement the same post-stall models 

as the LSWT code. In most cases identical code is now used in these areas 

in both programs. In the compari sons that foll ow the modi fi ed b1 ade 

element code is referred to as BEWT (Blade Element Wind Turbine). 

In all cases of BEWT calculations the Prandtl tip loss option was 

included. Some investigators are of the opinion that any tip loss factor 

should be supressed if a post stall synthesis such as the Viterna model is 

in effect. As previ ously di scussed thi s model i ncl udes an aspect rati 0 

correction to account for three-dimensionality, and thus it can be argued 

that the tip loss is not required. However, that concept is strictly valid 

only in the context of the actuator di sk theory whi ch treats the integral 

loading. The blade element theory addresses radial load distribution, and 

thus for consistency any corrections should be conceptualized and applied 

59 
at the element level. Also, recognize that in wake methods such as the 

present LSWT analysis, when local blade stations are stalled the radial 

loading must still tend to zero at the tip. Therefore" it is again 

consistent to include the tip loss in the blade element analysis. 

Two sets of comparisons are presented in Figures 18 through 25. The 

fi rst four fi gures show measured rotor power as a functi on of wi nd speed 

for the example turbines in comparison to calculations made with the LSWT 

and BEWT codes, and the Viterna stall model. In the second set of four 

figures the calculations use the CMA stall model. 

Figure 18, for the MOD-O turbine confirms the Viterna stall model objective of achieving constant torque at high wind speeds for this turbine, 

based on the BEWT result. The LSWT result substantially over predicts the 

performance from the wind speed for peak power and higher. Also, the offset in wind speed at a given power between the LSWT and BEWT calculations 

at the lower wind speeds is a persistent difference for all the cases 

studied. Because the MOD-O is untwisted and uses a very thick airfoil section for structural reasons, the blades stall uniformly and thus offer a 

striking example of the sensitivity of calculations to modeling of the high 

angle airfoil characteristics. It should be noted that the airfoil characteristics for this case are taken at the 0.75 radius Reynolds number, 

whereas the other cases uti 1 i zed interpol ati on on Reynol ds number wi thi n 

the airfoil tables. The increasing twist of the other example turbines results in a gentler stall propagation with wind speed. The Carter 25 calculations are in closest agreement to each other, and also to the measured 

data. In Figure 21, for the Enertech 1500 the LSWT calculation with the 

Viterna stall model appears to follow the data fairly well at the high wind 

speed, but the actual data at the high end was taken with as much as 30 degrees of yaw. The measurements are suspect even though they were corrected 

for this presentation by the cube of the cosine rule. Also, for this case 

the LSWT calculations at low wind speeds exhibit considerable waviness, far 

in excess to any appearing for the other turbines. The source of this has 

not been identified, but is probably an analytical limit cycle introduced 

by the several strong sources of nonlinearity in the problem. 

60 
160 

-----~ 

~ ~ 

0 0 ,nO 

W b;iiJ,~-- -- ~- .-

140 

120 

j; ~/ 

// (:/;1 

J MEASURED 0 

~ LSWT 

BEWT ---

0 

It' 

40 

20 

/ 

o 

2 4 6 8 10 12 14 16 

WIND SPEED (MIS) 

Figure 18. Compa~ison of Calculated and Measured Rotor Power, 

NASA MOD-O Wind Turbine, Viterna Stall Model. 

61 

18 
120 

80 

3: 

~ 

0:: 

W 

3: 

a 60 0-

0:: 

a 

fa 

0:: 

40 

~ 

..,.,--

/ ",.---- --- 9/ 

~-

'£/ 

/; '1/ 

II' 

j} 

~I 

/ 

MEASURED 0 

LSWT jp/ BEWT ---

d 

100 

20 

o 

o 4 8 12 16 20 

WIND SPEED (MIS) 

Figure 19. Comparison of Calculated and Measured Rotor Power, 

ESI-54 Wind Turbine, Viterna Stall Model. 

62 

24 
50 ~------~------~--------~------~------~ 

40 

3: 30 ~ 

0:: 

W 

3: 

0 

0-

0:: 

0 

I- 20 

0 

0:: 

MEASURED 0 

10 I-------l---~-_+---- LSWT ---------I 

BEWT ---

o 

o 5 10 15 20 25 

WIND SPEED (MIS) 

Figure 20. Comparison of Calculated and Measured Rotor Power, 

Carter 25 Wind Turbine, Viterna Stall Model. 

63 
3.0 

~ V 

IV' 2.5 

2.0 

3: 

:.c:: 

a: 

w 

3: 

e 1.5 a.. 

a: 

e 

le 

a: 

1.0 

j 

jJ/ ---I--

--

9' 

j / 

] 

47 

MEASURED 0 

LSWT VI' BEWT ---

/ 

0.5 

0.0 

o 4 8 12 16 20 

WIND SPEED (MIS) 

Figure 21. Comparison of Calculated and Measured Rotor Power, 

Enertech 1500 Wind Turbine, Viterna Stall Model. 

64 

24 
3: 

~ 

0: 

W 

3: 

0 

a.. 

0: 

0 

..... 

0 

0: 

160 

140 

0 0 

n -,0 0 

.,rt~ 120 

~ :0-

~ 

100 7"'/ 

--"" ~ 

" ~ Jl ,/ ........ ........ 

80 

60 

1', ..... 

~/ " " 

~, 

j/ MEASURED 0 ;' LSWT 

BEWT ---

I;t 

/;1 

40 

20 

/ 

o 

2 4 6 8 10 12 14 16 

WIND SPEED (MIS) 

Figure 22. Comparison of Calculated and Measured Rotor Power, 

NASA MOD-O Wind Turbine, CMA Stall Model. 

65 

" 

18 
120 

100 

80 

0:: 

W 

~ 60 c.. 

~ 

o 

Io 

~ 

40 

20 

o 

o 4 

~ -............ . r-, 

, ~ 

-1;/' ... , 

I , 

/; / i', 

, 

, 

III 

V/ 

j} 1/ 

MEASURED 0 

LSWT j/ BEWT ---

/0 

8 12 16 20 

WIND SPEED (MIS) 

Figure 23. Comparison of Calculated and Measured Rotor Power, 

ESI-54 Wind Turbine, CMA Stall Model. 

66 

24 
50 

40 

3 30 ~ 

0:: 

W 

3 

C> 

c.. 

0:: 

~ 20 C> 

0:: 

10 

o 

o 

~ ~ .......... ioo._ i'---_ 

/' " / 

/ " / " 

I' 

I j MEASURED 0 

I' LSWT 

BEWT ---

0 , 

5 10 15 20 

WIND SPEED (MIS) 

Figure 24. Comparison of Calculated and Measured Rotor Power, 

Carter 25 Wind Turbine, CMA Stall Model. 

67 

25 
~ 

::.:: 

c:::; 

3 

0 

c.... 

c:::; 

0 

'-

c 

-

3.0 

2.5 

2.0 

1.5 

1.0 

0.5 

0.0 

o 

0 

l,J 0 

I 

n £-........ 

L?- ........... 

~ 

" j;/ "', "-

"-

, 

!I.\. 

~/ /;11 

/ 

4 8 

MEASURED 

, .., ... .::. 

LSWT 

BEWT 

WIND SPEED (MIS) 

16 

"-

" 

0 

---

: 

I 

20 

Figure 25. Comparison of Calculated and Measured Rotor Power, 

Enertech 1500 Wind Turbine, CMA Stall Model. 

68 

24 
Overall the question remains as to the proper post-stall behavior and 

the different behavior of the two analytical methods which is emphasized 

when stall occurs. Since the Viterna empirical stall model was developed 

for use with blade element momentum methods, it is perhaps biased in that 

direction. Furthermore, the optimistic post stall power level calculated 

with the LSWT analysis is consistent with the favorable lift to drag ratios 

that the stall model produces in compari~on to that expected from typical 

airfoil characteristics. This observation was in fact the motivation for 

developing the CMA stall model. 

Figures 22 through 25, show the same comparisons as already made, but 

now with the new stall model. The key values in the stall model were set 

to realistic magnitudes guided by the flat plate characteristics given in 

Reference 15. This is as might be done without any knowledge of a particular airfoil's high angle behavior, resulting in 

c 

145 

= c d45 

= 1 

c 

190 

= 0 

c d90 

= 2 

a 

r = 32 

In addition a value of Bpr = 0.5960, was chosen. This corresponds to 

the ratio of the maximum drag (at 90 degrees angle of attack) of a low 

aspect ratio flat plate to a two-dimensional flat plate. The reasoning is 

that rather than an aspect rati 0 effect venti ng the 1 eeward si de of the 

stalled region of a blade toward ambient pressure, the naturally occurring 

radial pressure gradient of the rotating system and large scale mixing 

would cause complete venting, independent of the position or extent of the 

stalled region. However, results thus far have indicated that this factor 

has insignificant effect for the present cases. The stall occurring in the 

peak power range of wind speeds is dominated by the stall transition 

characteristics rather than the characteristics at higher angles. 

69 
Figure 22, is the result for the MOD-O turbine and shows that the LSWT 

calculation is now in much better agreement with the measured data up 

through peak power. At the very high wind speeds the calculations are now 

increasingly conservative. Similar differences with respect to the results 

with the Viterna model are seen for the other example cases. The overall 

agreement between measurements and the LSWT calculations using the new 

stall model for all of the example turbines is considered very good, with 

the exception of the high yaw angle data of the Enertech 1500 as previously 

noted. This suggests that the ability to predict peak power with the 

present method is improved over the blade element momentum method. 

Although these calculations should be viewed as preliminary, it is emphasized that careful modeling of the physical configurations in the LSWT 

analysis combined with straight forward estimates of the airfoil behavior 

produced these results. 

70 
CONCLUSIONS AND RECOMMENDATIONS 

A comprehensive lifting surface analysis for horizontal axis wind turbine rotors has been developed and implemented, and the initial validation 

conducted for the prediction of steady-rotor power output. The method uses 

a prescribed wake model extended from a helicopter hovering wake model with 

modifications for the axial flow regime of the wind turbine. The analysis 

now provides the opportunity to investigate and define the sensitivity of 

wi nd turbi ne aerodynamic cal cul ati ons and performance estimates to much 

finer details of modeling than was previously possible. The important 

effects of proper representati on of ai rfoi 1 characteri sti cs in the stall 

transition region was demonstrated and a new stall simulation model was 

developed from which refinements can be systematically made. 

Several recommendations are in order to pursue further development of 

the method, and to clarify a number of physical issues, especially in 

regard to understanding and modeling stall aerodynamics. First, validation 

of the lifting surface method should be broadened and include detailed 

evaluation of modeling options, particularly those associated with the wake 

itself. With the flexibility of the present wake model it should be possible to establish the minimum model required to produce reliable results 

with minimum demand on computational resource. 

Second, stall aerodynamics should be investigated to understand the 

theoretical requirements to extend both momentum theory and potential flow 

analysis methods into the stall regime. In conjunction with this, a better 

understanding of airfoil stall transition behavior should be sought, most 

probably guided by experimental investigations, the goal of which would be 

to establish a baseline from which methods to account for stall progression 

and three-dimensionality on the blade can be developed. 

71 
The importance of vortex ri ng work state induced velocity shoul d be 

cl arifi ed, and the si gnifi cant differences between the Gl auert empi ri cal 

model and conflicting experimental data should be reconciled. 

Finally, to support validation of methods such as developed in the present work, a wind turbine data base should be established which contains 

documented physical characteristics, airfoil aerodynamic coefficients with 

sufficient definition in Reynolds's number and stall behavior, and substanti ated benchmark aerodynamic and performance measurements for several 

representative wind turbines. 

72 
REFERENCES 

1. Kocurek, J.D., Berkowitz, L.F., and Harris, F.D., "Hover Performance 

Methodology at Bell Helicopter Textron," Presented at the 36th Annual 

National Forum of the American Helicopter Society, Washington, D.C., 

Paper No. 80-3-1, May 1980. 

2. Kocurek, J.D., A Lifting Surface Performance Analysis with Circulation 

Coupled Wake for Advanced Conflguration Hovering Rotors, Ph.D. 

Dlssertatlon, Texas A&M University, May 1978. 

3. Kocurek, J.D., Tangler, J.L., II A Prescribed Wake Lifting Surface 

Hover Performance Analysi s, II Presented at the 32nd Annual Nati onal 

Forum of the American Helicopter Society, Washington, D.C., Paper No. 

1001, May 1976. 

4. Glauert, H., "Airplane Propellers,1I Vol. IV, Div. L of Aerodynamic 

Theory, W.F. Durand, ed., Julius Springer, Berlin, 1935. 

5. Wilson, R.E., Lissaman, P.B.S., and Walker, S.M., "Aerodynamic 

Performance of Wind Turbines,1I Oregon State University, Research 

Applied to National Needs (RANN), under Grant no. AER74-04014 A03, 

1976. 

6. Hibbs, B., and Radkey, R.L., Calculating Rotor Performance with the 

Revised Prop Code, AeroVironment, Inc., Pasadena, California, Contract 

No. PFN-13470W, Prepared for Rockwell International Corporation, 

Energy Systems Group, Rocky Flats Plant, Wind Energy Research Center, 

Golden, Colorado, March 1984. 

7. Castles, Jr. ,W., and Gray, R.B., Empirical Relation Between Induced 

Velocity, Thrust, and Rate of Descent of a Helicopter Rotor as 

Determined by Wind-Tunnel rests on Four Model Rotors, NACA TN 2474, 

Washlngton, D.C., October 1951. 

8. Gray, R.B., An Aerodynamic Analysis of a Single Bladed Rotor in 

Hoveri ng and Low Speed Forward Fli ght as Determi ned from the Smoke 

Studies of the Vorticity Distribubon in the Wake, Princeton 

Aeronautlcal Englneerlng Department Report No. 356, September 1956. 

9. Landgrebe, A.J., An Analytical and Experimental Investigation of 

Helicopter Rotor Hover Performance and wake Geometry Characterlstics, 

USAAMRDL Technical Report 71-24, Eustis Directorate, U.S. Army Alr 

Mobility Research and Development Laboratory, Fort Eustis, Virginia, June 1971. 

10. Egolf, T.A. and Landgrebe, A.J., liThe UTRC Wind Energy 

System Performance Analysis for Horizontal Axis Wind 

(WECSPER) ,II Presented at the 2nd DOE/NASA Wi nd Turbi ne 

Workshop, Cleveland, Ohio, February 1981. 

73 

Conversion 

Turbines 

Dynamics 
11. Miller, R.H., Simplified Free Wake Analysis for Rotors, ASRl TR 194-3, 

Aeroelastic and structures Research Laboratory, Department Aeronautics 

and Astronautics, Massachusetts, August 1981. 

12. Glauert, H., liThe Analysis of Experimental Results in the Windmill 

Brake and Vortex Ring States of an Airscrew, II R. and M. No. 1026, 

British A.R.C.,February 1926. 

13. Drees, J. M., lucassen, l. R., and Hendal, W. P., IIAirflow Through 

Helicopter Rotors in Vertical Flight,1I N.l.l. Report V.1535, December 

1955. 

14. Viterna, l. A. and Corrigan, R. D., IIFixed Pitch Rotot Performance of 

large Horizontal Axis Wind Turbines,1I presented at the DOE/NASA 

Workshop on large Horizontal Axis Wind Turbines, Cleveland, Ohio, 

July, 1981. 

15. Hoerner, S. F., Fluid Dynamic Drag, Published by the Author, 1965. 

16. Abbott, LH., and von Doenhoff,A.E., Theory of Wing Sections, Dover 

Publications, Inc., 1958,pp. 8-30. 

17. Jacobs, E. N. and Sherman, A., Airfoil Section Characteristics as 

Affected by Variations of the Reynolds Number, NACA Report 586. 

18. Thresher, R.W., and Hershberg, E.l., Computer Analysis Of Wind Turbine 

Blade Static And Dynamic loads, Mechanlcal Englneenng Department, 

Oregon State Onlverslty, Contract No. ASC76824JR, Prepared for 

Rockwell Internati onal Corporati on, Energy Systems Group, Rocky Fl ats 

Plant, Wind Energy Research Center, Golden, Colorado, March 1984. 

19. Tangl er, J. L., Hori zontal-Axi s Wi nd System Rotor Performance Model 

Comparison, A Compendium, RFP-3508 OC-60, Rockwell lnternatlonal 

Corporatlon, February, 1983. 

74 
APPENDIX A 

LSWT INPUT SEQUENCE GUIDE 
LSWT INPUT SEQUENCE GUIDE 

The input data set for computer program LSWT is organized into four groups 

of records described as INPUT SETS 1 through 4. INPUT SET 1 contains case 

set-up, control, and option parameters. The second set describes blade 

geometry in terms of piecewise linear radial distributions of planform 

parameters such as chord and pitch increment due to twist. The 

distribution of airfoils is also contained in this set. 

The blade configuration of the turbine is described by as many as four 

independent segments. Each segment requi res the input sequence in INPUT 

SET 2. Segment boundaries should be chosen to correspond to physical details of the blade such as changes in chord taper ratio, twist rate, and 

airfoil designation. Because the blade need not be continuous, the 

segmentation scheme can also be used to model actual breaks in the geometry 

as might correspond to a step change in local pitch. 

INPUT SET 3 is optional and provides the additional information and options 

to run LSWT in quasi-steady mode. The fourth set contains bivarient tables 

of two-dimensional airfoil characteristics as functions angle of attack and 

Reynol dis number, along with parameters for the several analyti cal stall 

models which may be selected. 

In the following sections, record-by-record descriptions of the input set 

to LSWT are described. Each record contains a maximum of 72 characters, 

thus allowing for sequence numbers to be placed in columns 73-80. All 

numeric data, including integer switch and option values, is input in 

floating point notation in fields of ten columns formated as FlO.O, with a 

maximum of seven fields per record. 

\ 

A-l 
INPUT SET 1, CASE SET-UP AND CONTROL OPTIONS 

RECORD 1 (72A1) Case Identification 

FIELD NAME DESCRIPTION 

1-72 CASID user notation to be displayed on report pages 

RECORD 2A (7F10.0) Print Options Switches 

1-10 IPRT1 surface grid and collocation point coordinates 

0.0 option off 

1.0 print each azimuth 

2.0 print initial azimuth only 

3.0 print reference blade position only 

11-20 IPRT2 wake coordinates 

0.0 option off 

1.0 print each cycle 

2.0 print each azimuth 

3.0 print final azimuth only 

21-30 IPRT3 blade element performance summary 

0.0 option off 

1.0 print each cycle 2.0 print final cycle only 

31-40 IPRT4 blade performance summary 

0.0 option off 

1.0 print each cycle 2.0 print final cycle only 

41-50 IPRT5 rotor performance summary 

0.0 option off 

1.0 print each cycle 

2.0 print final cycle only 

A-2 
51-60 IPRT6 

0.0 

1.0 

2.0 

61-70 IPRT7 

0.0 

>0.0 

wake parameter summary 

option off 

print each cycle print final cycle only 

controls printing of program trace markers to show timing 

and flow through major modules and subroutines. 

option off 

print program trace to unit pointed to by IPRT7 

RECORD 2B (7F10.0) Print Options, continued 

1-10 IPRT8 controls printing of record image of input data set to the 

output listing 

0.0 option off 

1.0 print image of input data set 

RECORD 3 (7F10.0) Tolerances 

Program default tolerances are selected by entering a zero value for any 

tol erance. Any non-zero entry wi 11 be used to overri de the default. 

Convergence of any parameter occurs when the absolute value of the 

quanti ty 

(new value) - (old value) < tolerance 

1-10 TOll 

11-20 TOL2 

21-30 TOL3 

(new value) 

convergence tolerance of Gauss-Seidel iterative solution 

for circulation. The default is loOE-05 for the inner 

solution. The outer solution tolerance is (TOL1)*10. 

sectional effective linear lift curve slope tolerance. The 

default is a function of the lift slope and is given by 

1.0/ALS**2 

or set to 1.0E-02, whichever is greater. 

wake parameter tolerance (axial settling rate). The default 

is 5.0E-02 

A-3 
RECORD 4 (7F10.0) Iteration Cycle Limits 

Program default iteration cycle limits are selected by entering a zero 

value for any limit. Any non-zero entry will be used to override the 

default. The particular iteration will be halted after the specified 

number of cycles, regardless of the convergence state. 

1-10 ICYU Gauss-Sei del iterative sol uti on for ci rcul ati on. The default for he inner solution is 100 cycles. The limit for 

the outer solution is (ICYL1)/5. 

11-20 ICYL2 secti onal effecti ve 1 i near 1 ift curve slope. The default 

is four cycles. 

21-30 ICYL3 wake parameters. The default is six cycles. 

31-40 ICYL4 tip vortex rollup. The default is four cycles. 

RECORD 5 (7FI0.0) 

1-10 ISTDY Steady/Quasi-Steady Mode Switch 

0.0 case is steady, INPUT SET 3 must be omitted 

1.0 case is quasi-steady, INPUT SET 3 is required 

11-20 RPM rotor rotational speed (revolutions per min) 

21-30 AI1URAT ratio of atmospheric viscosity to the standard day, sealevel value, 

-7 ~O = 3.719x10 slugs/ft-sec. 

31-40 SIGMAP ratio of atmospheric density to the standard day, sea-level 

value, 

Po = 0.002378 slugs/ft3 

A-4 
RECORD 6 (7FI0.0) Wind Speed Sweep Options 

1-10 VWOIN 

11-20 DVWO 

21-30 NVWO 

31-40 VDIM 

0.0 

1.0 

2.0 

3.0 

initial value of wind speed (dimension corresponds to value 

of VDIM input below) 

sweep increment of wi nd speed (dimension corresponds to 

value of VDIM input below) 

number of points in sweep 

Wind speed dimension switch 

ft/sec 

meters/sec 

miles per hour 

tip speed ratio 

RECORD 7 (7FI0.0) Rotor Collective Pitch 

1-10 ALPSIN initial value of blade pitch (deg) 

11-20 DALP 

21-30 NALP 

sweep increment of blade pitch (deg) 

number of points in sweep 

31-40 THRUST initial value of thrust (lbs) 

RECORD 8 (7FI0.0) Rotor Parameters 

1-10 NBLDS number of blades 

11-20 MP number of chordwise panels per blade (1 ~ MP ~ 5) 

21-30 NSGMNT number of blade segments per blade (1 ~ NSGMNT ~ 4) 

31-40 RADIUS reference radi us used to make geometry and parameters nondimensional (ft) 

A-5 
RECORD 9 (7F10.0)· Wake Options 

1-10 REVS number of wake revolutions in discrete wake region 

11-20 NWIPR number of wake increments per revolution (this value will 

be automatically adjusted in the first revolution to provide 

a fine grid). Note: 

(REVS + 1) * NWIPR + 1 < 133 

21-30 IFWAK far wake option 

0.0 analytical far wake influence is not included in induced 

velocity calculations 

1.0 analytical far wake influence is included in induced velocity calculations. 

31-40 PSIMR azimuth increment over which inboard sheet will develop 

into root vortex 

41-50 PSIMT azimuth increment over which outboard sheet will develop 

into tip vortex 

Assure that values are chosen for PSIMR and PSIMT that 

clear the blade1s trailing edge, and that complete vortex 

development within 360 deg. 

51-60 IROLL roll-up iteration option. Active only if outboard sheet 

and either mi d- or inboard sheets are sel ected in RECORD 

10. 

0.0 iteration supressed 

1.0 compatibility of tip vortex circulation and number of 

rolled-up wake filaments will be assured through iteration 

(ICYL4 ) 

RECORD 10 Wake Sheet Filament Indices For Roll-up Specification 

The wake may be divided into three sheet regions, an inboard sheet, a midsheet, and an outboard sheet. The boundi ng fi 1 aments for each sheet 

regi on are speci fi ed by thei r i ndi ces in RECORD 10. Any sheet regi on may 

be omitted by setting its bounding indices to zero. If an inboard or 

outboard sheet is selected, it will develop into a rolled-up vortex over 

the azimuth increment PSIMR or PSIMT, respectively, as given in RECORD 9. 

At least one sheet must be selected. Bounding indices must be sequential 

, A-6 
At least one sheet must be selected. Bounding indices must be sequential 

from root to tip, and must be exclusive to a single region. 

1-10 JS(l,l) index of inboard filament of inboard sheet 

11-20 JS(1,2) index of outboard filament of inboard sheet 

21-30 JS(2,1) index of inboard filament of mid-sheet 

31-40 JS(2,2) index of outboard filament of mid-sheet 

41-50 JS(3,l) index of inboard filament of outboard sheet 

51-60 JS(3,2} index of outboard filament of outboard sheet 

A-7 
INPUT SET 2, BLADE SEGMENT DESCRIPTIONS 

The blade is described by as many as four independent segments. Each 

segment requires the input sequence in INPUT SET 2. NSGMNT segment 

descriptions are required. The segments are numbered from inboard to 

outboard, and the segment descriptions must also be input in inboard to 

outboard sequence. 

RECORD 1 (7F10.0) Segment Options And Parameters 

1-10 NPS 

11-20 NGRID 

1.0 

2.0 

3.0 

4.0 

21-30 XOCREF 

31-40 YSEG( 1) 

41-50 YSEG(2) 

number of spanwise panels on segment (The maximum number of 

panels for the blade is twenty. The minimum for each segment is one.) 

spanwise grid (panel boundary) option for segment 

equal spacing full cosine distribution 

half cosine, density increased inboard 

half cosine, density increased outboard 

non-dimensional chord reference of input quantities 

inboard extent of segment, (ft) 

outboard extent of segment, (ft) 

RECORD 2 (7F10.0) Segment Orientations 

1-10 XTRAN translations (ft) to place segment in desired position 

11-20 YTRAN 

21-30 ZTRAN 

31-40 XROT 

41-50 YROT 

51-60 ZROT 

rotations (deg) to place segment in desired position 

A-8 
RECORD 3 (7FI0.0) Segment Chord Distribution 

1-10 NCHORD number of chord inputs (2 < NCHORD < 24) 

RECORD 4A [, 48 [, 4C [, 4D ]]] (7FI0.0) 

1-10 YCHORD(l) 

11-20 YCHORD(2) 

as requi red 

61-70 YCHORD(]) 

blade stations (ft) at which piecewise linear chord 

distribution is specified 

Conti nue with RECORDS 48, 4C, AND 4D as requi red to input NCHORD 

values of YCHORD. 

RECORD 5A [, 58 [, 5C [, 5D ]]] (7FI0.0) 

1-10 CHORD(l) 

11-20 CHORD(2) 

as required 

61-70 CHORD(]) 

value of blade chord (ft) corresponding to the YCHORD 

stations input in RECORD 4 

Cont i nue wi th RECORDS 58, 5C, and 5D as requi red to input NCHORD 

values of CHORD. 

RECORD 6 (7FI0.0) Segment Twist Distribution 

1-10 NTWIST number of twist inputs (2 < NTWIST < 24) 

A-9 
RECORD 7A [, 7B [, 7C [, 7D ]]] (7F10.0) 

1-10 YTWIST( I} 

11-20 YTWIST(2} 

as required 

61-70 YTWIST(7} 

blade stations (ft) at which piecewise linear twist 

distribution is specified 

Continue with RECORDS 7B, 7C, AND 7D as required to input NTWIST 

values of YTWIST. 

RECORD 8A [, 8B [, 8C [, 8D ]]] (7F10.0) 

1-10 TWIST(l} 

11-20 TWIST(2} 

as requi red 

61-70 TWIST(7} 

value of blade twist increment (deg) corresponding to 

the YTWIST stations input in RECORD 7 

Continue with RECORDS 8B, 8C, and 8D as required to input NTWIST 

values of TWIST. 

RECORD 9 (7F10.0) Segment Planform Offset Distribution 

1-10 NXAOFF number of planform offset inputs (2 < NXAOFF < 24) 

RECORD lOA [, lOB [, 10C [, 10D ]]] (7F10.0) 

1-10 YXAOFF(1} 

11-20 YXAOFF(2} 

blade stations (ft) at which piecewise linear planform 

sweep offset distribution is specified 

A-10 
as required 

61-70 YXAOFF(7) 

Continue with RECORDS lOB, laC, AND 100 as required to input NXAOFF 

values of YXAOFF. 

RECORD 11A [, lIB [, 11C [, 110 ]]] (7F10.0) 

1-10 XAOFF (1) 

11-20 XAOFF(2) 

as required 

61-70 XAOFF (7) 

values of blade planform offset (ft) corresponding to 

the YXAOFF stations input in RECORD 10 

Continue with RECORDS lIB, 11C, AND 110 as required to input NXAOFF 

values of XAOFF. 

RECORD 12 (7F10.0) Segment Airfoil Distribution 

1-10 NAFT number of airfoil region definition inputs, 

(1 < NAFT < 24) 

RECORD 13A, ••. (7F10.0) 

1-10 IDAF (1) 

11-20 YAFT( 1,1) 

21-30 YAFT{1, 2) 

three digit airfoil table identification code 

inboard extent of this airfoil (ft) 

outboard extent of this airfoil (ft) 

Continue with RECORDS 13B, ... as required to input NAFT records. 

A-l1 
INPUT SET 3, Quasi-Steady Mode 

Input set 3 is only required if ISTDY = 1 (Input set 1, Record 5), otherwise it must be omitted. 

RECORD 1 (7FI0.0) Azimuth Sweep 

1-10 PSIRIN initial value of azimuth at which blade 1 will be placed (deg) 

11-20 DPSIR sweep increment (deg) 

21-30 NPSIR number of points in sweep 

RECORD 2 (7F10.0) Shaft Orientation and Wind Profile 

1-10 ALPS1 shaft inclination with respect to wind, positive shaft down 

into wi nd. 

11-20 ALPS2 shaft yaw with respect to wind, positive shaft right into 

wind 

21-30 HO hub height (ft) above ground 

31-40 E exponent of shape function for atmospheric boundary layer 

41-50 ITSTYP tower shadow model option 

0.0 tower shadow not included 

1.0 tower shadow equations used 

2.0 tower shadow table used 

RECORD 3A (7FI0.0) Tower Shadow Velocity Deficit Fraction Equations. 

Input Required If ITSTYP = 1, otherwise omit this 

RECORD. 

For the equation option, the tower shadow velocity deficit fraction is 

defined from 

A-12 
Ts("') = 0, elsewhere 

1-10 TO to 

11-20 TP tp 

21-30 TPO "'0 (deg) 

31-40 TPS "'s (deg) 

41-50 TK k, defines p = 2'1rk/ (2 "'0) 

RECORD 3B (7F10.0) Tower Shadow Velocity Deficit Fraction Table. Input Required If ITSTYP = 2, otherwise omit RECORDS 3B-5B. 

1-10 NXTS 

11-20 NYTS 

number of X-grid entries 

number of V-grid entries 

The table size is based on the combination of NXTS and NYTS subject to the 

constraint 

8 < NXTS+NYTS+(NXTS*NYTS) < 100 

The program stores the table internally in the array TSTAB(I) where table 

members and indices are as follows: 

X-grid locations 

V-grid locations 

velocity deficit 

coefficients 

1 < I < NXTS 

(NXTS+1) < I < (NXTS+NYTS) 

(NXTS+NYTS+1) < I < (NXTS+NYTS+(NXTS*NYTS)) 

The minimum table requires four grid point locations (two each of X-grid 

and Y- grid) and four velocity deficit coefficients. The program will 

interpolate the table for a velocity deficit coefficient for all blade 

collocation point locations and for all wake filament trajectory points. If the program requires a value of the velocity deficit coefficient outside 

the rectangl e speci fi ed by the gri d 1 ocati ons, then it wi 11 be assumed 

that there is no deficit for that point. 

A-13 
RECORD 4A, ... (10X,6F10.0) Tower Shadow Table X-Grid Locations 

11-20 TSTAB(l) values of X-grid locations (ft) 

21-30 TSTAB(2) 

as required 

61-70 TSTAB(7) 

Continue with RECORDS 4B, •.. as required to input NXTS values of 

the X-grid location 

RECORD SA (7F10.0) Tower Shadow Table V-Grid Locations 

1-10 TSTAB(NXTS+1) 

11-20 TSTAB(NXTS+NYTS+1) 

21-30 TSTAB(NXTS+NYTS+2) 

as required 

61-70 TSTAB(NXTS+NYTS+6) 

value of V-grid location (ft) 

velocity deficit coefficients 

Continue with RECORDS 5B, ... as required to input NXTS values of 

velocity deficit coefficients for this V-grid location. 

RECORD 5B, •.. (10X,6F10.0) Velocity Deficit Fraction Coefficients, 

Continued 

11-20 TSTAB(NXTS+NYTS+7) 

21-30 TSTAB(NXTS+NYTS+8) 

as required 

61-70 TSTAB(NXTS+NYTS+12) 

velocity deficit fraction coefficients 

Continue with RECORDS 5C, ••. as required to input NXTS values of 

velocity deficit coefficients for this V-grid location. 

A-14 
RECORD 6 (7FI0.0) Flapping Motion Coefficients 

1-10 NBH number of harmonics in series (0 < NBH < 5) 

11-20 AB(I,I) constant coefficient 

RECORD 7 (7FI0.0) Sine Terms 

1-10 AB(2,1) coefficients of sine terms (deg) 

11-20 AB(3,1) 

as required to input NBH coefficients 

41-50 AB(6,1) 

RECORD 8 (7FI0.0) Cosine Terms 

1-10 AB(2,2) coefficients of cosine terms (deg) 

11-20 AB(3,2) 

as required to input NBH coefficients 

41-50 AB(6,2) 

RECORD 9 (7FI0.0) Cyclic Motion Coefficients 

1-10 NTH number of harmonics in series (0 < NTH < 5) 

11-20 AT(I,I) constant coefficient 

A-I5 
RECORD 10 (7F10.0) Sine Terms 

1-10 AT(2,1) 

11-20 AT( 3,1) 

coefficients of sine terms (deg) 

as required to input NTH coefficients 

41-50 AT( 6,1) 

RECORD 11 (7F10.0) Cosine Terms 

1-10 AT(2,2) coefficients of cosine terms (deg) 

11-20 AT(3,2) 

as required to input NTH coefficients 

41-50 AT(6,2) 

'A-16 
INPUT SET 4, AIRFOIL DATA TABLES 

Two-dimensional bivarient airfoil tables provide lift, drag, and pitching 

moment coeffi ci ent characteri sti cs as functi ons of angl e of attack and 

Reynold's number. Each airfoil data table requires the input sequence in 

INPUT SET 4. The number of tables required depends upon the airfoil 

descriptions specified in INPUT SET(S) 2. At least one table must be 

input. The program is dimensioned to accomodate a maximum of four tables. 

Each table's size is such that any combination of its size parameters 

(RECORD 3 of this set) must meet the constraints 

NACL+NRCL+(NACL*NRCL) < 200 

NACD+NRCD+(NACD*NRCD) < 200 

NACM+NRCM+(NACM*NRCM) < 100 

The program stores each table internally in a column (JAFT) of the arrays 

CxTAB(I,JAFT), where 'x' represents 'L' for a lift table, 'D' for a drag 

table or 'M' for a pitching moment. The storage array column contains the 

table members in the following sequence: 

Reynolds numbers 1 < I < NRCx 

Angles Of Attack (NRCx+l) < I < (NRCx+NACx) 

Aero-Coefficients (NRCx+NACx+l) < I < (NRCx+NACx+(NRCx*NACx)) 

The mi nimum si ze tabl e requi res NACx = 2, and NRCx = 1. In thi s case the 

interpolation on Reynold's number is suppressed and the one value of 

Reynold's number input is for reference only. Also the table must contain 

suficient data so that the angle for zero lift may be determined. 

RECORD 1 (7FI0.0) Number Of Tables, Stall Option 

1-10 NAFT number of tables to be i npu t (1 2. NAFT < 4) 

11-20 IAFTEX analytical stall region option 

0.0 tables will be extrapolated for angles outside of range 

1.0 stalled flat plate model 

2.0 Viterna's stall model 

3.0 CMA stall model 

A-17 
RECORD 2 (F10.0, A62) Airfoil Table ID 

1-10 I DAFT (1 ) 

11-72 TITLE 

RECORD 3 (7F10.0) 

1-10 NRCL 

11-20 NACL 

21-30 NRCD 

31-40 NACD 

41-50 NRC~1 

51-60 NACM 

table identifier (3-digit number) 

descriptive information 

Table Size Parameters 

number of Reynolds numbers in 1 ift tabl e 

number of angles of attack in 1 ift tabl e 

number of Reynolds numbers in drag table 

number of angles of attack in drag table 

number of Reynolds numbers in moment table 

number of angles of attack in moment table 

RECORD 4, ... (7F10.0) Stall Model Parameters 

This record is included to allow convenient access to stall model 

parameters used in the present implementation, and for future refinement of 

these models. The first field in the record is the thickness to chord 

ratio for the airfoil described by the present table. Six subsequent 

fi el ds are avai 1 abl e to pass parameters to the stall model s. The current 

input requirements are dependent upon the selected stall model as shown. 

1-10 AFTOC thickness to chord ratio of airfoil 

For IAFTEX = 0.0 or 1.0, no further input is required for this record. 

For IAFTEX = 2.0, input the blade aspect ratio to be used in the Viterna 

stall model. No further input is required for this record. 

11-20 AR 

A-18 
For IAFTEX = 3.0, input the stall region delimiters used in the CMA stall 

model. 

11-20 ALPR angle of attack (deg) at which table coefficients 

recover to and follow the analytical model 

21-30 CL45 lift coefficient at 45 degrees 

31-40 CD45 drag coefficient at 45 degrees 

41-50 CL90 lift coefficient at 90 degrees 

51-60 CD90 drag coefficient at 90 degrees 

61-70 BPR base pressure relief factor which will multiply 

coefficients at angles above ALPR 

RECORD 5A, •.• (10X,6F10) Lift Table Reynolds Numbers 

11-20 CLTAB(1} 

21-30 CLTAB(2} 

values of Reynolds number, ratioed to 106 

as required 

61-70 CLTAB(6} 

Cont i nue with RECORDS 5B, ... as requ i red to input NRCL values of 

Reynolds number. 

RECORD 6A (7F10) Angle Of Attack And Lift Coefficients 

1-10 CLTAB(NRCL+1} 

11-20 CLTAB(NRCL+NACL+1} 

21-30 CLTAB(NRCL+NACL+2} 

as required 

61-70 CLTAB(NRCL+NACL+6} 

angle of attack (deg) 

lift coefficients for this angle of attack 

Cont i nue wi th RECORDS 6B, ... as requ i red to input NRCL values of 

lift coefficient for this angle of attack. 

A-19 
RECORD 6B (10X,6F10) Lift Coefficients, Continued 

11-20 CLTAB(NRCL+NACL+7) 

21-30 CLTAB(NRCL+NACL+8) 

as required 

61-70 CLTAB(NRCL+NACL+12) 

lift coefficients for this angle of attack, 

continued 

Continue with RECORDS 6C, ... as required to input NRCL values of 

lift coefficient for this angle of attack. 

Repeat RECORDS 6 format for next angle of attack and corresponding 

lift coefficients, until NACL angles of attack have been input. 

RECORD 7A, ... (10X,6F10) Drag Table Reynolds Numbers 

11-20 CDTAB( 1) 

21-30 CDTAB(2) 

values of Reynolds number, ratioed to 106 

as required 

61-70 CDTAB(6) 

Continue with RECORDS 7B, .•. as required to input NRCD values of 

Reynolds number. 

RECORD 8A (7F10) Angle Of Attack And Drag Coefficients 

1-10 CDTAB(NRCD+1) 

11-20 CDTAB(NRCD+NACD+1) 

21-30 CDTAB(NRCD+NACD+2) 

angle of attack (deg) 

drag coefficients for this angle of attack 

A-20 
as required 

61-70 CDTAB{NRCD+NACD+6) 

Continue with RECORDS 8B, .•• as required to input NRCD values of 

drag coefficient for this angle of attack. 

RECORD 8B (10X,6F10) Drag Coefficients, Continued 

11-20 CDTAB{NRCD+NACD+7) 

21-30 CDTAB{NRCD+NACD+8) 

as required 

61-70 CDTAB{NRCD+NACD+12) 

drag coefficients for this angle of attack, 

continued 

Continue with RECORDS BC, ••• as required to input NRCD values of 

drag coefficient for this angle of attack. 

Repeat RECORDS 8 format for next angle of attack and corresponding 

drag coefficients, until NACD angles of attack have been input. 

RECORD 9A, •.. (10X,6F10) Moment Table Reynolds Numbers 

11-20 CMTAB(1) 

21-30 CMTAB(2) 

values of Reynolds number, ratioed to 106 

as required 

61-70 CMTAB(6) 

Continue with RECORDS 9B, ... as required to input NRCM values of 

Reynolds number. 

RECORD lOA (7F10) Angle of Attack And Moment Coefficients 

1-10 CMTAB(NRCM+1) 

11-20 CMTAB(NRCM+NACM+1) 

angle of attack (deg) 

moment coefficients for this angle of attack 

A-21 
21-30 CMTAB(NRCM+NACM+2) 

as required 

61-70 CMTAB(NRCM+NACM+6) 

Continue with RECORDS lOB, •.• as required to input NRCM values of 

moment coefficient for this angle of attack. 

RECORD lOB (10X,6F10) Moment Coefficients, Continued 

11-20 CMTAB(NRCM+NACM+7) 

21-30 CMTAB(NRCM+NACM+8) 

as required 

61-70 CMTAB(NRCM+NACM+12) 

moment coefficients for this angle of attack, 

continued 

Continue with RECORDS 10C, ... as required to input NRCM values of 

moment coefficient for this angle of attack. 

Repeat RECORDS 10 format for next angle of attack and corresponding 

moment coefficients, until NACM angles of attack have been input. 

A-22 
APPENDIX B 

PROGRAM AND INSTALLATION NOTES 
PROGRAM AND INSTALLATION NOTES 

The Program LSWT source code is written in FORTRAN and should be installable on most host systems with only minor modifications for compatibility with system dependent interfaces. Program LSWT was developed and is 

currently implemented under the Microsoft FORTRAN compiler, Version 3.2, 

for the MS-DOS Operati ng System on the IBM PC cl ass of microcomputers. 

Language extensions have been avoided so that the program can be installed 

using any FORTRAN compiler designed to the 166 or 177 standard. Program 

LSWT is computationally intensive and therefore fully expanded hardware including a floating point accelerator is highly recommended. 

The LSWT source code is maintained in eight files or modules of functionally related subprogram units. Table B-1 describes each module and 

lists its subprograms. This grouping arrangement and file sizing are 

recommended for convenient program maintenance and compatibility with editors. A complete listing of Program LSWT is provided as Appendix C. 

SYSTEM INTERFACE 

Source module LSWT07 contains all code required to interface Program 

LSWT to the host system. This module is presently designed toward a foreground executi on envi ronment as typi ca lly found on a s i ngl e-user mi crocomputer system. All files are managed from within the program, and particular file specifications for standard input and output are prompted from 

and supplied by the user at execution time. To accomplish this, subrouti nes CLRSCN and LOCATE are provi ded for con sol e screen handl i ng. these 

use standard escape sequences for ANSI compatible terminal devices. Note 

that the use of thi s capabi 1 i ty on an IBM PC type computer requi res the 

ANSI.SYS device driver be installed when the operating system is booted. 

For other termi nal types the screen handl i ng routi nes must be modifi ed 

appropriately. For Program LSWT installation in a batch type environment 

these interfaces may be compl etely el imi nated, provi ded that the program 

B-1 
Module/Subroutine 

LSWT01.FOR 

MAIN 

INTLS 

EXINT 

EXBLD 

EXAIC 

EXSLV 

BVTINT 

ZROLFT 

LSWT02.FOR 

AICDLS 

AICDS 

AICDW 

AICDSW 

GSITER 

VLINE 

VCYLN 

LSWT03.FOR 

GRID 

COLCRD 

RFSURF 

AFTLOC 

LINTRP 

ROTATE 

PSURF 

VPANG 

LSWT04.FOR 

PREWAK 

FILMNT 

FILROL 

PWAKE 

WAKPRM 

WAKUPD 

ROLNDX 

TABLE B-1. LSWT PROGRAM MODULE SUMMARY 

Function 

Executives and Utilities 

Main Program and Executive 

Initialize Lift Curve Slopes Initialize Program 

Generate Reference Blade Geometry 

Aerodynamic Influence Coefficients 

Lifting Surface Solution 

Bi-Varient Table Interpolation 

Determine Zero Lift LIne From Airfoil Tables 

Lifting Surface Core Analysis 

Calculate 2-D Aerodynamic Influence Coefficients 

Calculate Lifting Surface AIC's 

Calculate Wake AIC's 

Assemble AIC Matrix From Components 

Solve Linear Equations By Gauss-Seidel Iteration 

Calculate Velocity Induced By Line Vortex 

Calculate Velocity Induced By Vortex Cylinder 

Blade And Rotor Geometry 

Generate Blade Surface Grid System 

Calculate Location Of Collocation Points 

Develop Reference Blade Surface Geometry Determine Airfoil Table Indices At Solution Stations 

Perform Linear Interpolation Of Geometry Parameters 

Perform Rotation Transformation Of Coordinates 

Place Reference Blade At Target Position 

Calculates The Sine Of Angle Between Two Vectors 

Prescribed Wake Geometry 

Generate Prescribed Wake 

Calculate Wake Filament Coordinates 

Calculate Rolled-Up Wake Filament Coordinates 

Position Reference Wake Coordinates 

Determine Prescribed Wake Parameters 

Update Wake Parameters 

Update Wake Sheet Indices For Roll-Up Iteration 

B-2 
Module/Subroutine 

LSWTOS.FOR 

READIN 

READAF 

REDTAB 

LSWT06.FOR 

oun 

OUT2 

OUT3 

OUT4 

OUTS 

OUT6 

OUT8 

HEADER 

APPEND 

LSWT07.FOR 

IOINIT 

IOFNSH 

TRACE 

TIMER 

LOCATE 

CLRSCN 

LSWT08.FOR 

WNDPRO 

FLPVEL 

NRMLBC 

CIRPRM 

BEVEL 

CWAVG 

BEALPH 

AFCOEF 

AFTEXT 

AEROPF 

TABLE B-1 (CONTINUED) 

Function 

Program Input 

Main Input Subroutine 

Set Up To Read Airfoil Tables 

Read Tables 

Program Output Reports 

Report Reference Blade Surface Coordinates 

Report Reference Blade's Wake Coordinates 

Report Blade Element Aerodynamic Characteristics 

Report Blade Performance Summary 

Report Rotor Performance Summary 

Report Wake Parameters And Work State 

Report Record Image Of Input File 

Write Banner And Case Information On Report Pages Append IOBUFFER File To Standard Output File 

System Interface 

Initialze I/O System Close I/O System 

Generate Program Position And Timing Markers 

Interface To System Clock 

Position Console Display Cursor 

Clear Console Display 

Aerodynamic Calculations 

Determine Wind Profile 

Calculate Blade Flapping Velocity 

Impose Normalwash Boundary Condition 

Calculate Circulation Parameters 

Calculate Blade Element Velocities 

Calculate Chordwise Parameter Average Calculate Blade Element Angles Of Attack 

Calculate Airfoil Aerodynamic Coefficients 

Calculate Airfoil Post Stall Characteristics 

Calculate Aerodynamic Performance 

B-3 
file system (FORTRAN Unit Numbers) can be associated with external devices 

or files on external devices, and managed from the operating system's 

command language. 

Program timing information is available from subroutine TIMER. Within 

TIMER, a call is made to system dependent subroutine SYSTIM which reads the 

system clock and returns the time in hours, mi nutes, seconds, and hundredths of seconds. TIMER calculates lapsed time and reports it to the 

output stream. The SYSTIM interface subroutine (or a dummy routine) must 

be provi ded for the parti cul ar host system. Thi sis the only non-FORTRAN 

code required by Program LSWT. An implementation of SYSTIM written in 

assembly language for the IBM PC family of processors is included in 

Appendix C. 

LSWT FILE SYSTEM 

The file system is initialized in subroutine IOINIT where default unit 

numbers are assigned to integer variable unit pointers. These variable 

poi nters are passed to the subprograms requi ri ng them through a common 

block. All program references to I/O units are made to these pointers, 

thus the actual un; t number ass; gnment is only requi red in IOINIT. The 

variables used for the I/O units and the function of each file are outlined 

in Table B-2. 

IOUI is associated with the system console device for both input and 

output. The remai ni ng units fall into two categori es. IOU5 through IOU8 

are the usual sequential, formatted I/O files. IOUIO through IOU13 are 

auxil i ary mass storage fi 1 es requi red for temporary retenti on of 1 arge 

arrays during program execution. These files are direct access and unformatted. The record lengths and formulas for calculation of actual space 

requirements for these files is included in the commented listing of 

IOINIT. The use of this file structure minimizes program internal storage 

requirements by requiring, for instance, only one column of the influence 

coefficient matrix of the linear equation system to be resident at any 

time. 

B-4 
TABLE B-2. FILE SYSTEM DESCRIPTION 

Unit 

IOUI 

IOU5 

IOU6 

IOU7 

IOU8 

IOUIO 

IOUll 

IOUl2 

IOU13 

COMMON BLOCK STRUCTURE 

Use 

Console 

Standard Input 

Standard Output 

Trace File (Not An Actual File, Only Points 

to Another Output Unit) 

Temporary Output Buffer 

Mass Storage File For Blade Surface AIC's 

Mass Storage File For Wake AIC's 

Mass Storage File For Combined AIC Array 

Mass Storage File For Wake Coordinates 

Program LSWT common blocks are maintained in individual files and combined with the source code through INCLUDE statements at compile time. The 

format of the file names is the actual name of a particular block with the 

extension '.CMN' appended. This insures that common variables share the 

same name and dimensions across all program units. Also, rather than listing the included common files directly in a particular subprogram, a single 

include file for each subprogram is used, and this file lists the individual common files. The naming convention for these list files uses the subprogram name with the extension '.CML' appended. The common block file 

names and the common list file names along with their contents are given in 

Table B-3 and Table 8-4, respectively. 

8-5 
TABLE B-3. COMMON BLOCK FILES 

FILE: 'AFTABL.CMN' 

FILE: 

FILE: 

FILE: 

COMMON/ AFTABL / 

1 

2 

3 

4 

5 

'ALSLP.CMN' 

NAFT, IOAFT(4), AFTOC(4), IAFTEX, 

STP1(4), STP2(4), STP3(4), 

STP4(4), STP5(4), STP6(4), 

CLTAB(200,4), NRCL(4), NACL(4), 

COTAB(200,4), NRCO(4), NACO(4), 

CMTAB(100,4), NRCM(4), NACM(4) 

COMMON/ ALSLP / ALS(20), ALSNEW(20), ALSOLO(20) 

'BELOAO.CMN' 

COMMON/ BELOAO 

1 

2 

3 

'BLOELE.CMN' 

COMMON/ BLOELE 

1 

2 

3 

4 

5 

/ DFX (20), 

OFZ(20) , OQ(20) , 

OPM(20) 

/ XCLE(20) , 

OBES(20), 

CHOCGL<20> , JTAB(20,2), 

CLT<20>, 

COS(20) 

OFXI(20) , OFZI(20), 

OQI (20), 

YCG(20), 

CLAMLE(20) , BETAL(20) , TOC (20), 

COT< 20> , 

OFXP(20) , OFZP(20) , OQP (20), 

RBE(20) , CLAMQC (20), 

AFTWF(20) , RE(20) , 

CMT<20> , 

FILE: 'BLLOAD.CMN' 

COMMON/ BLLOAO / CTRB, CQRB, CTWB, CPWB, BTHRST, BTORQ, 

1 BTORQI, BTORQP, BPWR, BPWRP, BPWRI, BPMOMT 

FILE: 'CALPHA.CMN' 

COMMON/ CALPHA / ALPHAG(20), 

1 ALPHAN(20), 

2 TWSTCG(20) 

FILE: 'CASE.CMN' 

ALPHAE(20) , 

ALPHAI<20> , 

ALPHAW(20), 

AZLLC(20), 

COMMON/ CASE / IPOINT, ALPHAO, VWOD, IVOIM, VWFAC, PSIRO, 

1 CASEIO 

B-6 
TABLE B-3 (CONTINUED) 

FILE: 'CCIRC.CMN' 

COMMON! CCIRC ! CIRC(100), 

1 CIRCR(100), 

2 TECF, 

FILE: 'CDLS.CMN' 

COMMON! CDLS ! DLS(2S) 

FILE: 'CGRID.CMN' 

DCIRC(100) , BCIRC(20) , AKM(6), ACIRC (100), 

GO(20) , 

XKM(S) 

COMMON! CGRID ! NGRID(4), XG(6), YG(24), XCG(S) 

FILE: 'CIPRT. CMN' 

COMMON! CIPRT ! IPRT1, IPRT2, IPRT3, IPRT4, IPRTS, IPRT6, 

1 IPRT7, IPRT8 

FILE: 'CONF IG. CMN' 

COMMON! 

1 

2 

3 

4 

S 

6 

CONFIG ! XOCREF(4), 

YCHORD(24), 

YTWIST(24) , YXAOFF(24), 

YAFT(24,2) , YTRAN(4), 

YROT(4) , 

FILE: 'CONSTS.CMN ' 

COMMON! CONSTS ! PI, RPD 

FILE: 'CONTRL.CMN ' 

YSEG(4,2), 

CHORD(24), 

TWIST(24) , XAOFF(24), 

IDAF(24), 

ZTRAN(4), 

ZROT(4) 

JCHORD(4,2), 

JTWIST<4,2) , 

JXAOFF(4,2), 

JAFT(4,2), 

XTRAN(4), 

XROT(4), 

COMMON! CONTRL ! TOL1, TOL2, TOL3, ICYL1, ICYL2, ICYL3, 

1 ICYL4 

FILE: 'CTCON.CMN ' 

COMMON! CTCON ! CTRIN, CTROUT, CTRUPD 

B-7 
TABLE B-3 (CONTINUED) 

FILE: 'CTIMER.CMN ' 

COMMON/ CTIMER / HO, 

1 51, 

MO, 

D1 

FILE: I CVLCTY. CMN I 

FILE: 

COMMON/ 

1 

2 

3 

4 

CVLCTY / VF51(S,20), 

VF51M(20), 

VI1 (S,20>, 

VI1M(20) , 

VREL<20> , 

'CWIND.CMN ' 

COMMON/ CWIND / ALPS1, ALPS2, 

so, DO, 

VFS2(S,20> , VFS2M(20) , VI2(S,20> , VI2M(20) , 

VIND(20) , 

HO, VWO, 

1 ITSTYP, TSTAB(100), NXTS, 

2 TO, TP, TPO, TPS, 

3 AB(S,2), AT<S,2) 

FILE: 'GVINT.CMN ' 

COMMON/ GVINT / XA, VA, lA, XB, 

1 XC, YC, lC, AN1C, 

2 AT1C, AT2C, AnC 

FILE: I !FLAGS. CMN I 

COMMON/ IFLAG5 / ISTDY, IWFLAG, LSFLAG, IRFLAG 

FILE: 'NMWSH.CMN ' 

COMMON/ NMWSH / NRMWSH(100) 

FILE: 'PARMS.CMN ' 

COMMON/ PARMS / RADIUS, OMEGA, 

FILE: 'PNLCRD.CMN ' 

COMMON/ PNLCRD / XS(6,24), 

1 XCOL(S,20), 

B-8 

OMEGAR, RHO, 

YS(6,24), 

YCOL<S,20> , 

H1, M1, 

VFS3(S,20> , VFS3M(20), 

VI3(S,20> , VI3M(20) , 

QREL<20> 

E, 

NYTS, 

TK, 

VB, lB, 

AN2C, AN3C, 

AMU 

lS(6,24), 

lCOL<S,20) 
TABLE B-3 (CONTINUED) 

FILE: 'PNLNDX.CMN' 

COMMON/ PNLNDX / MP, NP, NPANEL, 

1 MP1, NP1, NPNLSQ, 

2 NSGMNT, JGLIM(4,2), JCGLIM(4,2), 

3 NPS(4), NBLDS 

FILE: 'PNLVEC.CMN' 

COMMON/ PNLVEC / AN1 (5,20>, AN2(S,20> , AN3(S,20> , 

1 AT1(S,20), AT2(S,20> , AT3(S,20> , 2 AQC1(20) , AQC2(20) , AQC3(20) 

FILE: 'REFSUR.CMN' 

COMMON/ REF SUR / XSR(6,24), YSR(6,24), ZSR(6,24), 

1 XCOLR(S,20> , YCOLR(S,20> , ZCOLR(S,20> , 2 AN1R(S,20>, AN2R(S,20> , AN3R(S,20> , 

3 AT1 R(S,20>, AT2R(S,20), AT3R(S,20> 

FILE: 'RTLOAD.CMN' 

COMMON/ RTLOAD / CTRR, CQRR, CTWR, CPWR, RTHRST, RTORQ, 

1 RTORQP, RTORQI, RPWR, RPWRP, RPWRI, CTR, 

2 CQR, CTW, CPW, THRST, TORQ, TORQP, 

3 TORQI, PWR, PWRP, PWRI, RPMOMT, PMOMT 

FILE: 'SWEEP.CMN' 

COMMON/ SWEEP / ALPS IN, DALP, NALP, VWOIN, DVWO, NVWO, 

1 PSIRIN, DPSIR, NPSIR 

FILE: 'UNITS.CMN' 

COMMON/ UNITS / IOU1, IOUS, IOU6, IOU?, IOUB, 

1 IOU10, IOU11, IOU12, IOU13 

FILE: 'WAKCRD.CMN' 

COMMON/ WAKCRD / XW(133,24), YW(133,24), ZW(133,24) 

B-9 
TABLE B-3 (CONCLUDED) 

FILE: 'WAKNDX.CMN' 

COMMON/ WAKNDX / REVS, NWIPR, NWI, 

1 KMAX(24), IFWAK, JS(3,2), 

2 PSIMR, PSIMT, IROLL 

FILE: 'WRATES.CMN' 

COMMON/ WRATES / AKZW, AKZI, AKZ, AKR, A, AKB, 

1 CTRW, AKZO, ALAMO, AKRO, VAXB, VNUB 

B-10 
TABLE B-4. COMMON BLOCK LIST FILES 

FILE: 'AEROPF.CML' 

$INCLUDE: 'BELOAD.CMN' 

$INCLUDE: 'BLDELE.CMN' 

$INCLUDE: 'BLLOAD.CMN' 

$INCLUDE: 'CALPHA.CMN' 

$INCLUDE: 'CONSTS.CMN' 

$INCLUDE: 'CTCON.CMN' 

$INCLUDE: 'CVLCTY.CMN' 

$INCLUDE: 'CWIND.CMN' 

$INCLUDE: 'IFLAGS.CMN' 

$INCLUDE: 'PARMS.CMN' 

$INCLUDE: 'PNLNDX.CMN' 

$INCLUDE: 'RTLOAD.CMN' 

$INCLUDE: 'UNITS.CMN' 

FILE: 'AFCOEF.CML' 

$INCLUDE: 'AFTABL.CMN' 

$INCLUDE: 'BLDELE.CMN' 

$INCLUDE: 'CCIRC.CMN' 

$INCLUDE: 'CONSTS.CMN' 

FILE: 'A FTEXT. CML' 

$INCLUDE: 'AFTABL.CMN' 

$INCLUDE: 'CALPHA.CMN' 

$INCLUDE: 'CONSTS.CMN' 

FILE: 'AFTLOC.CML' 

$INCLUDE: 'AFTABL.CMN' 

$INCLUDE: 'CONFIG.CMN' 

FILE: 'AICDLS. CML' 

$INCLUDE: 'CDLS.CMN' 

$INCLUDE: 'CGRID.CMN' 

$INCLUDE: 'CONSTS.CMN' 

$INCLUDE: 'PNLNDX.CMN' 

$INCLUDE: 'CCIRC.CMN' 

B-11 
FILE: 'AICDS. CML' 

$INCLUDE: 'CONSTS.CMN' 

$INCLUDE: 'GVINT.CMN' 

$INCLUDE: 'PNLCRD.CMN' 

$INCLUDE: 'PNLNDX.CMN' 

$INCLUDE: 'PNLVEC.CMN' 

$INCLUDE: 'UNITS.CMN' 

FILE: 'AICDSW.CML' 

$INCLUDE: 'ALSLP.CMN' 

$INCLUDE: 'BLDELE.CMN' 

$INCLUDE: 'CCIRC.CMN' 

$INCLUDE: 'CDLS.CMN' 

$INCLUDE: 'CONSTS.CMN' 

$INCLUDE: 'PARMS.CMN' 

$INCLUDE: 'PNLNDX.CMN' 

$INCLUDE: 'UNITS.CMN' 

FILE: 'AICDW. CML' 

$INCLUDE: 'CONSTS.CMN' 

$INCLUDE: 'GVINT.CMN' 

$INCLUDE: 'PNLCRD.CMN' 

$INCLUDE: 'PNLNDX.CMN' 

$INCLUDE: 'PNLVEC.CMN' 

$INCLUDE: 'UNITS.CMN' 

$INCLUDE: 'WAKCRD.CMN' 

$INCLUDE: 'WAKNDX.CMN' 

FILE: 'BEALPH. CML' 

$INCLUDE: 'ALSLP.CMN' 

$INCLUDE: 'BLDELE.CMN' 

$INCLUDE: 'CALPHA.CMN' 

$INCLUDE: 'CCIRC.CMN' 

$INCLUDE: 'CONSTS.CMN' 

$INCLUDE: 'CONTRL.CMN' 

$INCLUDE: 'CVLCTY. CMN' 

$INCLUDE: 'IFLAGS.CMN' 

$INCLUDE: 'PARMS.CMN' 

$INCLUDE: 'PNLNDX.CMN' 

TABLE B-4 (CONTINUED) 

B-12 
FILE: 'BEVEL.CML' 

$INCLUDE: 'ALSLP.CMN' 

$INCLUDE: 'BLDELE.CMN' 

$INCLUDE: 'CCIRC.CMN' 

$INCLUDE: 'CDLS.CMN' 

$INCLUDE: 'CONSTS.CMN' 

$INCLUDE: 'CVLCTY.CMN' 

$INCLUDE: 'PARMS.CMN' 

$INCLUDE: 'PNLNDX.CMN' 

$INCLUDE: 'PNLVEC.CMN' 

$INCLUDE: 'UNITS.CMN' 

FILE: 'CIRPRM.CML' 

$INCLUDE: 'CCIRC. CMN' 

$INCLUDE: 'PNLNDX.CMN' 

FILE: 'CLRSCN. CML' 

$INCLUDE: 'UNITS.CMN' 

FILE: 'COLCRD.CML' 

$INCLUDE: 'CCIRC.CMN' 

$INCLUDE: 'CGRID.CMN' 

$INCLUDE: 'CONSTS.CMN' 

$INCLUDE: 'PNLNDX.CMN' 

$INCLUDE: 'UNITS.CMN' 

FILE: 'CWAVG. CML' 

$INCLUDE: 'CGRID.CMN' 

$INCLUDE: 'PNLNDX.CMN' 

FILE: 'EXAIC.CML' 

$INCLUDE: 'CIPRT.CMN' 

$INCLUDE: 'CONSTS.CMN' 

$INCLUDE: 'IFLAGS.CMN' 

$INCLUDE: 'PNLNDX.CMN' 

TABLE B-4 (CONTINUED) 

8-13 
FILE: 'EXBLD.CML' 

$INCLUDE: 'CIPRT.CMN' 

FILE: 'EXINI.CML' 

$INCLUDE: 'CONSTS.CMN' 

FILE: 'EXINT.CML' 

$INCLUDE: 'CIPRT.CMN' 

$INCLUDE: 'CONSTS.CMN' 

FILE: 'EXSLV.CML' 

$INCLUDE: 'CASE.CMN' 

$INCLUDE: 'CCIRC.CMN' 

$INCLUDE: 'CIPRT.CMN' 

$INCLUDE: 'CONTRL.CMN' 

$INCLUDE: 'IFLAGS.CMN' 

$INCLUDE: 'PNLNDX.CMN' 

$INCLUDE: 'UNITS.CMN' 

$INCLUDE: 'WAKNDX.CMN' 

FILE: 'FILMNT.CML' 

$INCLUDE: 'CIPRT.CMN' 

$INCLUDE: 'CONSTS.CMN' 

$INCLUDE: 'CWIND.CMN' 

$INCLUDE: 'IFLAGS.CMN' 

$INCLUDE: 'PNLCRD.CMN' 

$INCLUDE: 'PNLNDX.CMN' 

$INCLUDE: 'UNITS.CMN' 

$INCLUDE: 'WAKCRD.CMN' 

$INCLUDE: 'WAKNDX.CMN' 

$INCLUDE: 'WRATES.CMN' 

TABLE B-4 (CONTINUED) 

B-14 
FILE: 'FILROL.CML' 

$INCLUDE: 'CIPRT.CMN' 

$INCLUDE: 'CONSTS.CMN' 

$INCLUDE: 'PNLCRD.CMN' 

$INCLUDE: 'PNLNDX.CMN' 

$INCLUDE: 'UNITS.CMN' 

$INCLUDE: 'WAKCRD.CMN' 

$INCLUDE: 'WAKNDX.CMN' 

FILE: 'FLPVEL.CML' 

$INCLUDE: 'CWIND.CMN' 

$INCLUdE: 'PARMS.CMN' 

FILE: 'GRID.CML' 

$INCLUDE: 'CGRID. CMN' 

$INCLUDE: 'CONFIG.CMN' 

$INCLUDE: 'CONSTS.CMN' 

$INCLUDE: 'PNLNDX.CMN' 

FILE: 'GSITER.CML' 

$INCLUDE: 'CCIRC.CMN' 

$INCLUDE: 'CONTRL.CMN' 

$INCLUDE: 'NMWSH.CMN' 

$INCLUDE: 'PARMS.CMN' 

$INCLUDE: 'UNITS.CMN' 

FILE: 'HEADER. CML' 

$INCLUDE: 'CASE.CMN' 

FILE: 'INTLS.CML' 

$INCLUDE: 'AFTABL.CMN' 

$INCLUDE: 'ALSLP.CMN' 

$INCLUDE: 'BLDELE.CMN' 

$INCLUDE: 'CALPHA.CMN' 

$INCLUDE: 'CONSTS.CMN' 

$INCLUDE: 'CWIND.CMN' 

$INCLUDE: 'PARMS.CMN' 

$INCLUDE: 'PNLNDX.CMN' 

TABLE B-4 (CONTINUED) 

8-15 
FILE: 'IOFNSH.CML ' 

$INCLUDE: 'UNITS.CMN ' 

FILE: 'IOINIT.CML ' 

$INCLUDE: 'UNITS.CMN ' 

FILE: 'LOCATE.CML ' 

$INCLUDE: 'UNITS.CMN ' 

FILE: 'MAIN.CML' 

$INCLUDE: 'CASE.CMN ' 

$INCLUDE: 'CCIRC.CMN ' $INCLUDE: 'CIPRT.CMN ' $INCLUDE: 'CONSTS.CMN ' $INCLUDE: 'CONTRL.CMN ' 

$INCLUDE: 'CWIND.CMN ' 

$INCLUDE: 'IFLAGS.CMN ' $INCLUDE: 'PNLNDX.CMN ' 

$INCLUDE: 'SWEEP.CMN ' 

$INCLUDE: 'UNITS.CMN ' 

FILE: I NRMLBC. CML I 

$INCLUDE: 'CCIRC.CMN ' 

$INCLUDE: 'CVLCTY.CMN ' 

$INCLUDE: 'IFLAGS.CMN ' 

$INCLUDE: 'NMWSH.CMN ' $INCLUDE: 'PARMS.CMN ' 

$INCLUDE: 'PNLCRD.CMN ' $INCLUDE: 'PNLNDX.CMN ' 

$INCLUDE: 'PNLVEC.CMN ' 

$INCLUDE: 'UNITS.CMN ' 

FILE: 'OUT1.CML' 

$INCLUDE: 'tONSTS.CMN ' 

$INCLUDE: 'PNLCRD.CMN ' $INCLUDE: 'PNLNDX.CMN ' 

$INCLUDE: 'UNITS.CMN ' 

TABLE B-4 (CONTINUED) 

B-16 
FILE: 'OUT2.CML' 

$INCLUDE: 'CONSTS.CMN' 

$INCLUDE: 'PNLNDX.CMN' 

$INCLUDE: 'UNITS.CMN' 

$INCLUDE: 'WAKCRD.CMN' 

$INCLUDE: 'WAKNDX.CMN' 

FILE: 'OUT3.CML' 

$INCLUDE: 'ALSLP.CMN' 

$INCLUDE: 'BELOAD.CMN' 

$INCLUDE: 'BLDELE.CMN' 

$INCLUDE: 'CALPHA.CMN' 

$INCLUDE: 'CCIRC.CMN' 

$INCLUDE: 'CONSTS.CMN' 

$INCLUDE: 'CVLCTY.CMN' 

$INCLUDE: 'PARMS.CMN' 

$INCLUDE: 'PNLNDX. CMN' 

FILE: 'OUT4. CML' 

$INCLUDE: 'BLLOAD.CMN' 

$INCLUDE: 'CONSTS.CMN' 

FILE: 'OUTS.CML' 

$INCLUDE: 'CONSTS.CMN' 

$INCLUDE: 'IFLAGS.CMN' 

$INCLUDE: 'RTLOAD.CMN' 

$INCLUDE: 'UNITS.CMN' 

FILE: 'OUT6. CML' 

$INCLUDE: 'UNITS.CMN' 

$INCLUDE: 'WRATES.CMN' 

FILE: 'OUT8. CML ' 

$INCLUDE: 'UNITS.CMN' 

TABLE B-4 (CONTINUED) 

B-17 
FILE: 'PREWAK.CML' 

$INCLUDE: 'CIPRT.CMN' 

$INCLUDE: 'CONSTS.CMN' 

$INCLUDE: 'PNLNDX.CMN' 

$INCLUDE: 'UNITS.CMN' 

$INCLUDE: 'WAKNDX.CMN' 

FILE: 'PSURF. CML' 

$INCLUDE: 'BLDELE.CMN' 

$INCLUDE: 'CALPHA.CMN' 

$INCLUDE: 'CONFIG.CMN' 

$INCLUDE: 'CONSTS.CMN' 

$INCLUDE: 'CWIND.CMN' 

$INCLUDE: 'IFLAGS.CMN' 

$INCLUDE: 'PNLCRD.CMN' 

$INCLUDE: 'PNLNDX.CMN' 

$INCLUDE: 'PNLVEC.CMN' 

$INCLUDE: 'REFSUR.CMN' 

$INCLUDE: 'UNITS.CMN' 

FILE: 'PWAKE.CML' 

$INCLUDE: 'CONSTS.CMN' 

$INCLUDE: 'PNLNDX.CMN' 

$INCLUDE: 'UNITS.CMN' 

$INCLUDE: 'WAKCRD.CMN' 

$INCLUDE: 'WAKNDX.CMN' 

ILE: 'READAF.CML' 

$INCLUDE: 'AFTABL.CMN' 

$INCLUDE: 'UNITS.CMN' 

TABLE B-4 (CONTINUED) 

B-18 
FILE: 'READIN.CML' 

$INCLUDE: 'CASE.CMN' 

$INCLUDE: 'CGRID.CMN' 

$INCLUDE: 'CIPRT.CMN' 

$INCLUDE: 'CONFIG.CMN' 

$INCLUDE: 'CONSTS.CMN' 

$INCLUDE: 'CONTRL.CMN' 

$INCLUDE: 'CTCON.CMN' 

$INCLUDE: 'CWIND.CMN' 

$INCLUDE: 'IFLAGS.CMN' 

$INCLUDE: 'PARMS.CMN' 

$INCLUDE: 'PNLNDX.CMN' 

$INCLUDE: 'SWEEP.CMN' 

$INCLUDE: 'UNITS.CMN' 

$INCLUDE: 'WAKNDX.CMN' 

FILE: 'REDTAB.CML' 

$INCLUDE: 'UNITS.CMN' 

FILE: 'RFSURF.CML' 

$INCLUDE: 'AFTABL.CMN' 

$INCLUDE: 'BLDELE.CMN' 

$INCLUDE: 'CALPHA.CMN' 

$INCLUDE: 'CGRID.CMN' 

$INCLUDE: 'CONFIG.CMN' 

$INCLUDE: 'CONSTS.CMN' 

$INCLUDE: 'CWIND.CMN' 

$INCLUDE: 'IFLAGS.CMN' 

$INCLUDE: 'PARMS.CMN' 

$INCLUDE: 'PNLNDX.CMN' 

$INCLUDE: 'PNLVEC.CMN' 

$INCLUDE: 'REFSUR.CMN' 

$INCLUDE: 'UNITS.CMN' 

FILE: 'ROLNDX.CML' 

$INCLUDE: 'CCIRC.CMN' 

$INCLUDE: 'CONTRL.CMN' 

$INCLUDE: 'IFLAGS.CMN' 

$INCLUDE: 'PNLNDX.CMN' 

$INCLUDE: 'WAKNDX.CMN' 

TABLE B~4 (CONTINUED) 

B-19 
FILE: 'TIMER.CML' 

SINCLUDE: 'CTIMER.CMN' 

SINCLUDE: 'UNITS.CMN' 

FILE: 'TRACE.CML' 

SINCLUDE: 'CIPRT.CMN' 

SINCLUDE: 'UNITS.CMN' 

FILE: 'VCYLN.CML' 

SINCLUDE: 'CONSTS.CMN' 

SINCLUDE: 'GVINT.CMN' 

SINCLUDE: 'WRATES.CMN' 

FILE: 'VLINE.CML' 

SINCLUDE: 'CONSTS.CMN' 

SINCLUDE: 'GVINT.CMN' 

FILE: 'WAKPRM.CML' 

SINCLUDE:FILE: 'CTCON.CMN' 

SINCLUdE: 'CWIND.CMN' 

SINCLUDE: 'PARMS.CMN' 

SINCLUDE: 'WRATES.CMN' 

FILE: 'WAKUPD.CML' 

SINCLUDE: 'CIPRT.CMN' 

SINCLUDE: 'CONTRL.CMN' 

SINCLUDE: 'CTCON.CMN' 

SINCLUDE: 'IFLAGS.CMN' 

SINCLUDE: 'WRATES.CMN' 

FILE: 'WNDPRO.CML' 

SINCLUDE: 'CONSTS.CMN' 

SINCLUDE: 'CWIND.CMN' 

SINCLUDE: 'IFLAGS.CMN' 

SINCLUDE: 'PARMS.CMN' 

TABLE B-4 (CONTINUED) 

B-20 
FILE: 'ZROLFT.CML' 

$INCLUDE: 'AFTABL.CMN' 

$INCLUDE: 'CONSTS.CMN' 

$INCLUDE: 'UNITS.CMN' 

TABLE B-4 (CONCLUDED) 

8-21 
APPENDIX C 

PROGRAM lSWT SOllRCE LISTING 
Source FiLe: LSWT01.FOR Program Unit: MAIN 

C ******************************************************************00000010 

C ******************************************************************00000020 

C 00000030 

C LSWT VERSION 1.00 RELEASED MAY 1986 00000040 

C 00000050 

C HORIZONTAL AXIS WIND TURBINE AERODYNAMIC PERFORMANCE ANALYSIS 00000060 

C BASED ON LIFTING SURFACE THEORY WITH PRESCRIBED WAKE 00000070 

C 00000080 

C TECHNICAL DEVELOPMENT AND PROGRAMMING BY 00000090 

C J. DAVID KOCUREK 00000100 

C COMPUTATIONAL METHODOLOGY ASSOCIATES 00000110 

C 00000120 

C DEVELOPED UNDER MICROSOFT FORTRAN77, VERSION 3.20 (MS-DOS) 00000130 

C 00000140 

C ******************************************************************00000150 

C ******************************************************************00000160 

C-1 
Source File: LSWT01.FOR Program Unit: MAIN 

C ******************************************************************00000010 

C 00000020 

C LSWT01 (MAIN) 00000030 

C 00000040 

C ******************************************************************OOOOOOSO 

C 00000060 

PROGRAM MAIN 00000070 

C 00000080 

COMMONI CASE I IPOINT, ALPHAD, VWOD, IVDIM, VWFAC, PS IRD, 00000090 

1 CASEID 00000100 

COMMONI CCIRC I CIRC(100), DCIRC(100), ACIRC(100), 00000110 

1 CIRCR(100), BCIRC(20) , GO(20) , 00000120 

2 TECF, AKM(6), XKM(S) 00000130 

COMf40NI CIPRT I IPRT1, IPRT2, IPRT3, IPRT4, IPRTS, IPRT6, 00000140 

1 IPRT7, IPRT8 000001S0 COMr~ONI CONSTS I PI, RPD 00000160 

COMMONI CONTRL I TOL1, TOL2, TOL3, ICYL 1, ICYL2, ICYL3, 00000170 

1 ICYL4 00000180 

COMMONI CWIND I ALPS1, ALPS2, HO, VWO, E, 00000190 

1 ITSTYP, TSTAB(100), NXTS, NYTS, 00000200 

2 TO, TP, TPO, TPS, TK, 00000210 

3 AB(S,2), AT<S,2) 00000220 

COMMONI !FLAGS I ISTDY, IWFLAG, LSFLAG, IRFLAG 00000230 

COMMONI PNLNDX I MP, NP, NPANEL, 00000240 

1 MP1, NP1, NPNLSQ, 000002S0 

2 NSGMNT, JGLIM(4,2), JCGLIM(4,2), 00000260 

3 NPS(4), NBLDS 00000270 

COMMONI SWEEP I ALPS IN, DALP, NALP, VWOIN, DVWO, NVWO, 00000280 

1 PSIRIN, DPS IR, NPSIR 00000290 

COMMONI UNITS I IOU1, IOUS, IOU6, IOU7, IOU8, 00000300 

1 IOU10, IOU11, IOU12, IOU13 00000310 

C 00000320 

C ******************************************************************00000330 

C 00000340 

C OPEN DISK I/O FILES 000003S0 

C 00000360 

CALL IOINIT 00000370 

C 00000380 

C INITIALIZE START TIME 00000390 

C 00000400 

CALL TIMER(1) 00000410 

CALL TIMER (3) 00000420 

C 00000430 

C CALL INITIALIZATION AND INPUT EXECUTIVE SUBROUTINE 00000440 

C 000004S0 

CALL EXINT 00000460 

IF (IPRT7 .GT.O> CALL TRACE(IEXINT I) 00000470 

C 00000480 

IPOINT = 0 00000490 

C OOOOOSOO 

C -------------------------------- 00000S10 

C LOOP 7000 SWEEPS GEOMETRIC PITCH 00000S20 

C-2 
Source FiLe: LSWT01.FOR Program Unit: MAIN 

C -------------------------------- C 

C 

C 

DO 7000 IALP = 1,NALP 

ALPHAS = ALPSIN+(IALP-1)*DALP 

ALPHAD = ALPHAS/RPD 

C --------------------------- C LOOP 6000 SWEEPS WIND SPEED 

C --------------------------- C 

C 

DO 6000 IVWO = 1,NVWO 

IPOINT = IPOINT + 1 

VWO = VWOIN+CIVWO-1)*DVWO 

IFCIVDIM.EQ.3) VWO = 1.0/VWO/VWFAC 

VWOD = VWO*VWFAC 

IF(IVDIM.EQ.3) VWOD = 1.0 I VWOD 

IFC (NVWO.EQ.1) .AND. (IALP.GT.1) ) GO TO 110 

C 

C CALL BLADE GEOMETRY EXECUTIVE SUBROUTINE 

C 

CALL EXBLD 

IF(IPRT7.GT.0) CALL TRACE(IEXBLD I) 

C 

IF(IPOINT.GT.1) GO TO 110 

C 

C REFERENCE BLADE GEOMETRY REPORT, IPRT = 3, IPOINT = 1 

C 

C 

IF(IPRT1.EQ.3) CALL PSURF(0.0,0.0,1) 

IFCIPRT1.EQ.3) CALL OUT1(0) 

C GET INITIAL LIFT SLOPE (FIRST POINT ONLY) 

C 

CALL INTLS(ALPHAS) 

C 

C INITIALIZE CIRCULATION ARRAYS 

C 

C 

C 

DO 100 J = 1, NPANEL 

CIRC(J) = 0.0 

CIRCR(J) = 1.0 

100 CONTINUE 

110 CONTINUE 

C -------------------------------------------------------------- C LOOP 5000 SWEEPS AZIMUTH FOR QUASI-STEADY CASE, ELSE ONE POINT 

C -------------------------------------------------------------- C 

IF(ISTDY.EQ.1) GO TO 200 

C 

PSIRIN = 0.0 

C-3 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

00000680 

00000690 

00000700 

00000710 

00000720 

00000730 

00000740 

00000750 

00000760 

00000770 

00000780 

00000790 

00000800 

00000810 

00000820 

00000830 

00000840 

00000850 

00000860 

00000870 

00000880 

00000890 

00000900 

00000910 

00000920 

00000930 

00000940 

00000950 

00000960 

00000970 

00000980 

00000990 

00001000 

00001010 

00001020 

00001030 

00001040 
Source FiLe: LSWT01.FOR 

C 

C 

C 

C 

DPSIR = 0.0 

NPSIR = 1 

200 CONTINUE 

DO 5000 IPSIR = 1,NPSIR 

PSIR = PSIRIN+(IPSIR-1)*DPSIR 

PSIRD = PSIR/RPD 

IF«IPRT1.NE.1) .AND. (IPRT1.NE.2» GO TO 400 

IF«IPRT1.EQ.2) .AND. (IPSIR.GT.1» GO TO 400 

C 

C BLADE GEOMETRY REPORT, IPRT = 1,2 

C 

C 

C 

C 

PSI8S = 2.0*PI/NBLDS 

DO 300 ITBLD = 1, NBLDS 

PSITB = PSIR-(ITBLD-1)*PSIBS 

CALL PSURF(ALPHAS,PSITB,1) 

CALL OUT1(ITBLD) 

300 CONTINUE 

400 CONTINUE 

C SET SWITCH SO SURFACE AIC'S WILL BE CALCULATED ONLY ONCE 

C PER AZIMUTH 

C 

IAICDS = 0 

C 

C ----------------------------------- C LOOP 4000 CONVERGES PRESCRIBED WAKE 

C ----------------------------------- C 

C 

C 

IWCYLM = ICYL3 

IF(ICYL3.EQ.0) IWCYLM = 6 

DO 4000 IWCYL = 1, IWCYLM 

C ---------------------------------- C LOOP 3000 CONVERGES ROLL-UP OPTION 

C ---------------------------------- C 

C 

c 

IRCYLM = ICYL4 

IF(ICYL4.EQ.0) IRCYLM = 4 

DO 3000 IRCYL = 1,IRCYLM 

C ------------------------------------------------- C LOOP 2000 SWEEPS TARGET BLADES, BLADE ONE AT PSIR 

C ------------------------------------------------- C 

C-4 

Program Unit: MAIN 

00001050 

00001060 

00001070 

00001080 

00001090 

00001100 

00001110 

00001120 

00001130 

00001140 

00001150 

00001160 

00001170 

00001180 

00001190 

00001200 

00001210 

00001220 

00001230 

00001240 

00001250 

00001260 

00001270 

00001280 

00001290 

00001300 

00001310 

00001320 

00001330 

00001340 

00001350 

00001360 

00001370 

00001380 

00001390 

00001400 

00001410 

00001420 

00001430 

00001440 

00001450 

00001460 

00001470 

00001480 

00001490 

00001500 

00001510 

00001520 

00001530 

00001540 

00001550 

00001560 
Source FiLe: LSWT01.FOR 

C 

ITBLDM = NBLDS 

IF(ISTDY.EQ.O) ITBLDM = 1 

C CLEAR OUTPUT BUFFER 

C 

REWIND IOU8 

C 

DO 2000 ITBLD = 1,ITBLDM 

c 

C CALL AERODYNAMIC INFLUENCE COEFFICIENT EXECUTIVE 

C 

CALL EXAIC(ALPHAS,PSIR,ITBLD,IAICDS) 

IF(IPRT7.GT.0) CALL TRACE('EXAIC ') 

C 

C RESET SWITCH SO SURFACE AIC'S WILL NOT BE RECALCULATED 

C 

IAICDS = 1 

C 

C ----------------------------------------------------- C LOOP 1000 CONVERGES EFFECTIVE LINEAR LIFT CURVE SLOPE 

C ----------------------------------------------------- C 

C 

C 

ISCYLM = ICYL2 

IF(ICYL2.EQ.0) ISCYLM = 4 

DO 1000 ISCYL = 1,ISCYLM 

C CALL SOLUTION EXECUTIVE 

C 

CALL EXSLVCITBLD,PSIR,IPSIR,ISCYL) 

IFCIPRT7.GT.0) CALL TRACEC'EXSLV ') 

C 

C CHECK FOR CONVERGENCE OF LINEAR LIFT CURVE SLOPES 

C 

C 

IF(LSFLAG.EQ.O) GO TO 1500 

IFCIWFLAG.EQ.1) GO TO 1500 

IFCIRFLAG.EQ.1) GO TO 1500 

C --------

1000 CONTINUE 

C -------- C 

1500 CONTINUE 

C 

C REPORT WAKE PARAMETERS, IPRT6 = 1 

C 

IFCIPRT6.EQ.1) CALL OUT6 

C 

C REPORT WAKE COORDINATES, IPRT2=1 

C 

IFCIPRT2.EQ.1) CALL OUT2(ITBLD,PSIR) 

C 

C-5 

Program Unit: MAIN 

00001570 

00001580 

00001590 

00001600 

00001610 

00001620 

00001630 

00001640 

00001650 

00001660 

00001670 

00001680 

00001690 

00001700 

00001710 

00001720 

00001730 

00001740 

00001750 

00001760 

00001770 

00001780 

00001790 

00001800 

00001810 

00001820 

00001830 

00001840 

00001850 

00001860 

00001870 

00001880 

00001890 

00001900 

00001910 

00001920 

00001930 

00001940 

00001950 

00001960 

00001970 

00001980 

00001990 

00002000 

00002010 

00002020 

00002030 

00002040 

00002050 

00002060 

00002070 

00002080 
Source FiLe: LSWT01.FOR 

C BLADE ELEMENT PERFORMANCE SUMMARY,IPRT3 = 1 

C 

IF(IPRT3.EQ.1) CALL OUT3(ITBLD,IOU6) 

C 

C BLADE PERFORMANCE SUMMARY, IPRT4 = 1 

C 

IF(IPRT4.EQ.1) CALL OUT4(ITBLD,IOU6) 

C 

C ROTOR SUMMARY PERFORMANCE, IPRT5 = 1 

C 

IF(IPRT5.EQ.1) CALL OUTS 

C 

C LOAD OUTPUT BUFFER AS REQUESTED 

C 

IF«IPRT3.EQ.2) .OR. (IPRT3.EQ.3» CALL OUT3(ITBLD,IOU8) 

IF«IPRT4.EQ.2) .OR. (IPRT4.EQ.3» CALL OUT4(ITBLD,IOU8) 

C 

IF(ISTDY.EQ.O) GO TO 2000 

C 

C UPDATE AZIMUTH AVERAGE FOR ITBLD 1 S NEW CIRCULATION 

C 

DO 1600 J = 1,NPANEL 

IF(ITBLD.EQ.1) ACIRC(J) = CIRC(J)/NBLDS 

IF(ITBLD.GT.1) ACIRC(J) = ACIRC(J)+CIRC(J)/NBLDS 

1600 CONTINUE 

C 

C --------

2000 CONTINUE 

C --------

C 

C CHECK FOR CONVERGENCE OF ROLL-UP 

C 

IF<IWFLAG.EQ.1> GO TO 3500 

IF(IRFLAG.EQ.O> GO TO 3500 

C 

C -------- 3000 CONTINUE 

C -------- C 

3500 CONTINUE 

C 

C CHECK FOR CONVERGENCE OF WAKE 

C 

IF<IWFLAG.EQ.O> GO TO 4100 

C 

C --------

4000 CONTINUE 

C --------

C 

4100 CONTINUE 

C 

C REPORT WAKE PARAMETERS,IPRT6 = 2 

C-6 

Program Unit: ~AIN 

00002090 

00002100 

00002110 

00002120 

00002130 

00002140 

00002150 

00002160 

00002170 

00002180 

00002190 

00002200 

00002210 

00002220 

00002230 

00002240 

00002250 

00002260 

00002270 

00002280 

00002290 

00002300 

00002310 

00002320 

00002330 

00002340 

00002350 

00002360 

00002370 

00002380 

00002390 

00002400 

00002410 

00002420 

00002430 

00002440 

00002450 

00002460 

00002470 

00002480 

00002490 

00002500 

00002510 

00002520 

00002530 

00002540 

00002550 

00002560 

00002570 

00002580 

00002590 

00002600 
Source FiLe: LSWT01.FOR Program Unit: MAIN 

C 

IFCIPRT6.EQ.2) CALL OUT6 

C 

C REPORT WAKE COORDINATES, IPRT2 = 2 

C 

C 

C 

IFCIPRT2.NE.2) GO TO 4300 

!TBLDM = NBLDS 

IF(ISTDY.EQ.O) ITBLDM = 1 

DO 4200 ITBLD = 1,ITBLDM 

IF(IPRT2.EQ.2) CALL OUT2CITBLD,PSIR) 

4200 CONTINUE 

4300 CONTI NUE 

C 

C BLADE ELEMENT AND/OR BLADE SUMMARY PERFORMANCE, 

C IPRT3 = 2, AND/OR IPRT4 = 2 (RESTORE FROM BUFFER) 

C 

IF«IPRT3.EQ.2) .OR. (IPRT4.EQ.2» CALL APPEND(IOU8,IOU6,132,0) 

C 

C ROTOR SUMMARY PERFORMANCE, IPRT5 = 2 

C 

IFCIPRT5.EQ.2) CALL OUT5 

C 

IF(ISTDY.EQ.O) GO TO 4500 

C 

. C UPDATE DISK AVERAGE CIRCULATION FOR THIS AZIMUTH 

C 

~O 4400 J = 1, NPANEL 

IF(IPSIR.EQ.1) DCIRC(J) = ACIRC(J)/IPSIR 

IF(IPSIR.GT.1) DCIRC(J) = (DCIRC(J)*(IPSIR-1)+ACIRC(J»/IPSIR 

4400 CONTINUE 

C 

4500 CONTINUE 

C 

C -------- 5000 CONTINUE 

C -------- C 

C REPORT WAKE PARAMETERS,IPRT6 = 3 

C 

IF(IPRT6.EQ.3) CALL OUT6 

C 

C REPORT WAKE COORDINATES, IPRT2 = 3 

C 

C 

IF(IPRT2.NE.3) GO TO 5200 

!TBLOM = NBLOS 

IF(ISTOY.EQ.O) ITBLOM = 1 

DO 5100 ITBLO = 1,ITBLOM 

IF(IPRT2.EQ.3) CALL OUT2(ITBLO,PSIR) 

5100 CONTINUE 

C-7 

00002610 

00002620 

00002630 

00002640 

00002650 

00002660 

00002670 

00002680 

00002690 

00002700 

00002710 

00002720 

00002730 

00002740 

00002750 

00002760 

00002770 

00002780 

00002790 

00002800 

00002810 

00002820 

00002830 

00002840 

00002850 

00002860 

00002870 

00002880 

00002890 

00002900 

00002910 

00002920 

00002930 

00002940 

00002950 

00002960 

00002970 

00002980 

00002990 

00003000 

00003010 

00003020 

00003030 

00003040 

00003050 

00003060 

00003070 

00003080 

00003090 

00003100 

00003110 

00003120 
Source FiLe: LSWT01.FOR Program Unit: MAIN 

C 

5200 CONTINUE 

C 

C BLADE ELEMENT AND/OR BLADE SUMMARY PERFORMANCE, 

C IPRT3 = 3, AND/OR IPRT4 = 3 CRESTORE FROM BUFFER) 

C 

IFCCIPRT3.EQ.3) .OR. CIPRT4.EQ.3» CALL APPENDCIOU8,IOU6,132,0) 

C 

C ROTOR SUMMARY PERFORMANCE, IPRT5 = 3 

C 

IFCIPRT5.EQ.3) CALL OUT5 

C 

C CONVERGENCE MESSAGES FOR THIS POINT 

C 

C 

C 

C 

IFCLSFLAG.EQ.1) WRITECIOU6,1001) ISCYLM 

1001 FORMATC'O',4X,41C'*')/ 

1 ' ',4X,'LIFT SLOPES NOT CONVERGED AFTER ',12,' CYCLES'/ 

2 ' ',4X,41<'*'» 

IFCIRFLAG.EQ.1) WRITECIOU6,3001) IRCYLM 

3001 FORMATC'O',4X,41C'*')/ 

1 ' ',4X,'ROLL-UP NOT CONVERGED AFTER ',12,' ITERATIONS'/ 

2 ' ',4X,41< '*'» 

IFCIWFLAG.EQ.1) WRITECIOU6,4001) IWCYLM 

4001 FORMATC'O',4X,38C'*')/ 

1 ' ',4X,'WAKE NOT CONVERGED AFTER ',12,' ITERATIONS'/ 

2 • ',4X,38C'*'» 

C -------- 6000 CONTINUE 

C --------

C 

C -------- 7000 CONTINUE 

C --------

C 

C DISPLAY TOTAL TIME 

C 

CALL TIMER C 2) 

C 

C CLOSE DISK I/O FILES 

C 

CALL IOFNSH 

C 

STOP , , 

END 

C-8 

00003130 

00003140 

00003150 

00003160 

00003170 

00003180 

00003190 

00003200 

00003210 

00003220 

00003230 

00003240 

00003250 

00003260 

00003270 

00003280 

00003290 

00003300 

00003310 

00003320 

00003330 

00003340 

00003350 

00003360 

00003370 

00003380 

00003390 

00003400 

00003410 

00003420 

00003430 

00003440 

00003450 

00003460 

00003470 

00003480 

00003490 

00003500 

00003510 

00003520 

00003530 

00003540 

00003550 

00003560 

00003570 

00003580 

00003590 
Source FiLe: LSWT01.FOR Program Unit: INTLS 

C ******************************************************************00000010 

C 00000020 

C LSWT01(INTLS) 00000030 

C 00000040 

C CALCULATES THE INITIAL ESTIMATE OF THE EFFECTIVE LINEAR LIFT CURVE00000050 

C SLOPE AT EACH BLADE SOLUTION STATION 00000060 

C 00000070 

C ******************************************************************00000080 

C 00000090 

SUBROUTINE INTLS(ALPHAS) 00000100 

C 00000110 

COMMON/ AFTABL / NAFT, IDAFT(4), AFTOC(4), IAFTEX, 00000120 

1 STP1(4), STP2(4), STP3(4), 00000130 

2 STP4(4), STP5(4), STP6(4), 00000140 

3 CLTAB(200,4), NRCL(4), NACL(4), 00000150 

4 CDTAB(200,4), NRCD(4), NACD(4), 00000160 

5 CMTAB(100,4), NRCM(4), NACM(4) 00000170 

COMMON/ ALSLP / ALS(20), ALSNEW(20), ALSOLD(20) 00000180 

COMMON/ BLDELE / XCLE(20), YCG(20), RBE(20), 00000190 

1 DBES(20), CLAMLE(20), CLAMQC(20), 00000200 

2 CHDCGL(20), BETAL(20), AFTWF(20), 00000210 

3 JTAB(20,2), TOC(20), RE(20), 00000220 

4 CLT(20), CDT(20), CMT(20), 00000230 

5 COS(20) 00000240 

COMMON/ CALPHA / ALPHAG(20), ALPHAE(20), ALPHAW(20), 000002SO 

1 ALPHAN(20), ALPHAI(20), AZLLC(20), 00000260 

2 TWSTCG(20) 00000270 

COMMON/ CONSTS / PI, RPD 00000280 

COMMON/ CWIND / ALPS1, ALPS2, HO, VWO, E, 00000290 

1 ITSTYP, TSTAB(100), NXTS, NYTS, 00000300 

2 TO, TP, TPO, TPS, TK, 00000310 

3 AB(S,2), AT(5,2) 00000320 

COMMON/ PARMS / RADIUS, OMEGA, OMEGAR, RHO, AMU 00000330 

COMMON/ PNLNOX / MP, NP, NPANEL, 00000340 

1 MP1, NP1, NPNLSQ, 000003S0 

2 NSGMNT, JGLIM(4,2), JCGLIM(4,2), 00000360 

3 NPS(4), NBLDS 00000370 

C 00000380 

C ******************************************************************00000390 

C 00000400 

C INITIAL VALUE OF LINEAR LIFT SLOPE 00000410 

C 00000420 

DO 200 J = 1,NP 00000430 

C 00000440 

VEL = SQRT(VWO**2+(OMEGAR*RBE(J»**2) 000004S0 

REN = RHO*VEL*CHDCGL(J)*RADIUS/AMU 00000460 

C 00000470 

ALTAB = ALPHAS/2.0-AZLLC(J)+ATAN(VWO/OMEGAR/RBE(J» 00000480 

IF (ABS(AZLLC(J».LT.1.0E-04.AND.ABS(ALTAB).LT.1.0E-04) 00000490 

1 ALTAB = AZLLC(J)/RPD + 1.0 OOOOOSOO 

CALL AFCOEF(J,ALTAB,REN,CL,CO,CM,INOREX) 00000S10 

C 00000S20 

C-9 
Source File: LSWT01.FOR Program Unit: INTLS 

C INITIAL ESTIMATE OF EFFECTIVE LINEAR LIFT SLOPE USING LEADING 

C EDGE ANGLE TO CORRECT FOR SWEEP - LATER UPDATES WILL USE 

C AERODYNAMIC SWEEP 

C 

C 

C 

ALTAB = ALTAB*RPD 

ALS(J) = CL/(ALTAB-AZLLC(J» * CLAMLE(J) 

200 CONTINUE 

RETURN 

END 

C-10 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 
Source File: LSWT01.FOR Program Unit: EXINT 

C ******************************************************************00000010 

C 00000020 

C LSWT01(EXINT) 00000030 

C 00000040 

C PERFORMS INITIALIZATION OF CONSANTS, CALLS INPUT SUBROUTINE, AND 00000050 

C REPORTS RECORD IMAGE OF INPUT 00000060 

C 00000070 

C ******************************************************************00000080 

C 00000090 

SUBROUTINE EXINT 00000100 

C 00000110 

COMMON! CIPRT ! IPRT1, IPRT2, IPRT3, IPRT4, IPRT5, IPRT6, 00000120 

1 IPRT7, IPRT8 00000130 

COMMON! CONSTS ! PI, RPD 00000140 

C 00000150 

C ******************************************************************00000160 

C 00000170 

PI = ACOS(-1.0) 00000180 

RPD = PI!180.0 00000190 

C 00000200 

C CALL INPUT SUBROUTINE 00000210 

C 00000220 

CALL READIN 00000230 

IF(IPRT7.GT.0) CALL TRACE('READIN') 00000240 

C 00000250 

C OUTPUT RECORD IMAGE OF INPUT, IPRT8 = 1 00000260 

C 00000270 

IF(IPRT8.EQ.1) CALL OUT8 00000280 

C 00000290 

RETURN 00000300 

END 00000310 

C-11 
Source FiLe: LSWT01.FOR Program Unit: EXBLD 

C ******************************************************************00000010 

C 00000020 

C LSWT01CEXBLD) 00000030 

C 00000040 

C BLADE GEOMETRY EXECUTIVE 00000050 

C 00000060 

C ******************************************************************00000070 

C 00000080 

SUBROUTINE EXBLD 00000090 

C 00000100 

COMMON/ CIPRT / IPRT1, IPRT2, IPRT3, IPRT4, IPRT5, IPRT6, 00000110 

1 IPRT7, IPRT8 00000120 

C 00000130 

C ******************************************************************00000140 

C 00000150 

C GENERATE NONDIMENSIONAL PANEL GRID AND 00000160 

C COLLOCATION POINTS 00000170 

C 00000180 

CALL GRID 00000190 

IFCIPRT7.GT.0) CALL TRACEC'GRID ') 00000200 

C 00000210 

C CALCULATE TWO-DIMENSIONAL AIC'S 00000220 

C 00000230 

CALL AICDLS 00000240 

IFCIPRT7.GT.0) CALL TRACEC'AICDLS') 00000250 

C 00000260 

C GENERATE REFERENCE SURFACE PANEL COORDINATES 00000270 

C 00000280 

CALL RFSURF 00000290 

IFCIPRT7.GT.0) CALL TRACEC'RFSURF') 00000300 

C 00000310 

RETURN 00000320 

END 00000330 

C-12 
Source FiLe: LSWT01.FOR Program Unit: EXAIC 

C ******************************************************************00000010 

C 00000020 

C LSWT01(EXAIC) 00000030 

C 00000040 

C AERODYNAMIC INFLUENCE COEFFICIENT EXECUTIVE 00000050 

C 00000060 

C ******************************************************************00000070 

C 00000080 

SUBROUTINE EXAIC(ALPHAS,PSIR,ITBLD,IAICDS) 00000090 

C 00000100 

COMMON! CIPRT ! IPRT1, IPRT2, IPRT3, IPRT4, IPRT5, IPRT6, 00000110 

1 IPRT7, IPRT8 00000120 

COMMON! CONSTS ! PI, RPD 00000130 

COMMON! IFLAGS ! ISTDY, IWFLAG, LSFLAG, IRFLAG 00000140 

COMMON! PNLNDX ! MP, NP, NPANEL, 00000150 

1 MP1, NP1, NPNLSQ, 00000160 

2 NSGMNT, JGLIM(4,2), JCGLIM(4,2), 00000170 

3 NPS(4), NBLDS 00000180 

C 00000190 

C ******************************************************************00000200 

C 00000210 

C AZIMUTH OF TARGET BLADE 00000220 

C 00000230 

PSIBS = 2.0*PI!NBLDS 00000240 

PSITB = PSIR-(ITBLD-1)*PSIBS 00000250 

C 00000260 

C SWEEP SOURCE BLADES 00000270 

C 00000280 

DO 200 ISBLD = 1,NBLDS 00000290 

C 00000300 

C AZIMUTH OF SOURCE BLADE 00000310 

C 00000320 

PSISB = PSIR-(ISBLD-1)*PSIBS 00000330 

C 00000340 

C POSITION SURFACE 00000350 

C 00000360 

CALL PSURF(ALPHAS,PSISB,ISBLD) 00000370 

IF(IPRT7.GT.0) CALL TRACE('PSURF I) 00000380 

C 00000390 

C SURFACE INFLUENCE COEFFICIENTS OF SOURCE ON TARGET 00000400 

C (THESE ARE CALCULATED ONLY ONCE PER CASE SINCE RELATIVE 00000410 

C POSITION OF BLADES TO EACH OTHER IS FIXED) 00000420 

C 00000430 

IF(IAICDS.EQ.O) CALL AICDS(ISBLD) 00000440 

IF«IAICDS.EQ.O) .AND. (IPRT7.GT.0» CALL TRACE('AICDS I) 00000450 

C 00000460 

C CALCULATE WAKE GEOMETRY OF SOURCE BLADE 00000470 

C 00000480 

IF(ISTDY.EQ.0.AND.ISBLD.GT.1) GO TO 100 00000490 

C 00000500 

CALL PREWAK(PSISB,ISBLD) 00000510 

IF(IPRT7.GT.0) CALL TRACE('PREWAK ' ) 00000520 

C-13 
Source FiLe: LSWT01.FOR Program Unit: EXAIC 

C 

IFCISTDY.EQ.O) CALL PWAKE 

IFCCISTDY.EQ.O) .AND. CIPRT7.GT.0» CALL TRACEC1PWAKE I) 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

C 

100 CONTINUE 

C 

C WAKE INFLUENCE COEFFICIENTS OF SOURCE ON TARGET 

C 

C 

C 

CALL AICDWCISBLD) 

IFCIPRT7.GT.0) CALL TRACEC1AICDW I) 

200 CONTINUE 

RETURN 

END 

C-14 
Source FiLe: LSWT01.FOR Program Unit: EXSLV 

C ******************************************************************00000010 

C 00000020 

C LSWT01(EXSLV) 00000030 

C 00000040 

C CIRCULATION SOLUTION EXECUTIVE 00000050 

C 00000060 

C 

C 

C 

C 

******************************************************************00000070 

00000080 

SUBROUTINE EXSLV(ITBLD,PSIR,IPSIR,ISCYL) 00000090 

00000100 

COMMON! CASE ! IPOINT, ALPHAD, VWOD, IVDIM, VWFAC, PS IRD, 00000110 

1 CASEID 00000120 

COMMON! CCIRC ! CIRC(100), DCIRC(100), ACIRC(100), 00000130 

1 C I R C R ( 1 00> , BCIRC(20) , GO( 20>, 00000140 

2 TECF, AKM(6), XKM(5) 00000150 

COMMON! CIPRT ! IPRT1, IPRT2, IPRT3, IPRT4, IPRT5, IPRT6, 00000160 

1 IPRT7, IPRT8 00000170 

COMMON! CONTRL ! TOL1, TOL2, TOL3, ICYL1, ICYL2, ICYL3, 00000180 

1 ICYL4 00000190 

COMMON! IFLAGS ! ISTDY, IWFLAG, LSFLAG, IR FLAG 00000200 

COMMON! PNLNDX ! MP, NP, NPANEL, 00000210 

1 MP1, NP1, NPNLSQ, 00000220 

2 NSGMNT, JGLIM(4,2) , J CGLIM(4,2), 00000230 

3 NPS(4), NBLDS 00000240 

COMMON! UNITS ! IOU1, IOU5, IOU6, IOU7, IOU8, 00000250 

1 IOU10, IOU11, IOU12, IOU13 00000260 

COMMON! WAKNDX ! REVS, NWIPR, NWI, 00000270 

1 KMAX(24), IFWAK, JS(3,2), 00000280 

2 PS IMR, PSIMT, IROLL 00000290 

00000300 

C ******************************************************************00000310 

C 00000320 

C CALCULATE NORMAL BOUNDARY CONDITION 00000330 

C 00000340 

PSIT = PSIR-(2.0*PI)!NBLDS*(ITBLD-1) 00000350 

C 00000360 

CALL NRMLBC(PSIT) 00000370 

IF(IPRT7.GT.0) CALL TRACE('NRMLBC') 00000380 

C 00000390 

IF(ISTDY.EQ.O) GOTO 200 00000400 

C 00000410 

C PREPARE FOR OUTER SOLUTION OF CIRCULATION 00000420 

C 00000430 

TOLMAX = 1.0E-05 00000440 

IF(TOL1.GT.0.0) TOLMAX = TOL1 00000450 

TOLMAX = TOLMAX*100.0 00000460 

C 00000470 

C INITIALIZE CONVERGENCE CHECK 00000480 

C 00000490 

SUMCR = 0.0 00000500 

C 00000510 

C ALLOW ITCYLM CYLES TO CONVERGE 00000520 

C-15 
Source FiLe: LSWT01.FOR 

C 

C 

ITCYLM = ICYL1 

IF(ITCYLM.EQ.O) ITCYLM = 100 

ITCYLM = ITCYLM/20 

C INITIALIZE CIRCULATION RATIO 

C 

C 

C 

DO 100 J = 1, NPANEL 

CIRCR(J) = 1.0 

100 CONTINUE 

200 CONTINUE 

C LOOP 1000 CONVERGES CIRCULATION OUTER SOLUTION 

C 

IF(ISTDY.EQ.O) ITCYLM = 1 

C 

DO 1000 ITCYL = 1, ITCYLM 

C 

C ASSEMBLE INFLUENCE COEFFICIENT MATRIX 

C 

CALL AICDSW(ITBLD) 

IF(IPRT7.GT.0) CALL TRACE('AICDSW') 

C 

C SOLVE LINEAR EQUATION SYSTEM BY GAUSS-SEIDEL ITERATION 

C 

CALL GSITER(NPANEL) 

IF(IPRT7.GT.0) CALL TRACE('GSITER') 

C 

IF(ISTDY.EQ.O) GO TO 1100 

C 

IF(IPOINT*IPSIR.EQ.1) GO TO 1100 

C 

C UPDATE CIRCULATION RATIO PARAMETER 

C 

SUMCRP = 0.0 

DO 300 J = 1, NPANEL 

CIRCRI = CIRCR(J) 

CIRCRO = DCIRC(J)/CIRC(J) 

CIRCR(J) = 0.5*(CIRCRO-CIRCRI)+CIRCRI 

SUMCRP=SUMCRP + ABS(CIRCRO) 

300 CONTINUE 

C 

C CHECK CONVERGENCE 

C 

C 

C 

TOL = ABS«SUMCRP-SUMCR)/SUMCRP) 

IF(TOL.LE.TOLMAX) GO TO 1100 

SUMCR = SUMCRP 

1000 CONTINUE 

C 

C-16 

Program Unit: EXSLV 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

00000680 

00000690 

00000700 

00000710 

00000720 

00000730 

00000740 

00000750 

00000760 

00000770 

00000780 

00000790 

00000800 

00000810 

00000820 

00000830 

00000840 

00000850 

00000860 

00000870 

00000880 

00000890 

00000900 

00000910 

00000920 

00000930 

00000940 

00000950 

00000960 

00000970 

00000980 

00000990 

00001000 

00001010 

00001020 

00001030 

00001040 
Source FiLe: LSWT01.FOR 

1100 CONTINUE 

C 

C CALCULATE CIRCULATION PARAMETERS 

C 

CALL CIRPRM 

IF(IPRT7.GT.0) CALL TRACE('CIRPRM') 

C 

C IF OPTIONED, CHECK ROLL-UP COMPATABILITY WITH LOADING 

C 

IRFLAG = 0 

IF(IROLL.EQ.1) CALL ROLNDX 

Program Unit: EXSLV 

IF«IROLL.EQ.1) .AND. (IPRT7.GT.0» CALL TRACE(IROLNDX 1 ) 

00001050 

00001060 

00001070 

00001080 

00001090 

00001100 

00001110 

00001120 

00001130 

00001140 

00001150 

00001160 

00001170 

00001180 

00001190 

00001200 

00001210 

00001220 

00001230 

00001240 

00001250 

00001260 

00001270 

00001280 

00001290 

00001300 

00001310 

00001320 

00001330 

00001340 

00001350 

00001360 

00001370 

00001380 

00001390 

C 

C CALCULATE BLADE ELEMENT VELOCITIES 

C 

CALL BEVEL(PSIT) 

IF(IPRT7.GT.0) CALL TRACE(IBEVEL I) 

C 

C CALCULATE BLADE ELEMENT ALPHAS 

C 

CALL BEALPH 

IF(IPRT7.GT.0) CALL TRACE(IBEALPH 1 ) 

C 

C CALCULATE BLADE AND ROTOR PERFORMANCE 

C 

CALL AEROPF(ITBLD,IPSIR,ISCYL) 

IF(IPRT7.GT.0) CALL TRACE(IAEROPF 1 ) 

C 

C CHECK FOR CONVERGENCE OF WAKE PARAMETERS 

C 

C 

CALL IrIAKUPD 

IF(IPRT7.GT.0) CALL TRACE(IWAKUPD 1 ) 

RETURN 

END 

C-17 
Source FiLe: LSWT01.FOR Program Unit: BVTINT 

C ******************************************************************00000010 

C 00000020 

C LSWT01(BVTINT) 00000030 

C 00000040 

C PERFORMS A TABLE LOOKUP OF Y=F(X) OR Y=F(X,Z) USING BISECTION 00000050 

C ITERATION TO LOCATE TARGETS. LINEAR INTERPOLATION IS USED TO 00000060 

C CALCULATE Y FROM TABLE MEMBERS. 00000070 

C 00000080 

C RETURNS INOREX TO INDICATE TARGET POSITION IN X RANGE IF Y=F(X), 00000090 

C OR IN Z RANGE IF Y=F(X,Z). 00000100 

C 00000110 

COIF 

C INOREX = -1 IF EXTRAPOLATION BELOW RANGE 00000120 

INTERPOLATION WITHIN RANGE 00000130 

C 1 IF EXTRAPOLATION ABOVE RANGE 00000140 

C 00000150 

C ******************************************************************00000160 

C 00000170 

SUBROUTINE BVTINT(X,Y,Z,NX,NZ,TABLE,INOREX) 00000180 

C 00000190 

DIMENSION TABLE(1) 00000200 

C 00000210 

C ******************************************************************00000220 

C 00000230 

C FIRST PASS IS TO LOCATE X TARGET POSITION AMONG TABLE MEMBERS, 00000240 

C SECOND PASS IS FOR Z TARGET IF REQUIRED. 00000250 

C 00000260 

IPASS = 1 00000270 

TARGET = X 00000280 

NMAX = NX 00000290 

NL = 1 00000300 

NH = NX 00000310 

NLOW = NL 00000320 

NMID = NMAX/2 00000330 

NHIGH = NMAX 00000340 

C 00000350 

100 CONTINUE 00000360 

IF(NMAX.LE.2) GO TO 500 00000370 

C 00000380 

C DETERMINE WHICH TABLE HALF TARGET IS IN 00000390 

C 00000400 

110 CONTINUE 00000410 

IF(TARGET-TABLE(NMID» 200,300,400 00000420 

C 00000430 

200 CONTINUE 00000440 

C 00000450 

C TARGET IS BELOW MIDPOINT MEMBER 00000460 

C 00000470 

NHALF = (NMID-NLOW)/2 00000480 

IF(NHALF) 220,220,210 00000490 

210 CONTINUE 00000500 

NHIGH = NMID 00000510 

NMID = NLOW+NHALF 00000520 

C-18 
Source FiLe: LSWT01.FOR 

C 

GO TO 110 

220 CONTINUE 

NL = NLOW 

NH = N~UD 

GO TO 500 

C TARGET EQUAL TO MIDPOINT MEMBER 

C 

C 

C 

300 CONTINUE 

NL = NMID-1 

NH = NMID 

GO TO 500 

400 CONTINUE 

C TARGET IS ABOVE MIDPOINT MEMBER 

C 

C 

C 

NHALF = (NHIGH-NMID)/2 

IF(NHALF) 420,420,410 

410 CONTINUE 

NLOW = NMID 

NMID = NLOW+NHALF 

GO TO 110 

420 CONTINUE 

NL = NMID 

NH = NHIGH 

500 CONTINUE 

C TARGET LOCATED 

C 

C 

C 

GO TO (600,700), IPASS 

600 CONTINUE 

NLX = NL 

NHX = NH 

NLZ = NX+1 

C RESET TO FIND Z POSITION IF REQUIRED 

C 

C 

IF(NZ.LE.O) GO TO 800 

IPASS = 2 

TARGET = Z 

NMAX = NZ 

NL = NX+1 

NH = NX+NZ 

NLOW = NL 

NMID = NLOW+NMAX/2 

NHIGH = NX+NMAX 

GO TO 100 

700 CONTINUE 

C-19 

Program Unit: BVTINT 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

00000680 

00000690 

00000700 

00000710 

00000720 

00000730 

00000740 

00000750 

00000760 

00000770 

00000780 

00000790 

00000800 

00000810 

00000820 

00000830 

00000840 

00000850 

00000860 

00000870 

00000880 

00000890 

00000900 

00000910 

00000920 

00000930 

00000940 

00000950 

00000960 

00000970 

00000980 

00000990 

00001000 

00001010 

00001020 

00001030 

00001040 
Source File: LSWT01.FOR 

C 

C 

NLZ = NL 

NHZ = NH 

800 CONTINUE 

C INTERPOLATE IN X AT LOW Z POSITION 

C 

XL = TABLE(NLX) 

XH = TABLE(NHX) 

NTAB = (NX+NZ)+(NLZ-NX-1)*NX+NLX 

YL = TABLE(NTAS) 

YH = TABLE(NTAB+1) 

IF(NX.EQ.1) YLOW = YL 

IF(NX.GT.1) YLOW = «YH-YL)/(XH-XL»*(X-XL)+YL 

C 

C SET INOREX FOR X RANGE 

C 

C 

INOREX = 0 

IF(X.LT.XL) INORX = -1 

IF(X.GT.XH) INORX = 1 

C RETURN IF Y = F(X) ONLY 

C 

Y = YLOW 

IF(NZ.LE.O) GO TO 900 

C 

C INTERPOLATE IN X AT HIGH Z POSITION 

C 

C 

ZL = TABLE(NLZ) 

ZH = TABLE(NHZ) 

NTAB = NTAB+NX 

YL = TABLE(NTAB) 

YH = TABLE(NTAB+1) 

IF(NX.EQ.1) YHIGH = YL 

IF(NX.GT.1) YHIGH = «YH-YL)/(XH-XL»*(X-XL)+YL 

C INTERPOLATE IN Z 

C 

IF(NZ.EQ.1) Y = YLOW 

IF(NZ.GT.1) Y = (YHIGH-YLOW)/(ZH-ZL)*(Z-ZL)+YLOW 

C 

C RESET INOREX FOR Z RANGE 

C 

C 

C 

INOREX = 0 

IF(Z.LT.ZL) INOREX=-1 

IF(Z.GT.ZH) INOREX=1 

900 CONTINUE 

RETURN 

END 

C-20 

Program Unit: BVTINT 

00001050 

00001060 

00001070 

00001080 

00001090 

00001100 

00001110 

00001120 

00001130 

00001140 

00001150 

00001160 

00001170 

00001180 

00001190 

00001200 

00001210 

00001220 

00001230 

00001240 

00001250 

00001260 

00001270 

00001280 

00001290 

00001300 

00001310 

00001320 

00001330 

00001340 

00001350 

00001360 

00001370 

00001380 

00001390 

00001400 

00001410 

00001420 

00001430 

00001440 

00001450 

00001460 

00001470 

00001480 

00001490 

00001500 

00001510 

00001520 

00001530 

00001540 

00001550 
Source File: LSWT01.FOR Program Unit: ZROLFT 

C ******************************************************************00000010 

C 00000020 

C LSWT01CZROLFT) 00000030 

C 00000040 

C USES BISECTION ITERATION TO LOCATE THE ZERO LIFT LINE ANGLE AT 00000050 

C A SPECIFIED REYNOLDS NUMBER FROM BIVARIENT AIRFOIL TABLES. IF 00000060 

C MUTIPLE TABLES DEFINE AIRFOIL THEN THE RESULT IS AVERAGED BETWEEN 00000070 

C TABLES. 00000080 

C 00000090 

C ******************************************************************00000100 

C 00000110 

SUBROUTINE ZROLFTCALPO,RE,JTAB1,JTAB2,AFTWF) 00000120 

C 00000130 

COMMON I AFTABL I NAFT, IDAFT(4), AFTOC(4), IAFTEX, 00000140 

1 STP1(4), STP2(4), STP3(4), 00000150 

2 STP4(4), STP5(4), STP6(4), 00000160 

3 CLTAB(200,4), NRCL(4), NACL(4), 00000170 

4 CDTAB(200,4), NRCD(4), NACD(4), 00000180 

5 CMTAB(100,4), NRCM(4), NACM(4) 00000190 

COMMON/ CONSTS / PI, RPD 00000200 

COMMON/ UNITS / IOU1, IOU5, IOU6, IOU7, IOU8, 00000210 

1 IOU10, IOU11, IOU12, IOU13 00000220 

C 00000230 

C ******************************************************************00000240 

C 00000250 

C FIRST PASS IS FOR JTAB1 AIRFOIL, SECOND PASS FOR JTAB2 IF REQUIRED00000260 

C 00000270 

JTAB = JTAB1 00000280 

IPASS = 1 00000290 

C 00000300 

50 CONTINUE 00000310 

C 00000320 

C SET INITIAL GUESS TO ZERO AND SENSE DIRECTION TO MARCH FOR TRAP 00000330 

C 00000340 

ALPO = 0.0 00000350 

CALL BVTINT(RE,CL,ALPO,NRCL(JTAB),NACL(JTAB),CLTAB(1,JTAB),INOREX)00000360 

IF(CL) 100,500,200 00000370 

C 00000380 

100 CONTINUE 00000390 

C 00000400 

C SEARCH IN POSITIVE DIRECTION ON ALPHA 00000410 

C 00000420 

AL1 = ALPO 00000430 

DO 120 ICOUNT = 1,20 00000440 

AL2 = AL1+1.0 00000450 

ALPO = AL2 00000460 

CALL BVTINT(RE,CL,ALPO,NRCL(JTAB),NACL(JTAB),CLTAB(1,JTAB),INOREX)00000470 

IF(CL) 110,500,300 00000480 

110 CONTINUE 00000490 

AL1 = AL2 00000500 

120 CONTINUE 00000510 

GO TO 450 00000520 

C-21 
Source File: LSWT01.FOR Program Unit: ZROLFT 

C 

C 

C 

C 

C 

C 

C 

C 

200 CONTINUE 

SEARCH IN NEGATIVE DIRECTION ON ALPHA 

00000530 

00000540 

00000550 

00000560 

00000570 

AL2 = ALPO 00000580 

DO 220 ICOUNT = 1,20 00000590 

AL1 = AL2-1.0 00000600 

ALPO = AL1 00000610 

CALL BVTINT(RE,CL,ALPO,NRCL(JTAB),NACL(JTAB),CLTAB(1,JTAB),INOREX)00000620 

IF(CL) 300,500,210 00000630 

210 CONTINUE 00000640 

AL2 = AL1 00000650 

220 CONTINUE 00000660 

GO TO 450 00000670 

300 CONTINUE 

ALPHA FOR ZERO LIFT HAS BEEN TRAPPED 

00000680 

00000690 

00000700 

00000710 

00000720 

DO 400 ICOUNT = 1,20 00000730 

ALPO = (AL1+AL2)/2.0 00000740 

CALL BVTINT(RE,CL,ALPO,NRCL(JTAB),NACL(JTAB),CLTAB(1,JTAB),INOREX)00000750 

IF(ABS(CL).LE.1.0E-04) GO TO 500 00000760 

IF(CL) 410,500,420 00000770 

410 CONTINUE 00000780 

AL1 = ALPO 00000790 

GO TO 400 00000800 

420 CONTINUE 00000810 

AL2 = ALPO 00000820 

400 CONTINUE 00000830 

C 00000840 

C 

C 

C 

C 

C 

C 

C 

C 

C 

450 CONTINUE 00000850 

00000860 

REPORT FAILURE AND HALT EXECUTION 00000870 

00000880 

WRITECIOU6,1 Q) 00000890 

10 FORMAT('0',4X,49('*')/ 

1 ' ',4X,'FAILURE TO 

2 ' ',4X,49('*'» 

STOP' , 

500 CONTINUE 

00000900 

FIND ZERO LIFT LINE ••• EXECUTION HALTED'/00000910 

00000920 

00000930 

00000940 

00000950 

00000960 

00000970 

ZERO LIFT ALPHA FOUND FOR THIS PASS, RESET PARAMETERS AND REPEAT 00000980 

FOR SECOND TABLE IF REQUIRED 00000990 

IF(JTAB1.EQ.JTAB2) 

IFCIPASS.EQ.2) 

IPASS = 2 

ALP01 = ALPO 

GO TO 700 

GO TO 600 

C-22 

00001000 

00001010 

00001020 

00001030 

00001040 
Source FiLe: LSWT01.FOR 

C 

C 

JTAB = JTAB2 

GO TO 50 

600 CONTINUE 

C ZERO LIFT LINE AVERAGED BETWEEN TABLES 

C 

C 

C 

ALPO = ALPO*AFTWF+ALP01*(1.0-AFTWF) 

700 CONTINUE 

ALPO = ALPO*RPD 

RETURN 

END 

C-23 

Program Unit: ZROLFT 

00001050 

00001060 

00001070 

00001080 

00001090 

00001100 

00001110 

00001120 

00001130 

00001140 

00001150 

00001160 

00001170 

00001180 
Source FiLe: LSWT02.FOR Program Unit: AICDLS 

C ******************************************************************00000010 

C 00000020 

C LSWT02(AICDLS) 00000030 

C 00000040 

C CALCULATES TWO-DIMENSIONAL SELF-INDUCED INFLUENCE COEFFICIENTS 00000050 

C 00000060 

C ******************************************************************00000070 

C 00000080 

SUBROUTINE AICDLS 00000090 

C 00000100 

COMMON/ CDLS / DLS(25) 00000110 

COMMON/ CGRID / NGRID(4), XG(6), YG(24), XCG(5) 00000120 

COMMON/ CONSTS / PI, RPD 00000130 

COMMON/ PNLNDX / MP, NP, NPANEL, 00000140 

1 MP1, NP1, NPNLSQ, 00000150 

2 NSGMNT, JGLIM(4,2), JCGLIM(4,2), 00000160 

3 NPS(4), NBLDS 00000170 

CO~MON/ CCIRC / CIRC(100), DCIRC(100), ACIRC(100), 00000180 

1 CIRCR(100), BCIRC(20), GO(20), 00000190 

2 TECF, AKM(6), XKM(5) 00000200 

C 00000210 

C ******************************************************************00000220 

C 00000230 

002PI = 1.0/2.0/PI 00000240 

C 00000250 

C SELECT COLLOCATION POINT ON SEGMENT 00000260 

C 00000270 

DO 200 M = 1, MP 00000280 

C 00000290 

C SWEEP VORTEX FILAMENTS ON SURFACE 00000300 

C 00000310 

DO 100 I = 1, MP 00000320 

DXL = XCG(M)-XG(I) 00000330 

DXT = XCG(M)-XG(I+1) 00000340 

ISTR = (I-1)*MP+M 00000350 

DLS(ISTR) = -002PI*(1.0/DXL-1.0/DXT) 00000360 

100 CONTINUE 00000370 

C 00000380 

C WAKE FILAMENT 00000390 

C 00000400 

OW = -002PI/DXT 00000410 

ISTR = MP**2 00000420 

DLS(ISTR) = DLS(ISTR)+TECF*DW 00000430 

200 CONTINUE 00000440 

C 00000450 

RETURN 00000460 

END 00000470 

C-24 
Source FiLe: LSWT02.FOR Program Unit: AICOS 

C ******************************************************************00000010 

C 00000020 

C LSWT02(AICDS) 00000030 

C 00000040 

C CALCULATES THE INFLUENCE COEFFICIENTS DUE TO THE LIFTING SURFACE 00000050 

C 00000060 

C ******************************************************************00000070 

C 00000080 

SUBROUTINE AICDS(IBLD) 00000090 

C 00000100 

DIMENSION DSN(100),DST(100) 00000110 

C 00000120 

COMMON! CONSTS ! PI, RPD 00000130 

COMMON! GVINT ! XA, VA, ZA, XB, VB, ZB, 00000140 

1 XC, YC, ZC, AN1C, AN2C, AN3C, 00000150 

2 AT1C, AT2C, AT3C 00000160 

COMMON! PNLCRD ! XS(6,24), YS(6,24), ZS(6,24), 00000170 

1 XCOL(5,20), YCOL(5,20), ZCOL(5,20) 00000180 

COMMON! PNLNDX ! MP, NP, NPANEL, 00000190 

1 MP1, NP1, NPNLSQ, 00000200 

2 NSGMNT, JGLIM(4,2), JCGLIM(4,2), 00000210 

3 NPS(4), NBLDS 00000220 

COMMON! PNLVEC ! AN1(5,20), AN2(5,20), AN3(5,20), 00000230 

1 AT1(5,20), AT2(5,20), AT3(5,20), 00000240 

2 AQC1(20), AQC2(20), AQC3(20) 00000250 

COMMON! UNITS ! IOU1, IOU5, IOU6, IOU7, IOU8, 00000260 

1 IOU10, IOU11, IOU12, IOU13 00000270 

C 00000280 

C ******************************************************************00000290 

C 00000300 

C SELECT COLLOCATION POINT 00000310 

C 00000320 

DO 400 M = 1,MP 00000330 

DO 400 N = 1,NP 00000340 

LP = (M-1)*NP+N 00000350 

XC = XCOL(M,N) 00000360 

YC = YCOL(M,N) 00000370 

ZC = ZCOL(M,N) 00000380 

AN1C = AN1(M,N) 00000390 

AN2C = AN2(M,N) 00000400 

AN3C = AN3(M,N) 00000410 

AT1C = AT1(M,N) 00000420 

AT2C = AT2(M,N) 00000430 

AT3C = AT3(M,N) 00000440 

C 00000450 

C INITIALIZE ROW OF COEFFICIENTS 00000460 

C 00000470 

DO 100 I = 1,NPANEL 00000480 

DSN(I) = 0.0 00000490 

DST(I) = 0.0 00000500 

100 CONTINUE 00000510 

C 00000520 

C-25 
Source FiLe: L5WT02.FOR 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

200 

SWEEP ALONG SPANWISE ELEMENTS IN CHORDWISE SEQUENCE 

DO 200 I = 1,MP1 

DO 200 JSEG = 1,NSGMNT 

JG1 = JGLIM(JSEG,1) 

JG2 = JG1+NPS(JSEG)-1 

JCG1 = JCGLIM(JSEG,1) 

JCG2 = JCGLIM(JSEG,2) 

DO 200 J = J G1,J G2 

JCG = JCG1 + (J-JG1) 

XA = XSO,J) 

YA = YS(I,J) 

ZA = ZSO,J) 

JP1 = J + 1 

XB = XSO,JP1) 

YB = YSO,JP1) 

ZB = ZSO,JP1) 

CALL VLINE(AIN,AIT) 

KPP = (I-1)*NP + JCG 

KPM = (I-2)*NP + JCG 

IFO.LT.MP1) DSN(KPP) 

IFO.GT.1) DSN(KPM) 

IF 0 . LT. MP1) DST<KPP) 

IF O. GT .1 ) DST<KPM) 

CONTINUE 

= DSN(KPP) 

= DSN(KPM) 

= DST(KPP) 

= DST<KPM) 

+ AIN 

- AIN 

+ AIT 

- AIT 

SWEEP ALONG CHORDWISE FILAMENTS IN SPANWISE SEQUENCE 

DO 300 JSEG = 1,NSGMNT 

JG1 = JGLIM(JSEG,1) 

JG2 = JGLIM(JSEG,2) 

JCG1 = JCGLIM(JSEG,1) 

JCG2 = JCGLIM(JSEG,2) 

DO 300 J = JG1,JG2 

JCG = JCG1 + (J-JG1) 

DO 300 I = 1,MP 

IP1 = I + 1 

XA = XSO,J) 

YA = YSO,J) 

ZA = ZSO,J) 

XB = XSOP1,J) 

YB = YS{I P1,J) 

ZB = ZS(IP1,J) 

C-26 

Program Unit: AlCDS 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

00000680 

00000690 

00000700 

00000710 

00000720 

00000730 

00000740 

00000750 

00000760 

00000770 

00000780 

00000790 

00000800 

00000810 

00000820 

00000830 

00000840 

00000850 

00000860 

00000870 

00000880 

00000890 

00000900 

00000910 

00000920 

00000930 

00000940 

00000950 

00000960 

00000970 

00000980 

00000990 

00001000 

00001010 

00001020 

00001030 

00001040 
Source FiLe: LSWT02.FOR 

C 

C 

C 

CALL VLINE(AIN,AIT) 

KPM = (I-1)*NP + JCG 

KPP = (I-1)*NP + (JCG-1) 

IF(J.LT.JG2) DSN(KPM) = DSN(KPM) - AIN 

IF(J.GT.JG1) DSN(KPP) = DSN(KPP) + AIN 

IF(J.LT.JG2) DST(KPM) = DST(KPM) - AIT 

IF(J.GT.JG1) DST(KPP) = DST(KPP) + AIT 

300 CONTI NUE 

C 

C WRITE ROW OF COEFFICIENTS TO DISK 

C 

C 

C 

IRECN = NPANEL*(IBLD-1) + LP 

IRECT = (NPANEL*NBLDS) + IRECN 

WRITE(IOU10, REC = IRECN) (DSN(J), J = 1,NPANEL) 

WRITE(IOU10, REC = IRECT) (DST(J), J = 1,NPANEL) 

400 CONTINUE 

RETURN 

END 

C-27 

Program Unit: AICOS 

00001050 

00001060 

00001070 

00001080 

00001090 

00001100 

00001110 

00001120 

00001130 

00001140 

00001150 

00001160 

00001170 

00001180 

00001190 

00001200 

00001210 

00001220 

00001230 

00001240 

00001250 

00001260 

00001270 
Source FiLe: LSWT02.FOR Program Unit: AICDW 

C ******************************************************************00000010 

C 00000020 

C LSWT02(AICDW) 00000030 

C 00000040 

C CALCULATES THE INFLUENCE COEFFICIENTS DUE TO THE TRAILING WAKE 00000050 

C 00000060 

C ******************************************************************00000070 

C 00000080 

SUBROUTINE AICDW(IBLD) 00000090 

C 00000100 

DIMENSION DWN(20),DWT(20) 00000110 

C 00000120 

COMMON! CONSTS ! PI, RPD 00000130 

COMMON! GVINT ! XA, VA, ZA, XB, VB, ZB, 00000140 

1 XC, YC, ZC, AN1C, AN2C, AN3C, 00000150 

2 AT1C, AT2C, AT3C 00000160 

COMMON! PNLCRD ! XS(6,24), YS(6,24), ZS(6,24), 00000170 

1 XCOL(s,20), YCOL(s,20), ZCOL(s,20) 00000180 

COMMON! PNLNDX ! MP, NP, NPANEL, 00000190 

1 MP1, NP1, NPNLSQ, 00000200 

2 NSGMNT, JGLIM(4,2), JCGLIM(4,2), 00000210 

3 NPS(4), NBLDS 00000220 

COMMON! PNLVEC ! AN1(s,20), AN2(s,20), AN3(s,20), 00000230 

1 AT1(s,20), AT2(s,20), AT3(s,20), 00000240 

2 AQC1(20), AQC2(20), AQC3(20) 00000250 

COMMON! UNITS ! IOU1, IOUs, IOU6, IOU?, IOU8, 00000260 

1 IOU10, IOU11, IOU12, IOU13 00000270 

COMMON! WAKCRD ! XW(133,24), YW(133,24), ZW(133,24) 00000280 

COMMON! WAKNDX ! REVS, NWIPR, NWI, 00000290 

1 KMAX(24), IFWAK, JS(3,2), 00000300 

2 PSIMR, PSIMT, IROLL 00000310 

C 00000320 

C ******************************************************************00000330 

C 00000340 

C READ SOURCE BLADE WAKE COORDINATES FROM DISK 00000350 

C 00000360 

DO 50 J = 1,NP1 00000370 

IREC = (IBLD-1)*NP1+J 00000380 

READ(IOU13, REC = IREC) (XW(K,J),YW(K,J),ZW(K,J), K = 1,KMAX(J» 00000390 

50 CONTINUE 00000400 

C 00000410 

C SELECT COLLOCATION POINT 00000420 

C 00000430 

DO 500 M = 1,MP 00000440 

DO 500 N = 1,NP 00000450 

C 00000460 

LP = (M-1)*NP+N 00000470 

XC = XCOL(M,N) 00000480 

YC = YCOL(M,N) 00000490 

ZC = ZCOL(M,N) 00000500 

AN1C = AN1(M,N) 00000510 

AN2C = AN2(M,N) 00000520 

C-28 
Source FiLe: LSWT02.FOR 

C 

AN3C = AN3(M,N) 

AT1 C = AT1 (M,N) 

AT2C = AT2 (M,N) 

AT3C = AT3(M,N) 

C INITIALIZE COEFFICIENT MATRICES' ROWS 

C 

C 

DO 100 J = 1,NP 

DWN(J) = 0.0 

DWT(J) = 0.0 

100 CONTI NUE 

C SWEEP SPANWISE ALONG WAKE LEADING EDGE 

C 

C 

C 

C 

C 

DO 200 JSEG = 1,NSGMNT 

JG1 = JGLIM(JSEG,1) 

JG2 = JGLIM(JSEG,2) 

JCG1 = JCGLI~(JSEG,1) 

JCG2 = JCGLIM(JSEG,2) 

DO 200 J = JG1,JG2-1 

JCG = JCG1+(J-JG1) 

C ASSIGN END POINT COORDINATES TO VORTEX SEGMENT 

C 

C 

C 

C 

C 

XA = XW(1,J) 

YA = YW(1,J) 

ZA = ZW(1,J) 

JP1 = J+1 

XB = XW(1,JP1) 

YB = YW(1,JP1) 

ZB = ZW(1,JP1) 

CALL VLINE(AIN,AIT) 

DWN(JCG) = DWN(JCG)+AIN 

DWT(JCG) = DWT(JCG)+AIT 

200 CONTINUE 

C SWEEP TRAILERS AND CALCULATE CONTRIBUTION OF EACH 

C 

C 

C 

DO 400 JSEG = 1,NSGMNT 

JG1 = JGLI~(JSEG,1) 

JG2 = JGLIM(JSEG,2) 

JCG1 = JCGLIM(JSEG,1) 

JCG2 = JCGLIM(JSEG,2) 

DO 400 J = JG1,JG2 

C-29 

Program Unit: AICDW 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

00000680 

00000690 

00000700 

00000710 

00000720 

00000730 

00000740 

00000750 

00000760 

00000770 

00000780 

00000790 

00000800 

00000810 

00000820 

00000830 

00000840 

00000850 

00000860 

00000870 

00000880 

00000890 

00000900 

00000910 

00000920 

00000930 

00000940 

00000950 

00000960 

00000970 

00000980 

00000990 

00001000 

00001010 

00001020 

00001030 

00001040 
Source FiLe: LSWT02.FOR Program Unit: AICDW 

C 

C 

JCG = JCG1+(J-JG1) 

K1 = 1 

K2 = KMAX(J)-1 

IFWSKP = 0 

ISTORE = 0 

C CHECK IF WITHIN INBOARD OR OUTBOARD SHEET 

C 

C 

C 

IF(JS(1,1).LE.J .AND. J.LE.JS(1,2» GO TO 301 

IF(JS(3,1).LE.J .AND. J.LE.JS(3,2» GO TO 301 

GO TO 300 

301 CONTINUE 

IFWSKP = 1 

C SET AZIMUTH LIMITS FOR FIRST PASS ALONG ROLLED-UP VORTEX 

C 

C 

IF(J.EQ.1) K2 = KMAX(2)-1 

IF(J.EQ.NP1) K2 = KMAX(NP1-1)-1 

C SUM INFLUENCES OF ELEMENTS ALONG TRAILER 

C 

300 CONTINUE 

C 

AINS = 0.0 

AITS = 0.0 

C 

DO 310 K = K1,K2 

C 

XA = XW(K,J) 

YA = YW(K,J) 

ZA = ZW(K,J) 

KP1 = K+1 

XB = XW(KP1,J) 

YB = YW(KP1,J) 

ZB = ZW(KP1,J) 

C 

CALL VLINE(AIN,AIT) 

C 

AINS = AINS+AIN 

AITS = AITS+AIT 

C 

310 CONTINUE 

C 

IF (IFWAK. EQ. Q) GO TO 320 

IF (IFWSKP. EQ.1) GO TO 320 

C 

C CALCULATE FAR WAKE CONTRIBUTION FROM CYLINDER REPRESENTATION 

C 

XA = XB 

YA = YB 

C-30 

00001050 

00001060 

00001070 

00001080 

00001090 

00001100 

00001110 

00001120 

00001130 

00001140 

00001150 

00001160 

00001170 

00001180 

00001190 

00001200 

00001210 

00001220 

00001230 

00001240 

00001250 

00001260 

00001270 

00001280 

00001290 

00001300 

00001310 

00001320 

00001330 

00001340 

00001350 

00001360 

00001370 

00001380 

00001390 

00001400 

00001410 

00001420 

00001430 

00001440 

00001450 

00001460 

00001470 

00001480 

00001490 

00001500 

00001510 

00001520 

00001530 

00001540 

00001550 

00001560 
Source FiLe: LSWT02.FOR 

C 

C 

C 

C 

C 

ZA = ZB 

CALL VCYLN(AIN,AIT) 

AINS = AINS+AIN 

AITS = AITS+AIT 

320 CONTINUE 

IF(ISTORE.EQ.1) GO TO 350 

C STORE SHEET TRAILER AIC INTO COEFFICIENT ARRAY BUFFERS 

C 

C 

C 

J P = JCG-1 

JM = JCG 

IF(J.LT.JG2) 

IF(J .GT .JG1) 

IF(J.LT.JG2) 

IF(J.GT.JG1) 

DWN(JM) = DWN(JM)-AINS 

DWN(JP) = DWN(JP)+AINS 

DWT(JM) = DWT(JM)-AITS 

DWT(JP) = DWT(JP)+AITS 

IF(J.NE.1 .AND. J.NE.NP1) GO TO 400 

Program Unit: AICDW 

C RESET FOR SECOND PASS ALONG ROLLED-UP ROOT OR TIP VORTEX 

00001570 

00001580 

00001590 

00001600 

00001610 

00001620 

00001630 

00001640 

00001650 

00001660 

00001670 

00001680 

00001690 

00001700 

00001710 

00001720 

00001730 

00001740 

00001750 

00001760 

00001770 

00001780 

00001790 

00001800 

00001810 

00001820 

00001830 

00001840 

00001850 

00001860 

00001870 

00001880 

00001890 

00001900 

00001910 

00001920 

00001930 

00001940 

00001950 

00001960 

00001970 

00001980 

00001990 

00002000 

00002010 

00002020 

00002030 

00002040 

00002050 

00002060 

00002070 

00002080 

C 

C CHECK IF ROOT VORTEX IS ROLLED-UP 

C 

IF(J.EQ.1 .AND. JS(1,1).EQ.0) GO TO 400 

C 

C CHECK IF TIP VORTEX IS ROLLED-UP 

C 

IF(J.EQ.NP1 .AND. JS(3,1).EQ.0) GO TO 400 

C 

C DETERMINE AIC STORAGE INDEX 

C 

C 

IF(J.EQ.1) JROLL = JS(1,2) 

IF(J.EQ.NP1) JROLL = JS(3,1) 

C FIND SEGMENT OF ROLLED UP VORTEX 

C 

C 

C 

C 

DO 330 JSEG2=1,NSGMNT 

IF(JGLIM(JSEG2,1).LE.JROLL .AND. 

1 JROLL.LE.JGLIM(JSEG2,2» GO TO 340 

330 CONTINUE 

340 CONTINUE 

JCG = JCGLIM(JSEG2,1)+(JROLL-JGLIM(JSEG2,1» 

IF(J.EQ.NP1) JCG = JCG-1 

K1 = K2+1 

K2 = KMAX(J)-1 

IFWSKP = 0 

C-31 
Source FiLe: LSWT02.FOR Program Unit: AICOW 

ISTORE = 1 

C 

GO TO 300 

C 

350 CONTINUE 

C 

C STORE ROLLED-UP VORTEX AIC INTO COEFFICIENT ARRAY BUFFER 

00002090 

00002100 

00002110 

00002120 

00002130 

00002140 

00002150 

00002160 

00002170 

00002180 

00002190 

00002200 

00002210 

00002220 

00002230 

00002240 

00002250 

00002260 

00002270 

00002280 

00002290 

00002300 

00002310 

00002320 

00002330 

00002340 

C 

IF(J .EQ.1) DWN(JCG) = DWN(JCG)-AINS 

IF(J.EQ.NP1) DWN(JCG) = DWN(JCG)+AINS 

IF(J.EQ.1) DWT(J CG) = DWT(J CG) -AITS 

IF(J .EQ.NP1) DWT( J CG) = DWT(JCG)+AITS 

C 

400 CONTINUE 

C 

C WRITE COEFFICIENT MATRICES' ROWS TO DISK 

C 

C 

IRECN = NPANEL*(IBLD-1)+LP 

IRECT = NPANEL*NBLDS+IRECN 

WRITE(IOU11,REC=IRECN) (DWN(J), J = 1,NP) 

WRITE(IOU11,REC=IRECT) (DWT(J), J = 1,NP) 

500 CONTINUE 

C 

RETURN 

END 

C-32 
Source FiLe: LSWT02.FOR Program Unit: AICDSW 

C ******************************************************************00000010 

C 00000020 

C LSWT02(AICDSW) 00000030 

C 00000040 

C ASSEMBLES THE AERODYNAMIC INFLUENCE COEFFICIENTS OF THE LIFTING 00000050 

C SURFACE AND TRAILED WAKE BY COMBINING THROUGH THE KUTTA CONDITION.00000060 

C THE SELF-INDUCED COMPONENT OF THE AIC'S IS THEN MODIFIED FOR 00000070 

C NON-POTENTIAL LIFT CURVE SLOPE. 00000080 

C 00000090 

C ******************************************************************00000100 

C 00000110 

SUBROUTINE AICDSW(ITBLD) 00000120 

C 00000130 

DIMENSION DSWN(100),DSWT(100),DSN(100),DST(100),DWN(20),DWT(20) 00000140 

C 00000150 

COMMONI ALSLP I ALS(20), ALSNEW(20), ALSOLD(20) 00000160 

COMMONI BLDELE I XCLE(20), YCG(20), RBE(20), 00000170 

1 DBES(20), CLAMLE(20), CLAMQC(20), 00000180 

2 CHDCGL(20), BETAL(20), AFTWF(20), 00000190 

3 JTAB(20,2), TOC(20), RE(20), 00000200 

4 CLT(20), CDT(20), CMT(20), 00000210 

5 CDS(20) 00000220 

COMMONI CCIRC I CIRC(100), DCIRC(100), ACIRC(100), 00000230 

1 CIRCR(100), BCIRC(20), GO(20), 00000240 

2 TECF, AKM(6), XKM(5) 00000250 

COMMON I CDLS I DLS(25) 00000260 

COMMONI CONSTS I PI, RPD 00000270 

COMMONI PARMS I RADIUS, OMEGA, OMEGAR, RHO, AMU 00000280 

COMMONI PNLNDX IMP, NP, NPANEL, 00000290 

1 MP1, NP1, NPNLSQ, 00000300 

2 NSGMNT, JGLIM(4,2), JCGLIM(4,2), 00000310 

3 NPS(4), NBLDS 00000320 

COMMONI UNITS I IOU1, IOU5, IOU6, IOU7, IOU8, 00000330 

1 IOU10, IOU11, IOU12, IOU13 00000340 

C 00000350 

C ******************************************************************00000360 

C 00000370 

C SWEEP TARGET PANELS (SOLUTION POINTS) 00000380 

C 00000390 

DO 600 LP = 1,NPANEL 00000400 

C 00000410 

C INITIALIZE COEFFICIENT MATRICES' ROWS 00000420 

C 00000430 

DO 100 KP = 1,NPANEL 00000440 

DSWN(KP) = 0.0 00000450 

DSWT(KP) = 0.0 00000460 

100 CONTINUE 00000470 

C 00000480 

C COMBINE INFLUENCES OF ALL BLADES AND WAKES 00000490 

C 00000500 

DO 400 ISBLD = 1,NBLDS 00000510 

C 00000520 

C-33 
Source FiLe: LSWT02.FOR Program Unit: AICDSW 

C READ ROWS LP OF COEFFICIENT MATRICES FROM DISK 00000530 

C 00000540 

IRECN = NPANEL*(ISBLD-1)+LP 00000550 

IRECT = NPANEL*NBLDS+IRECN 00000560 

C 00000570 

C SURFACE 00000580 

C 00000590 

READ(IOU10, REC = IRECN) (DSN(J), J = 1,NPANEL) 00000600 

READ(IOU10, REC = IRECT) (DST(J), J = 1,NPANEL) 00000610 

C 00000620 

C WAKE 00000630 

C 00000640 

READ(IOU11, REC = IRECN) (DWN(J), J = 1,NP) 00000650 

READ(IOU11, REC = IRECT) (DWT(J), J = 1,NP) 00000660 

C 00000670 

C ADD SURFACE AND WAKE COEFFICIENTS 00000680 

C 00000690 

KP1 = 1 00000700 

KP2 = (MP-2)*NP+NP 00000710 

C 00000720 

DO 200 KP = KP1,KP2 00000730 

CIRRAT = CIRCR(KP) 00000740 

IF(ISBLD.EQ.ITBLD) CIRRAT = 1.0 00000750 

DSWN(KP) = DSWN(KP) + (DSN(KP) * CIRRAT) 00000760 

DSWT(KP) = DSWT(KP) + (DST(KP) * CIRRAT) 00000770 

200 CONTINUE 00000780 

C 00000790 

C WAKE IS COMBINED THROUGH THE KUTTA CONDITION, EXPRESSED BY THE 00000800 

C RATIO TECF OF WAKE CIRCULATION TO TRAILING EDGE PANEL CIRCULATION 00000810 

C 00000820 

KP1 = KP2+1 00000830 

KP2 = NPANEL 00000840 

C 00000850 

DO 300 KP = KP1,KP2 00000860 

JW = KP-KP1+1 00000870 

CIRRAT = CIRCR(KP) 00000880 

IF(ISBLD.EQ.ITBLD) CIRRAT = 1.0 00000890 

DSWN(KP) = DSWN(KP) + «DSN(KP) + TECF * DWN(JW» * CIRRAT) 00000900 

DSWT(KP) = DSWT(KP) + «DST(KP) + TECF * DWT(JW» * CIRRAT) 00000910 

300 CONTINUE 00000920 

C 00000930 

400 CONTINUE 00000940 

C 00000950 

C MODIFY FOR NON-POTENTIAL SECTIONAL LIFT CURVE SLOPE 00000960 

C 00000970 

LPJ = LP-«LP-1)/NP)*NP 00000980 

LPI = (LP-1)/NP+1 00000990 

C 00001000 

DO 500 I = 1,MP 00001010 

ISTRLS = (I-1)*MP+LPI 00001020 

KP = (I-1)*NP+LPJ 00001030 

DSWN(KP) = DSWN(KP)+(2.0*PI/ALS(LPJ)-1.0)*DLS(ISTRLS)/CHDCGL(LPJ) 00001040 

C-34 
Source FiLe: lSWT02.FOR 

500 CONTINUE 

C 

C WRITE COMBINED COEFFICIENT MATRIX ROW LP TO DISK 

C 

C 

C 

IRECN = LP 

IRECT = NPANEL+LP 

WRITE(IOU12, REC = IRECN) (DSWN(KP), KP = 1,NPANEL) 

WRITE(IOU12, REC = IRECT) (OSWT(KP), KP = 1,NPANEL) 

600 CONTINUE 

RETURN 

END 

C-35 

Program Unit: AICDSW 

00001050 

00001060 

00001070 

00001080 

00001090 

00001100 

00001110 

00001120 

00001130 

00001140 

00001150 

00001160 

00001170 
Source FiLe: LSWT02.FOR Program Unit: GSITER 

C ******************************************************************00000010 

C 00000020 

C LSWT02(GSITER) 00000030 

C 00000040 

C GAUSS-SEIDEL ITERATIVE SOLUTION OF LINEAR SIMULTANEOUS EQUATIONS 00000050 

C OF THE FORM {A}[X] = [B] 00000060 

C 00000070 

C ******************************************************************00000080 

C 00000090 

SUBROUTINE GSITER(N) 00000100 

C 00000110 

DIMENSION A(100),X(100),B(100) 00000120 

C 00000130 

COMMON! CCIRC ! CIRC(100), DCIRC(100), ACIRC(100), 00000140 

1 CIRCR(100), BCIRC(20), GO(20), 00000150 

2 TECF, AKM(6), XKM(S) 00000160 

COMMON! CONTRL ! TOL1, TOL2, TOL3, ICYL1, ICYL2, ICYL3, 00000170 

1 ICYL4 00000180 

COMMON! NMWSH ! NRMWSH(100) 00000190 

COMMON! PARMS ! RADIUS, OMEGA, OMEGAR, RHO, AMU 00000200 

COMMON! UNITS ! IOU1, IOU5, IOU6, IOU7, IOU8, 00000210 

1 IOU10, IOU11, IOU12, IOU13 00000220 

C 00000230 

EQUIVALENCE (X,CIRC), (B,NRMWSH) 00000240 

C 00000250 

C ******************************************************************00000260 

C 00000270 

C NORMALIZE SOLUTION VECTOR 00000280 

C 00000290 

SCLFAC = OMEGAR*RADIUS 00000300 

DO 50 I = 1,N 00000310 

XCI) = X(I)!SCLFAC 00000320 

50 CONTINUE 00000330 

C 00000340 

C SET MAXIMUM TOLERANCE 00000350 

C 00000360 

TOLMAX = 1.0E-OS 00000370 

IF(TOL1.GT.0.0) TOLMAX = TOL1 00000380 

C 00000390 

C INITIALIZE CONVERGENCE CHECK 00000400 

C 00000410 

SUMX = 0.0 00000420 

C 00000430 

C ALLOW ITCYLM CYLES TO CONVERGE 00000440 

C 00000450 

ITCYLM = ICYL1 00000460 

IF(ITCYLM.EQ.O) ITCYLM = 100 00000470 

C 00000480 

DO 100 ITCYL = 1,ITCYLM 00000490 

C 00000500 

SUMXP = 0.0 00000510 

C 000OO5~ 

C-36 
Source FiLe: LSNT02.FOR 

DO 200 I = 1,N 

C 

C READ ROW I OF COEFFICIENT MATRIX INTO A 

C 

READ(IOU12, REC = I) (A(J), J = 1,N) 

C 

C CALCULATE NEW APPROXIMATION TO XCI) 

C 

C 

C 

AX = B(I)+A(I)*X(I) 

DO 300 J = 1,N 

AX = AX-A(J)*X(J) 

300 CONTINUE 

XCI) = 0.5*(AX/A(I) - XCI»~ + XCI) 

C 

C SUM X VECTOR FOR CONVERGENCE CHECK 

C 

C 

C 

C 

C 

C 

SUMXP = SUMXP+ABS(X(I» 

200 CONTINUE 

TOl = ABS«SUMXP-SUMX)/SUMXP) 

IF(TOl.lE.TOlMAX) GO TO 500 

SUMX = SUMXP 

100 CONTINUE 

C SOLUTION VECTOR NOT CONVERGED WITHIN ITMAX ITERATIONS 

C 

WRITE(IOU6,10) ITCYLM,TOL,TOLMAX 

10 FORMAT('1',9X,'*** ERROR *** SUBROUTINE GSITER',I 

1 ' ',9X,'CONVERGENCE NOT OBTAINED AT ITERATION 

2 ' ',9X,'CURRENT TOLERANCE =',1PE12.4,1 

3 ' ',9X,'ALLOWABLE TOLERANCE =',1PE12.4) 

C 

STOP' , 

C 

500 CONTINUE 

C 

C RESCALE SOLUTION VECTOR 

C 

C 

DO 700 I = 1,N 

XCI> = X(I)*SCLFAC 

700 CONTINUE 

RETURN 

END 

C-37 

Program Unit: GSITER 

',13,1 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

00000680 

00000690 

00000700 

00000710 

00000720 

00000730 

00000740 

00000750 

00000760 

00000770 

00000780 

00000790 

00000800 

00000810 

00000820 

00000830 

00000840 

00000850 

00000860 

00000870 

00000880 

00000890 

00000900 

00000910 

00000920 

00000930 

00000940 

00000950 

00000960 

00000970 

00000980 

00000990 

00001000 

00001010 
Source FiLe: LSWT02.FOR Program Unit: VLINE 

C ******************************************************************00000010 

C 00000020 

C LSWT02(VLINE) 00000030 

C 00000040 

C APPLIES THE BIOT-SAVART LAW TO CALCULATE THE VELOCITY INDUCED BY 00000050 

C A FINITE LENGTH LINE VORTEX OF UNIT STRENGTH 00000060 

C 00000070 

C ******************************************************************00000080 

C 00000090 

SUBROUTINE VLINE(AIN,AIT) 00000100 

C 00000110 

COMMON/ CONSTS / PI, RPD 00000120 

COMMON/ GVINT / XA, VA, ZA, XB, VB, ZB, 00000130 

1 XC, YC, ZC, AN1C, AN2C, AN3C, 00000140 

2 AT1C, AT2C, AT3C 00000150 

C 00000160 

C ******************************************************************00000170 

C 00000180 

A = (XA-XC)**2 + (YA-YC)**2 + (ZA-ZC)**2 00000190 

B = 2.0*( (XA-XB)*(XC-XA) + (YA-YB)*(YC-YA) + (ZA-ZB)*(ZC-ZA» 00000200 

C = (XA-XB)**2 + (YA-YB)**2 + (ZA-ZB)**2 00000210 

C 00000220 

C1 = (YC-YB)*ZA + (YA-YC)*ZB + (YB-YA)*ZC 00000230 

C2 = (ZC-ZB)*XA + (ZA-ZC)*XB + (ZB-ZA)*XC 00000240 

C3 = (XC-XB)*YA + (XA-XC)*YB + (XB-XA)*YC 00000250 

C 00000260 

Q = 4.0*A*C - B**2 00000270 

C 00000280 

C POINTS ARE COLINEAR IF Q=O, THEN QB=O 00000290 

C 00000300 

QB = 0.0 00000310 

IF(ABS(Q).GT.(1.0E-10» QB = 2.0/Q*«2.0*C+B)/SQRT(A+B+C) 00000320 

1 -B/SQRT(A»/4.0/PI 00000330 

C 00000340 

Q1 = C1*QB 00000350 

Q2 = C2*QB 00000360 

Q3 = C3*QB 00000370 

C 00000380 

AIN = AN1C*Q1 + AN2C*Q2 + AN3C*Q3 00000390 

AIT = AT1C*Q1 + AT2C*Q2 + AT3C*Q3 00000400 

C 00000410 

RETURN 00000420 

END 00000430 

C-38 
Source FiLe: LSVT02.FOR Program Unit: VCYLN 

C ******************************************************************00000010 

C 00000020 

C LSWT02(VCYLN) 00000030 

C 00000040 

C USES DIRECT NUMERICAL INTEGRATION TO CALCULATE THE VELOCITY 00000050 

C INDUCED BY A SEMI-INFINITE VORTEX CYLINDER OF UNIT STRENGTH 00000060 

C 00000070 

C ******************************************************************00000080 

C 00000090 

SUBROUTINE VCYLN(AIN,AIT) 00000100 

C 00000110 

COMMON! CONSTS / PI, RPD 00000120 

COMMON/ GVINT / XA, YA, ZA, XB, YB, ZB, 00000130 

1 XC, YC, ZC, AN1C, AN2C, AN3C, 00000140 

2 AT1C, AT2C, AT3C 00000150 

COMMON! WRATES / AKZW, AKZI, AKZ, AKR, A, AKB, 00000160 

1 CTRW, AKZO, ALAMO, AKRO, VAXB, VNUB 00000170 

C 00000180 

C ******************************************************************00000190 

C 00000200 

RC = SQRT(XC**2+YC**2) 00000210 

RA = SQRT(XA**2+YA**2) 00000220 

ZAC = ZA-ZC 00000230 

ZAC = ZAC*SIGN(1.0,AKZW) 00000240 

AKZ = AKZW+AKZI 00000250 

C 00000260 

C SET STEP SIZE PROPORTIONAL TO Z 00000270 

C 00000280 

STEPS = 10.0 00000290 

ABSZ = ABS(ZAC) 00000300 

IF(ABSZ.LT.1.0) STEPS = -90.0*ABSZ+100.0 00000310 

ISTEPS = IFIXCSTEPS) 00000320 

STEPS = FLOAT(ISTEPS) 00000330 

DPHI = 2.0*PI!STEPS 00000340 

C 00000350 

C INITIALIZE NUMERICAL INTEGRATION 00000360 

C 00000370 

PHI = DPHI!2.0 00000380 

VZ = 0.0 00000390 

VR = 0.0 00000400 

C 00000410 

DO 100 I = 1,ISTEPS 00000420 

C 00000430 

T1 = RA-RC*COS(PHI) 00000440 

T2 = RC**2+RA**2-2.0*RA*RC*COS(PHI) 00000450 

T3 = SQRT(RC**2+RA**2+ZAC**2-2.0*RA*RC*COS(PHI» 00000460 

C 00000470 

C AXIAL VELOCITY INDUCED BY SEMI-INFINITE VORTEX CYLINDER 00000480 

C 00000490 

VZ = VZ+RA*T1/T2*(1.0-ZAC/T3) 00000500 

C 00000510 

C RADIAL VELOCITY INDUCED BY SEMI-INFINITE VORTEX CYLINDER 00000520 

C-39 
Source FiLe: LSVT02.FOR 

C 

C 

C 

C 

C 

VR = VR+RA*COS(PHI)/T3 

PHI = PHI+DPHI 

100 CONTINUE 

T4 = -DPHI/8.0/PI**2/AKZ 

T4 = T4*SIGN(1.0,AKZ) 

VZ = VZ*T4 

VR = VR*T4 

C RESOLVE FROM CYLINDRICAL TO CARTESIAN 

C 

C 

VX = VR*XC/RC 

VY = VR*YC/RC 

C NORMAL AND TANGENTIAL INFLUENCE COEFFICIENT COMPONENTS 

C 

C 

AIN = AN1C*VX + AN2C*VY + AN3C*VZ 

AIT = AT1C*VX + AT2C*G2 + AT3C*VZ 

RETURN 

END 

C-40 

Program Unit: VCYLN 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

00000680 

00000690 

00000700 

00000710 

00000720 

00000730 

00000740 

00000750 

00000760 
Source FiLe: LSWT03.FOR Program Unit: GRID 

C ******************************************************************00000010 

C 00000020 

C LSWT03(GRID) 00000030 

C 00000040 

C GENERATES NONDIMENSIONAL GRID COORDINATES FOR PANEL AND 00000050 

C COLLOCATION POINT LAYOUT. 00000060 

C 00000070 

C CHORDWISE GRID IS A HALF-COSINE DISTRIBUTION BIASED TOWARD THE 00000080 

C LEADING EDGE. 00000090 

C 00000100 

C SPANWISE GRID IS OPTIONED ON 'NGRID' FOR EACH SEGMENT: 00000110 

C NGRID=1 EQUAL SPACING 00000120 

C NGRID=2 FULL-COSINE 00000130 

C NGRID=3 HALF-COSINE BIASED INBOARD 00000140 

C NGRID=4 HALF-COSINE BIASED OUTBOARD 00000150 

C 00000160 

C ******************************************************************00000170 

C 00000180 

SUBROUTINE GRID 00000190 

C 00000200 

COMMON/ CGRID / NGRID(4), XG(6), YG(24), XCG(5) 00000210 

COMMON/ CONFIG / XOCREF(4), YSEG(4,2), JCHORD(4,2), 00000220 

1 YCHORD(24), CHORD(24), JTWIST{4,2), 00000230 

2 YTWIST(24), TWIST(24), JXAOFF(4,2), 00000240 

3 YXAOFF(24), XAOFF(24), JAFT(4,2), 00000250 

4 YAFT(24,2), IDAF(24), XTRAN(4), 00000260 

5 YTRAN(4), ZTRAN(4), XROT(4), 00000270 

6 YROT(4), ZROT(4) 00000280 

COMMON/ CONSTS / PI, RPD 00000290 

COMMON/ PNLNDX / MP, NP, NPANEL, 00000300 

1 MP1, NP1, NPNLSQ, 00000310 

2 NSGMNT, JGLIM(4,2), JCGLIM(4,2), 00000320 

3 NPS(4), NBLDS 00000330 

C 00000340 

C ******************************************************************00000350 

C 00000360 

MP1 = MP+1 00000370 

C 00000380 

C CHORDWISE GRID 00000390 

C 00000400 

DPHI = PI/2.0/MP 00000410 

C 00000420 

DO 100 I = 1,MP1 00000430 

PHI = (I-1)*DPHI 00000440 

XG(I) = 1.0-COS(PHI) 00000450 

100 CONTINUE 00000460 

C 00000470 

C SPANWISE GRID FOR EACH SEGMENT 00000480 

C 00000490 

JG2 = 0 00000500 

JCG2 = 0 00000510 

C 00000520 

C-41 
Source FiLe: LSWT03.FOR 

C 

C 

C 

DO 1000 JSEG = 1,NSGMNT 

J G1 = J G2+1 

JG2 = JG1+NPS(JSEG) 

JGLIM(JSEG,1) = JG1 

JGLIM(JSEG,2) = JG2 

J CG1 = J CG2+1 

JCG2 = JCG1+NPS(JSEG)-1 

JCGLIM(JSEG,1) = JCG1 

JCGLIM(JSEG,2) = JCG2 

DYSEG = YSEG(JSEG,2)-YSEG(JSEG,1) 

YG1 = YSEG(JSEG,1) 

GO TO (200,300,400,500), NGRID(JSEG) 

C EQUAL SPACING 

C 

C 

C 

C 

200 CONTINUE 

DELY = DYSEG/NPS(JSEG) 

DO 250 J = JG1,JG2 

YG(J) = DELY*(J-JG1)+YG1 

250 CONTINUE 

GO TO 1000 

C FULL-COSINE SPACING 

C 

C 

300 CONTINUE 

DPHI = PI/NPS(JSEG) 

DO 350 J = JG1,JG2 

PHI = PI-(J-JG1)*DPHI 

YG(J) = (1.0+COS(PHI»/2.0*DYSEG+YG1 

350 CONTINUE 

C 

GO TO 1000 

C 

C HALF-COSINE BIASED INBOARD 

C 

C 

C 

C 

400 CONTINUE 

DPHI = PI/2.0/NPS(JSEG) 

DO 450 J = JG1,JG2 

PHI = PI-(J-JG1)*DPHI 

YG(J) = (1.0+COS(PHI»*DYSEG+YG1 

450 CONTINUE 

GO TO 1000 

C HALF-COSINE BIASED OUTBOARD 

C 

C-42 

Program Unit: GRID 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

00000680 

00000690 

00000700 

00000710 

00000720 

00000730 

00000740 

00000750 

00000760 

00000770 

00000780 

00000790 

00000800 

00000810 

00000820 

00000830 

00000840 

00000850 

00000860 

00000870 

00000880 

00000890 

00000900 

00000910 

00000920 

00000930 

00000940 

00000950 

00000960 

00000970 

00000980 

00000990 

00001000 

00001010 

00001020 

00001030 

00001040 
Source FiLe: LSWT03.FOR 

C 

C 

500 CONTINUE 

DPHI = PI/2.0/NPS(JSEG) 

DO 550 J = JG1,JG2 

PHI = PI/2.0-(J-JG1)*DPHI 

YG(J) = COS(PHI)*DYSEG+YG1 

550 CONTINUE 

1000 CONTINUE 

C 

C PANEL INDEX PARAMETERS 

C 

C 

NP = JCGLIM(NSGMNT,2) 

NP1 = JGLIM(NSGMNT,2) 

NPANEL = MP*NP 

NPNLSQ = NPANEL**2 

C COLLOCATION POINT GRID 

C 

C 

CALL COLCRD 

RETURN 

END 

C-43 

Program Unit: GRID 

00001050 

00001060 

00001070 

00001080 

00001090 

00001100 

00001110 

00001120 

00001130 

00001140 

00001150 

00001160 

00001170 

00001180 

00001190 

00001200 

00001210 

00001220 

00001230 

00001240 

00001250 

00001260 

00001270 
Source FiLe: lSWT03.FOR Program Unit: COlCRO 

C ******************************************************************00000010 

C 00000020 

C lSWT03(COLCRD) 00000030 

C 00000040 

C CALCULATES THE NONDIMENSIONAL CHORDWISE LOCATION OF COLLOCATION 00000050 

C POINTS BASED ON TWO-DIMENSIONAL MEAN CIRCULATION 00000060 

C 00000070 

C ******************************************************************00000080 

C 00000090 

SUBROUTINE COLCRD 00000100 

C 00000110 

COMMON/ CCIRC / CIRC(100), DCIRC(100), ACIRC(100), 00000120 

1 CIRCR(100), BCIRC(20), GO(20), 00000130 

2 TECF, AKM(6), XKM(5) 00000140 

COMMONI CGRID I NGRID(4), XG(6), YG(24), XCG(5) 00000150 

COMMON I CONSTS I PI, RPD 00000160 

COMMONI PNLNDX IMP, NP, NPANEL, 00000170 

1 MP1, NP1, NPNLSQ, 00000180 

2 NSGMNT, JGLIM(4,2), JCGlIM(4,2), 00000190 

3 NPS(4), NBLDS 00000200 

COMMONI UNITS I IOU1, IOU5, IOU6, IOU7, IOU8, 00000210 

1 IOU10, IOU11, IOU12, IOU13 00000220 

C 00000230 

C ******************************************************************00000240 

C 00000250 

C MEAN CIRCULATION OVER EACH PANEL 00000260 

C 00000270 

DO 500 I = 1,MP 00000280 

C 00000290 

PHI1 = ACOS(1.0-2.0*XG(I» 00000300 

PHI2 = ACOS(1.0-2.0*XG(I+1» 00000310 

C 00000320 

AI1 = SIN(PHI1)-PHI1*COS(PHI1)+PHI1/2.0 00000330 

1 -SIN(PHI1)*COS(PHI1)/2.0 00000340 

AI2 = SIN(PHI2)-PHI2*COS(PHI2)+PHI2/2.0 00000350 

1 -SIN(PHI2)*COS(PHI2)/2.0 00000360 

AKBAR = 1.0/2.0/(XG(I+1)-XG(I»*(AI2-AI1) 00000370 

C 00000380 

DO 300 ITER = 1,20 00000390 

PHIC = (PHI1+PHI2)/2.0 00000400 

FUNCT = PHIC+SIN(PHIC)-AKBAR 00000410 

IF(ABS(FUNCT).LE.1.0E-05) GO TO 400 00000420 

IF(FUNCT) 100,400,200 00000430 

100 PHI1 = PHIC 00000440 

GO TO 300 00000450 

200 PHI2 = PHIC 00000460 

300 CONTINUE 00000470 

C 00000480 

WRITE(IOU6,10) MP,I 00000490 

10 FORMAT('0',9X,'XKM ITERATIONS EXCEEDED, MP=',I2,2X,',I=',I2) 00000500 

lEND = 1 00000510 

GO TO 99 00000520 

C-44 
Source FiLe: LSWT03.FOR Program Unit: COLCRO 

C 

C 

C 

C 

400 CONTINUE 

XKM(I) = (1.0-COS(PHIC»/2.0 

AKM(I) = AKBAR/PI 

500 CONTINUE 

AKM(MP1) = 1.0 

C CHORDWISE VELOCITY ZERO OF EACH PANEL 

C 

C 

C 

C 

C 

C 

C 

C 

DO 1100 I = 1,MP 

X1 = XG(I) 

X2 = XG(I+1) 

DO 900 ITER = 1,40 

XVN = (X1+X2)/2.0 

VN = AKM(1)/(XVN-XG(1» 

DO 600 J = 1,MP 

VN = VN+(AKM(J+1)-AKM(J»/(XVN-XG(J+1» 

600 CONTINUE 

FUNCT = VN-2.0 

IF(ABS(FUNCT).LE.1.0E-05) GO TO 1000 

IF(FUNCT) 700,1000,800 

700 X2 = XVN 

GO TO 900 

800 X1 = XVN 

900 CONTINUE 

WRITE(IOU6,12) MP,I 

12 FORMAT('0',9X,'XCG ITERATIONS EXCEEDED, MP=',I2,2X,', 1=',12) 

lEND = 1 

GO TO 99 

1000 CONTINUE 

XCG(I) = XVN 

1100 CONTI NUE 

C 

C 

C 

PHIM = ACOS(1.0-2.0*XKM(MP» 

TECF = PI/(PHIM+SIN(PHIM» 

99 CONTINUE 

RETURN 

END 

C-45 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

00000680 

00000690 

00000700 

00000710 

00000720 

00000730 

00000740 

00000750 

00000760 

00000770 

00000780 

00000790 

00000800 

00000810 

00000820 

00000830 

00000840 

00000850 

00000860 

00000870 

00000880 

00000890 

00000900 

00000910 

00000920 

00000930 

00000940 

00000950 

00000960 

00000970 

00000980 

00000990 

00001000 

00001010 
Source FiLe: LSWT03.FOR Program Unit: RFSURF 

C ******************************************************************00000010 

C 00000020 

C LSWT03(RFSURF) 00000030 

C 00000040 

C GENERATES THE PANEL CORNER AND COLLOCATION POINT CARTESIAN OOOOOOSO 

C COORDINATES OF THE LIFTING SURFACE AT REFERENCE POSITION 00000060 

C 00000070 

C ******************************************************************00000080 

C 00000090 

SUBROUTINE RFSURF 00000100 

C 00000110 

COMMONI AFTABL I NAFT, IDAFT(4) , AFTOC(4), IAFTEX, 00000120 

1 STP1(4), STP2(4), STP3(4) , 00000130 

2 STP4(4), STPS(4), STP6(4), 00000140 

3 CLTAB(200,4), NRCL(4) , NACL(4) , 00000150 

4 CDTAB(200,4), NRCD(4), NACD(4), 00000160 

S CMTAB(100,4) , NRCM(4), NACM(4) 00000170 

COMMONI BLDELE I XCLE(20) , YCG(20), RBE(20), 00000180 

1 DBES(20), CLAMLE(20) , CLAMQC(20), 00000190 

2 CHDCGL<20> , BETAL<20> , AFTWF(20) , 00000200 

3 JTAB(20,2), TOC(20), RE(20), 00000210 

4 CL H2O), CDH20> , CMT(20) , 00000220 

S CDS(20) 00000230 

COMMONI CALPHA I ALPHAG (20) , ALPHAE(20) , ALPHAW (20) , 00000240 

1 ALPHAN(20) , ALPHAI(20) , AZLLC(20) , 000002S0 

2 TWSTCG(20) 00000260 

COMMONI CGRID I NGRID(4), XG(6), YG(24) , XCG(S) 00000270 

COMMON I CONFIG I XOCREF(4) , YSEG(4,2), JCHORD(4,2), 00000280 

1 YCHORD(24), CHORD(24), JTWISH4,2) , 00000290 

2 YTWIST(24) , TWIST(24) , J XAOFF(4,2), 00000300 

3 YXAOFF(24), XAOFF(24), JAFT(4,2), 00000310 

4 YAFH24,2) , IDAF(24) , XTRAN(4), 00000320 

5 YTRAN(4) , ZTRAN(4), XROH4) , 00000330 

6 YROH4) , ZROT(4) 00000340 

COMMONI CONSTS I PI, RPD 000003S0 

COMr40NI CWIND I ALPS1, ALPS2, HO, VWO, E, 00000360 

1 ITSTYP, TSTAB(100), NXTS, NYTS, 00000370 

2 TO, TP, TPO, TPS, TK, 00000380 

3 A8(S,2), AHS,2) 00000390 

COMMONI IFLAGS I ISTDY, IWFLAG, LSFLAG, IRFLAG 00000400 

COI..,MONI PARMS I RADIUS, OMEGA, OMEGAR, RHO, AMU 00000410 

COll'lr"lONI PNLNDX I MP, NP, NPANEL, 00000420 

1 MP1, NP1, NPNLSQ, 00000430 

2 NSGMNT, JGLIM(4,2) , JCGLIM(4,2) , 00000440 

3 NPS(4), NBLDS 000004S0 

COMMONI PNLVEC I AN1<5,2Q) , AN2(5,2Q) , AN3(S,20> , 00000460 

1 AT1(S,20), AT2(S,2Q) , AT3(S,20), 00000470 

2 AQC1 (2Q), AQC2(20) , AQC3(20) 00000480 

COMMONI REFSUR I XSR(6,24), YSR(6,24) , lSR(6,24), 00000490 

1 XCOLR(S,20> , YCOLR(S,20> , lCOLR(S,20> , OOOOOSOO 

2 AN1R(S,20), AN2R(S,20), AN3R(S,20), 00000S10 

3 AT1R(5,20), AT2R(5,20), AT3R(5,20) 00000S20 

C-46 
Source File: LSWT03.FOR Program Unit: RFSURF 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

c 

C 

C 

C 

C 

COMMON/ UNITS / IOU1, IOU5, IOU6, IOU7, IOUB, 

1 IOU10, IOU11, IOU12, IOU13 

00000530 

00000540 

00000550 

******************************************************************00000560 

LOOP THROUGH SEGMENTS 

DO 400 JSEG = 1,NSGMNT 

JG1 = JGLIM(JSEG,1) 

JG2 = JGLIM(JSEG,2) 

JCG1 = JCGLIM(JSEG,1) 

JCG2 = JCGLIM(JSEG,2) 

LOOP 100 GENERATES PANEL COORDINATES 

DO 100 JG = J G1,J G2 

CALL LINTRP(YG(JG),CHDGL,JCHORD(JSEG,1),JCHORD(JSEG,2), 

1 YCHORD,CHORD) 

CALL LINTRP(YG(JG),XGOFF,JXAOFF(JSEG,1),JXAOFF(JSEG,2), 

1 YXAOFF,XAOFF) 

XLE = XGOFF-XOCREF(JSEG)*CHDGL 

CALL AFTLOC(YG(JG),JSEG,JTAB1,JTAB2,AFWF,IEND) 

RG = YG(JG) 

ZG = 0.0 

CALL ROTATE(RG,ZG,XROT(JSEG» 

RG = RG + YTRAN(JSEG) 

ZG = ZG + ZTRAN(JSEG) 

IF (ISTDY.EG.1) BETAO = AB(1,1) 

IF (ISTDY.EG.1) CALL ROTATE(RG,ZG,BETAO) 

VELGL = SGRT(VWO**2+(OMEGAR*RG)**2) 

REGL = RHO*VELGL*CHDGL*RADIUS/AMU 

CALL ZROLFT(AZLL,REGL,JTAB1,JTAB2,AFWF) 

CALL LINTRP(YG(JG),TWSTG,JTWIST(JSEG,1),JTWIST(JSEG,2), 

1 YTWIST,TWIST) 

ALPT = TWSTG-AZLL 

DO 100 I = 1,MP1 

XSR(I,JG) = XLE+XG(I)*CHDGL 

YSR(I,JG) = YG(JG) 

ZSR<I,JG) = 0.0 

ROTATE TO ZERO LIFT LINE PLUS TWIST INCREMENT 

C-47 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

000006BO 

00000690 

00000700 

00000710 

00000720 

00000730 

00000740 

00000750 

00000760 

00000770 

00000780 

00000790 

00000800 

00000810 

00000820 

00000830 

00000840 

00000850 

00000860 

00000B70 

00000880 

00000890 

00000900 

00000910 

00000920 

00000930 

00000940 

00000950 

00000960 

00000970 

00000980 

00000990 

00001000 

00001010 

00001020 

00001030 

00001040 
Source FiLe: LSWT03.FOR 

CALL ROTATE(ZSR(I,JG),XSR(I,JG),ALPT) 

C 

C APPLY SEGMENT INPUT ROTATIONS 

C 

C 

CALL ROTATE(ZSR(I,JG),XSR(I,JG),YROT(JSEG» 

CALL ROTATE(YSR(I,JG),ZSR(I,JG),XROT(JSEG» 

CALL ROTATE(XSR(I,JG),YSR(I,JG),ZROT(JSEG» 

C APPLY SEGMENT INPUT TRANSLATIONS 

C 

C 

C 

XSR(I,JG) = XSR(I,JG)+XTRAN(JSEG) 

YSR(I,JG) = YSR(I,JG)+YTRAN(JSEG) 

ZSR(I,JG) = ZSR(I,JG)+ZTRAN(JSEG) 

100 CONTINUE 

C LOOP 300 GENERATES COLLOCATION POINT COORDINATES, 

C PANEL ORIENTATION VECTORS, AND SOME SWEEP PARAMETERS 

C 

C 

C 

DO 300 JCG = JCG1,JCG2 

JG = JG1+JCG-JCG1 

C PANEL GRID CENTER COORDINATE, BLADE ELEMENT SPAN 

C 

C 

YCG(JCG) = (YG(JG+1)+YG(JG»/2.0 

XBE = 0.0 

YBE = YCG(JCG) 

ZBE = 0.0 

CALL ROTATE(ZBE,XBE,YROT(JSEG» 

CALL ROTATE(YBE,ZBE,XROT(JSEG» 

CALL ROTATE(XBE,YBE,ZROT(JSEG» 

XBE = XBE + XTRAN(JSEG) 

YBE = YBE + YTRAN(JSEG) 

ZBE = ZBE + ZTRAN(JSEG) 

RBE(JCG) = SQRT(XBE**2+YBE**2) 

IF (ISTDY.EQ.1) BETAO = AB(1,1) 

IF (ISTDY.EQ.1) CALL ROTATE(YBE,ZBE,BETAO) 

DBES(JCG) = YG(JG+1)-YG(JG) 

Program Unit: RFSURF 

C LEADING AND TRAILING EDGE, AND QUARTER CHORD DIRECTION VECTORS 

00001050 

00001060 

00001070 

00001080 

00001090 

00001100 

00001110 

00001120 

00001130 

00001140 

00001150 

00001160 

00001170 

00001180 

00001190 

00001200 

00001210 

00001220 

00001230 

00001240 

00001250 

00001260 

00001270 

00001280 

00001290 

00001300 

00001310 

00001320 

00001330 

00001340 

00001350 

00001360 

00001370 

00001380 

00001390 

00001400 

00001410 

00001420 

00001430 

00001440 

00001450 

00001460 

00001470 

00001480 

00001490 

00001500 

00001510 

00001520 

00001530 

00001540 

00001550 

00001560 

C FOR USE IN SWEEP CALCULATIONS 

C 

C 

C 

ALE1 = XSR(1,JG+1) - XSR(1,JG) 

ALE2 = YSR(1,JG+1) - YSR(1,JG) 

ALE3 = ZSR(1,JG+1) - ZSR(1,JG) 

ATE1 = XSR(MP1,JG+1) - XSR(MP1,JG) 

ATE2 = YSR(MP1,JG+1) - YSR(MP1,JG) 

ATE3 = ZSR(MP1,JG+1) - ZSR(MP1,JG) 

AQC1(JCG) = ALE1 + 0.25*(ATE1-~LE1) 

C-48 
Source FiLe: LSWT03.FOR Program Unit: RFSURF 

AQC2(JCG) = ALE2 + 0.25*(ATE2-ALE2) 00001570 

AQC3(JCG) = ALE3 + 0.25*(ATE3-ALE3) 00001580 

C 00001590 

C PUT QUARTER CHORD VECTOR BACK INTO BLADE ELEMENT REFERENCE 00001600 

C 00001610 

ANGLE = - XROT(JSEG) 00001620 

CALL ROTATE(AQC2(JCG),AQC3(JCG),ANGLE) 00001630 

C 00001640 

CALL LINTRP(YCG(JCG),CHDCGL(JCG),JCHORD(JSEG,1),JCHORD(JSEG,2), 00001650 

1 YCHORD,CHORD) 00001660 

CALL LINTRP(YCG(JCG),XCGOFF,JXAOFF(JSEG,1),JXAOFF(JSEG,2), 00001670 

1 YXAOFF,XAOFF) 00001680 

C 00001690 

XCLE(JCG) = XCGOFF-XOCREF(JSEG)*CHDCGL(JCG) 00001700 

C 00001710 

C GET ZERO LIFT LINE, THICKNESS, AND TWIST 00001720 

C 00001730 

CALL AFTLOC(YCG(JCG),JSEG,JTAB(JCG,1),JTAB(JCG,2),AFTWF(JCG),IEND)00001740 

C 00001750 

TOC1 = AFTOC(JTAB(JCG,1» 00001760 

TOC2 = AFTOC(JTAB(JCG,2» 00001770 

TOC(JCG) = TOC2*AFTWF(JCG)+TOC1*(1.0-AFTWF(JCG» 00001780 

VELCGL = SQRT(VWO**2+(OMEGAR*RBE(JCG»**2) 00001790 

RECGL = RHO*VELCGL*CHDCGL(JCG)*RADIUS/AMU 00001800 

C 00001810 

CALL ZROLFT(AZLLC(JCG),RECGL,JTAB(JCG,1),JTAB(JCG,2),AFTWF(JCG» 00001820 

C 00001830 

CALL LINTRP(YCG(JCG),TWSTCG(JCG),JTWIST(JSEG,1),JTWIST(JSEG,2), 00001840 

1 YTWIST,TWIST) 00001850 

C 00001860 

C ROTATE TO ZERO LIFT LINE PLUS TWIST INCREMENT 00001870 

C 00001880 

ALPT = TWSTCG(JCG)-AZLLC(JCG) 00001890 

C 00001900 

DO 200 I = 1,MP 00001910 

C 00001920 

XCOLR(I,JCG) = XCLE(JCG)+XCG(I)*CHDCGL(JCG) 00001930 

YCOLR(I,JCG) = YCG(JCG) 00001940 

ZCOLR(I,JCG) = 0.0 00001950 

C 00001960 

CALL ROTATE(ZCOLR(I,JCG),XCOLR(I,JCG),ALPT) 00001970 

C 00001980 

C REFERENCE PANEL DIRECTION VECTORS 00001990 

C 00002000 

AN1R(I,JCG) = 0.0 00002010 

AN2R(I,JCG) = 0.0 00002020 

AN3R(I,JCG) = 1.0 00002030 

C 00002040 

CALL ROTATE(AN3R(I,JCG),AN1R(I,JCG),ALPT) 00002050 

C 00002060 

AT1R(I,JCG) = 1.0 00002070 

AT2R(I,JCG) = 0.0 00002080 

C-49 
Source FiLe: LSWT03.FOR 

AT3R(I,JCG) = 0.0 

C 

CALL ROTATE(AT3R(I,JCG),AT1R(I,JCG),ALPT) 

C 

C APPLY SEGMENT INPUT ROTATIONS 

C 

C 

C 

C 

CALL ROTATE(ZCOLR(I,JCG),XCOLR(I,JCG),YROT(JSEG» 

CALL ROTATE(YCOLR(I,JCG),ZCOLR(I,JCG),XROT(JSEG» 

CALL ROTATE(XCOLR(I,JCG),YCOLR(I,JCG),ZROT(JSEG» 

CALL ROTATE(AN3R(I,JCG),AN1R(I,JCG),YROT(JSEG» 

CALL ROTATE(AN2R(I,JCG),AN3R(I,JCG),XROT(JSEG» 

CALL ROTATE(AN1R(I,JCG),AN2R(I,JCG),ZROT(JSEG» 

CALL ROTATE(AT3R(I,JCG),AT1R(I,JCG),YROT(JSEG» 

CALL ROTATE(AT2R(I,JCG),AT3R(I,JCG),XROT(JSEG» 

CALL ROTATE(AT1R(I,JCG),AT2R(I,JCG),ZROT(JSEG» 

C APPLY SEGMENT INPUT TRANSLATIONS 

C 

C 

C 

XCOLR(I,JCG) = XCOLR(I,JCG)+XTRAN(JSEG) 

YCOLR(I,JCG) = YCOLR(I,JCG)+YTRAN(JSEG) 

ZCOLR(I,JCG) = ZCOLR(I,JCG)+ZTRAN(JSEG) 

200 CONTINUE 

C COSINE OF LEADING EDGE SWEEP ANGLE 

C 

Program Unit: RFSURF 

CALL VPANG(ALE1,ALE2,ALE3,AT1R(1,JCG),AT2R(1,JCG),AT3R(1,JCG), 

00002090 

00002100 

00002110 

00002120 

00002130 

00002140 

00002150 

00002160 

00002170 

00002180 

00002190 

00002200 

00002210 

00002220 

00002230 

00002240 

00002250 

00002260 

00002270 

00002280 

00002290 

00002300 

00002310 

00002320 

00002330 

00002340 

00002350 

00002360 

00002370 

00002380 

00002390 

00002400 

00002410 

00002420 

00002430 

00002440 

00002450 

1 CLAMLE(JCG» 

C 

300 CONTINUE 

C 

400 CONTINUE 

C 

RETURN 

END 

C-50 
Source File: LSWT03.FOR Program Unit: AFTLOC 

C ******************************************************************00000010 

C 00000020 

C LSWT03(AFTLOC) 00000030 

C 00000040 

C ASSIGNS AIRFOIL TABLE STORAGE LOCATION INDICES TO BLADE GRID 00000050 

C STATION Y 00000060 

C 00000070 

C ******************************************************************00000080 

C 00000090 

SUBROUTINE AFTLOC(Y,JSEG,JTAB1,JTAB2,AFTWF,IEND) 00000100 

C 00000110 

COMMON/ AFTABL I NAFT, IDAFT(4), AFTOC(4), IAFTEX, 00000120 

1 STP1(4), STP2(4), STP3(4), 00000130 

2 STP4(4), STP5(4), STP6(4), 00000140 

3 CLTAB(200,4), NRCL(4), NACL(4), 00000150 

4 CDTAB(200,4), NRCD(4), NACD(4), 00000160 

5 CMTAB(100,4), NRCM(4), NACM(4) 00000170 

COMMON/ CONFIG / XOCREF(4), YSEG(4,2), JCHORD(4,2), 00000180 

1 YCHORD(24), CHORD(24), JTWIST(4,2), 00000190 

2 YTWIST(24), TWIST(24), JXAOFF(4,2), 00000200 

3 YXAOFF(24), XAOFF(24), JAFT(4,2), 00000210 

4 YAFT(24,2), IDAF(24), XTRAN(4), 00000220 

5 YTRAN(4), ZTRAN(4), XROT(4), 00000230 

6 YROT(4), ZROT(4) 00000240 

C 00000250 

C ******************************************************************00000260 

C 00000270 

lEND = 0 00000280 

C 00000290 

C SET SEGMENT PARAMETERS 00000300 

C 00000310 

J1 = JAFT(JSEG,1) 00000320 

J2 = JAFT(JSEG,2) 00000330 

C 00000340 

C CHECK THAT Y IS WITHIN RANGE, AND IF NOT SET LOCATION INDICES 00000350 

C TO APPROPRIATE BOUNDING TABLES FOR THIS SEGMENT 00000360 

C 00000370 

IDAF1 = IDAF(J1) 00000380 

IDAF2 = IDAF(J1) 00000390 

IF(Y.LT.YAFT(J1,1» GO TO 400 00000400 

IDAF1 = IDAF(J2) 00000410 

IDAF2 = IDAF(J2) 00000420 

IF(Y.GT.YAFT(J2,2» GO TO 400 00000430 

C 00000440 

C TRAP Y WITHIN TABLE RANGE 00000450 

C 00000460 

DO 100 J = J1,J2 00000470 

IF(Y.GE.YAFT(J,1).AND.Y.LE.YAFT(J,2» GO TO 200 00000480 

IF(Y.LT.YAFT(J+1,1» GO TO 300 00000490 

100 CONTINUE 00000500 

C 00000510 

200 CONTINUE 00000520 

C-51 
Source File: LSWT03.FOR 

C 

C Y IS WITHIN AIRFOIL TABLE RANGE 

C 

C 

IDAF1 = IDAF(J) 

IDAF2 = IDAF(J) 

AFTWF = 0.50 

IF(J.EQ.J2) GO TO 400 

C CHECK FOR Y EQUAL TO AIRFOIL DISCONTINUITY STATION 

C 

C 

C 

IF(Y.NE.YAFT(J+1,1» GO TO 400 

IDAF2 = IDAF(J+1) 

AFTWF = 0.50 

GO TO 400 

300 CONTINUE 

C Y IS IN TRANSITION REGION BETWEEN AIRFOIL TABLE RANGES 

C 

C 

C 

IDAF1 = IDAF(J) 

IDAF2 = IDAF(J+1) 

AFTWF = 0.50 

IF(YAFT(J+1,1)-YAFT(J,2).LT.1.0E-05) GO TO 400 

AFTWF = (Y-YAFT(J,2»/(YAFT(J+1,1)-YAFT(J,2» 

400 CONTINUE 

C ASSIGN TABLE LOCATION INDEX BY MATCHING lOAF TO IDAFT 

C 

C 

C 

C 

JTAB1 = 0 

JTAB2 = 0 

DO 500 J = 1,NAFT 

IF(IDAF1.EQ.IDAFT(J» JTAB1 = J 

IF(IDAF2.EQ.IDAFT(J» JTAB2 = J 

500 CONTINUE 

IF(JTA81.EQ.0.OR.JTAB2.EQ.0) lEND = 1 

RETURN 

END 

C-52 

Program Unit: AFTLOC 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

00000680 

00000690 

00000700 

00000710 

00000720 

00000730 

00000740 

00000750 

00000760 

00000770 

00000780 

00000790 

00000800 

00000810 

00000820 

00000830 

00000840 

00000850 

00000860 

00000870 

00000880 

00000890 

00000900 

00000910 

00000920 

00000930 
Source FiLe: LSWT03.FOR Program Unit: LINTRP 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

c 

100 

C 

C 

200 

C 

******************************************************************00000010 

LSWT03(LINTRP) 

PERFORMS A LINEAR INTERPOLATION OF A PIECEWISE LINEAR FUNCTION. 

IF TARGET IS OUTSIDE RANGE, THEN EXTRAPOLATION IS USED. 

00000020 

00000030 

00000040 

00000050 

00000060 

00000070 

******************************************************************00000080 

00000090 

SUBROUTINE LINTRP(YINT,FINT,JF1,JF2,YF,F) 00000100 

00000110 

DIMENSION YF(1),F(1) 00000120 

00000130 

******************************************************************00000140 

DO 100 J = JF1+1,JF2 

IF(YF(J-1).LE.YINT.AND.YINT.LE.YF(J» GO TO 200 

CONTINUE 

IF(YINT.LT.YF(JF1» J = 

IF(YINT.GT.YF(JF2» J = 

CONTINUE 

J F1 +1 

J F2 

DFDY = (F(J)-F(J-1»/(YF(J)-YF(J-1» 

FINT = DFDY*(YINT-YF(J-1»+F(J-1) 

RETURN 

END 

C-53 

00000150 

00000160 

00000170 

00000180 

00000190 

00000200 

00000210 

00000220 

00000230 

00000240 

00000250 

00000260 

00000270 

00000280 
Source FiLe: lSWT03.FOR Program Unit: ROTATE 

C ******************************************************************00000010 

C 00000020 

C LSWT03(ROTATE) 00000030 

C 00000040 

C PERFORMS THE ROTATION THROUGH ANGLE OF (X,Y). X-AXIS INTO Y-AXIS 00000050 

C IS POSITIVE FOR POSITIVE ANGLE. 00000060 

C 00000070 

C ******************************************************************00000080 

C 00000090 

SUBROUTINE ROTATE(X,Y,ANGLE) 00000100 

C 00000110 

C ******************************************************************00000120 

C 00000130 

SINANG = SIN (ANGLE) 00000140 

COSANG = COS(ANGLE) 00000150 

C 00000160 

XP = X*COSANG-Y*SINANG 00000170 

YP = X*SINANG+Y*COSANG 00000180 

X = XP 00000190 

Y = YP 00000200 

C 00000210 

RETURN 00000220 

END 00000230 

C-54 
Source FiLe: LSWT03.FOR Program Unit: PSURF 

C ******************************************************************00000010 

C 00000020 

C LSWT03(PSURF) 00000030 

C 00000040 

C POSITIONS REFERENCE SURFACE TO ACCOUNT FOR BLADE PITCH, AZIMUTH, 00000050 

C AND FLAPPING. IBLD=1 ACTS UPON BOTH GRID AND COLLOCATION POINT 00000060 

C COORDINATES. IBLD>1 ACTS ONLY UPON GRID COORDINATES. 00000070 

C 00000080 

C ******************************************************************00000090 

C 00000100 

SUBROUTINE PSURF(ALPHAS,PSI,IBLD) 00000110 

C 00000120 

COMMON! BLDELE ! XCLE(20), YCG(20) , RBE(20) , 00000130 

1 DBES(20), CLAMLE (20), CLAMQC(20) , 00000140 

2 CHDCGL<20> , BETAL<20> , AFTWF(20), 00000150 

3 JTAB(20,2), TOC(20) , RE(20), 00000160 

4 CL T(20), COT< 20> , CMT(20) , 00000170 

5 CDS(20) 000001BO 

COMMON! CALPHA ! ALPHAG(20) , ALPHAE(20) , ALPHAW(20) , 00000190 

1 ALPHAN ( 20> , ALPHAI (20) , AZLLC(20) , 00000200 

2 TWSTCG(20) 00000210 

COMMON! CONFIG ! XOCREF(4), YSEG(4,2), JCHORD(4,2), 00000220 

1 YCHORD(24), CHORD(24) , JTWIST<4,2) , 00000230 

2 YTWIST(24) , TWIST(24) , JXAOFF(4,2), 00000240 

3 YXAOFF(24), XAOFF(24) , JAFT(4,2), 00000250 

4 YAFT(24,2) , IDAF(24), XTRAN(4), 00000260 

5 YTRAN(4), ZTRAN(4) , XROT(4), . 00000270 

6 YROT(4) , ZROT(4) 00000280 

COMMON! CONSTS ! PI, RPD 00000290 

COMMON! CWIND ! ALPS1, ALPS2, HO, VWO, E, 00000300 

1 ITSTYP, TSTAB(100), NXTS, NYTS, 00000310 

2 TO, TP, TPO, TPS, TK, 00000320 

3 AB(S,2), AT<S,2) 00000330 

COMMON! IFLAGS ! ISTDY, IWFLAG, LSFLAG, IRFLAG 00000340 

COMMON! PNLCRD ! XS(6,24), YS(6,24), ZS(6,24), 00000350 

1 XCOL<S,20) , YCOL<S,20> , ZCOL<S,20> 00000360 

COMMONI PNLNDX ! MP, NP, NPANEL, 00000370 

1 MP1, NP1, NPNLSQ, 00000380 

2 NSGMNT, JGLlM(4,2) , J CGLlM(4,2), 00000390 

3 NPS(4), NBLDS 00000400 

COMMON! PNLVEC ! AN1(S,20), AN2(S,20), AN3(S,20> , 00000410 

1 AT1 (5,20>, AT2(S,20> , AT3(S,20> , 00000420 

2 AQC1(20) , AQC2(20), AQC3(20) 00000430 

COMMON! REFSUR I XSR(6,24), YSR(6,24), ZSR(6,24), 00000440 

1 XCOLR(S,20>, YCOLR(S,20> , ZCOLR(S,20>, 00000450 

2 AN1 R(S,20>, AN2R(S,20> , AN3R(S,20> , 00000460 

3 AT1R(S,20), AT2R(S,20>, AT3R(S,20> 00000470 

COMMON! UNITS ! IOU1, IOUS, IOU6, IOU7, IOUB, 00000480 

1 IOU10, IOU11, IOU12, IOU13 00000490 

C 00000500 

C ******************************************************************00000510 

C 00000520 

C-55 
Source FiLe: LSWT03.FOR 

C 

ALPHAP = ALPHAS 

IF(ISTDY.EQ.O) GO TO 130 

C FLAPPING ANGULAR DISPLACEMENT 

C 

C 

BETA = AB(1,1) 

NBH = AB(1,2)+0.1 

DO 110 N = 1,NBH 

BETA = BETA+AB(N+1,1)*COS(N*PSI)+AB(N+1,2)*SIN(N*PSI) 

110 CONTINUE 

C CYCLIC PITCH 

C 

ALPHAC = AT(1,1) 

NTH = AT(1,2)+0.1 

DO 120 N = 1,NTH 

Program Unit: PSURF 

ALPHAC = ALPHAC+AT(N+1,1)*COS(N*PSI)+AT(N+1,2)*SIN(N*PSI) 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

00000680 

00000690 

00000700 

00000710 

00000720 

00000730 

00000740 

00000750 

00000760 

00000770 

00000780 

00000790 

00000800 

00000810 

00000820 

00000830 

00000840 

00000850 

00000860 

00000870 

00000880 

00000890 

00000900 

00000910 

00000920 

00000930 

00000940 

00000950 

00000960 

00000970 

00000980 

00000990 

00001000 

00001010 

00001020 

00001030 

00001040 

120 CONTINUE 

C 

C TOTAL PITCH ANGLE CHANGE FROM REFERENCE BLADE VALUE 

C 

C 

C 

C 

ALPHAP = ALPHAP+ALPHAC 

130 CONTINUE 

DO 100 I = 1,MP1 

DO 100 J = 1,NP1 

C LOAD SURFACE PANEL COORDINATES FROM REFERENCE SET 

C 

C 

XS(I,J) = XSR(I,J) 

YS(I,J) = YSR(I,J) 

ZS(I,J) = ZSR(I,J) 

C ROTATE TO PITCH ABOUT Y-AXIS 

C 

CALL ROTATE(ZS(I,J),XS(I,J),ALPHAP) 

C 

C ROTATE TO BETA ABOUT X-AXIS 

C 

IF(ISTDY.EQ.1) CALL ROTATE(YS(I,J),ZS(I,J),BETA) 

C 

C ROTATE TO PSI ABOUT Z-AXIS 

C 

C 

C 

C 

CALL ROTATE(XS(I,J),YS(I,J),PSI) 

100 CONTI NUE 

IF(IBLD.GT.1) GO TO 400 

DO 300 JSEG = 1, NSGMNT 

JCG1 = JCGLIM(JSEG,1) 

C-56 
Source FiLe: LSWT03.FOR 

C 

JCG2 = JCGLIM(JSEG,2) 

DO 300 J = JCG1, JCG2 

DO 200 I = 1, MP 

C LOAD PANEL COLLOCATION COORDINATES FROM REFERENCE SET 

C 

C 

XCOL(I,J) = XCOLR(I,J) 

YCOL(I,J) = YCOLR(I,J) 

ZCOL(I,J) = ZCOLR(I,J) 

C ROTATE TO PITCH ABOUT Y-AXIS 

C 

CALL ROTATE(ZCOL(I,J),XCOL(I,J),ALPHAP) 

C 

C ROTATE TO BETA ABOUT X-AXIS 

C 

IF(ISTDY.EQ.1) CALL ROTATE(YCOL(I,J),ZCOL(I,J),BETA) 

C 

C ROTATE TO PSI ABOUT Z-AXIS 

C 

CALL ROTATE(XCOL(I,J),YCOL(I,J),PSI) 

C 

C LOAD PANEL ORIENTATION VECTORS FROM REFERENCE SET 

C 

C 

C 

AN1(I,J) = AN1R(I,J) 

AN2(I,J) = AN2R(I,J) 

AN3(I,J) = AN3R(I,J) 

AT1(I,J) = AT1R(I,J) 

AT2(I,J) = AT2R(I,J) 

AT3(I,J) = AT3R(I,J) 

C REPEAT PROCEEDURES AS ABOVE 

C 

C 

C 

C 

CALL ROTATE(AN3(I,J),AN1(I,J),ALPHAP) 

CALL ROTATE(AT3(I,J),AT1(I,J),ALPHAP) 

IF(ISTDY.EQ.1) CALL ROTATE(AN2(I,J),AN3(I,J),BETA) 

IF(ISTDY.EQ.1) CALL ROTATE(AT2(I,J),AT3(I,J),BETA) 

CALL ROTATE(AN1(I,J),AN2(I,J),PSI) 

CALL ROTATE(AT1(I,J),AT2(I,J),PSI) 

200 CONTI NUE 

C ELEMENT GEOMETRIC ANGLE OF ATTACK 

C 

ALPHAG(J) = ALPHAP+TWSTCG(J) 

C 

Program Unit: PSURF 

00001050 

00001060 

00001070 

00001080 

00001090 

00001100 

00001110 

00001120 

00001130 

00001140 

00001150 

00001160 

00001170 

00001180 

00001190 

00001200 

00001210 

00001220 

00001230 

00001240 

00001250 

00001260 

00001270 

00001280 

00001290 

00001300 

00001310 

00001320 

00001330 

00001340 

00001350 

00001360 

00001370 

00001380 

00001390 

00001400 

00001410 

00001420 

00001430 

00001440 

00001450 

00001460 

00001470 

00001480 

00001490 

00001500 

00001510 

00001520 

00001530 

C BLADE ELEMENT INCLINATION FROM X-V PLANE (LOCAL CONING + FLAPPING)00001540 

00001550 

00001560 

C 

BETAL(J) = XROT(JSEG) 

C-57 
Source FiLe: LSWT03.FOR 

IF(ISTDY.EQ.1) BETAL(J) = BETAL(J) + BETA 

C 

300 CONTINUE 

C 

400 CONTINUE 

C 

RETURN 

END 

C-58 

Program Unit: PSURF 

00001570 

00001580 

00001590 

00001600 

00001610 

00001620 

00001630 

00001640 
Source FiLe: LSWT03.FOR Program Unit: VPANG 

C ******************************************************************00000010 

C 00000020 

C LSWT03(VPANG) 00000030 

C 00000040 

C RETURNS THE SINE 'SINTH' OF THE ANGLE BETWEEN THE VECTORS 'A' AND 00000050 

C 'B' BASED ON THE DEFINITION OF THE VECTOR PRODUCT 00000060 

C 00000070 

C ******************************************************************00000080 

C 00000090 

SUBROUTINE VPANG(AX,AY,AZ,BX,BY,BZ,SINTH) 00000100 

C 00000110 

C ******************************************************************00000120 

C 00000130 

AXBX = AY*BZ - AZ*BY 00000140 

AXBY = AZ*BX - AX*BZ 00000150 

AXBZ = AX*BY - AY*BX 00000160 

C 00000170 

ASQ = AX**2 + AY**2 + AZ**2 00000180 

SSQ = BX**2 + BY**2 + BZ**2 00000190 

AXSSQ = AXBX**2 + AXBY**2 + AXBZ**2 00000200 

C 00000210 

SINTH = SQRT(AXBSQ/(ASQ*BSQ» 00000220 

IF(SINTH.GT.1.0) SINTH = 1.0 00000230 

C 00000240 

RETURN 00000250 

END 00000260 

C-59 
Source FiLe: LSWT04.FOR Program Unit: PREWAK 

C ******************************************************************00000010 

C 00000020 

C LSWT04(PREWAK) 00000030 

C 00000040 

C GENERATES THE DISCRETIZED WAKE VORTEX FILAMENTS OF THE PRESCRIBED 00000050 

C WAKE MODEL 00000060 

C 00000070 

C 

C 

C 

C 

1 

1 

2 

3 

1 

1 

2 

******************************************************************00000080 

00000090 

SUBROUTINE PREWAK(PSIBIN,IBLD) 00000100 

00000110 

COMMON/ CIPRT / IPRT1, IPRT2, IPRT3, IPRT4, IPRTS, IPRT6, 00000120 

IPRT7, IPRT8 00000130 

COMMON/ CONSTS / PI, RPD 00000140 

COMMON/ PNLNDX / MP, NP, NPANEL, 00000150 

MP1, NP1, NPNLSQ, 00000160 

NSGMNT, JGLIM(4,2), JCGLIM(4,2), 00000170 

NPS(4), NBLDS 00000180 

COMMON/ UNITS / IOU1, IOU5, IOU6, IOU7, IOU8, 00000190 

IOU10, IOU11, IOU12, IOU13 00000200 

COMMON/ WAKNDX / REVS, NWIPR, NWI, 00000210 

KMAX(24), IFWAK, JS(3,2), 00000220 

PSIMR, PSIMT, IROLL 00000230 

00000240 

C ******************************************************************00000250 

C 00000260 

C PUT PSIB IN 0-->2*PI RANGE 00000270 

C 00000280 

PSIB = 2.0*PI*(PSIBIN/2.0/PI-IFIX(PSIBIN/2.0/PI» 00000290 

C 00000300 

C AZIMUTH INCREMENT PARAMETERS 00000310 

C 00000320 

ANWI = REVS*NWIPR 00000330 

NWI = IFIX(ANWI) 00000340 

IF(ANWI-NWI.GT.0.5) NWI = NWI+1 00000350 

NWI = NWI+NWIPR+1 00000360 

C 00000370 

DO 100 J = 1,JGLIM(NSGMNT,2) 00000380 

KMAX(J) = NWI 00000390 

100 CONTINUE 00000400 

C 00000410 

C GET WAKE PARAMETERS 00000420 

C 00000430 

CALL WAKPRM 00000440 

IF(IPRT7.GT.0) CALL TRACE('WAKPRM') 00000450 

C 00000460 

IF(JS(1,1).EQ.0) GO TO 200 00000470 

C 00000480 

C ROOT VORTEX FILAMENT 00000490 

C 00000500 

J1 = JS(1,1) 00000510 

J2 = J1 00000520 

C-60 
Source FiLe: LSWT04.FOR 

C 

CALL FILMNTeJ1,J2,IBLD,PSIB) 

C 

200 CONTINUE 

C 

IFeJSe3,1).EQ.0) GO TO 300 

C 

C TIP VORTEX FILAMENT 

C 

C 

C 

J1 = JS<3,2) 

J2 = J1 

CALL FILMNT(J1,J2,IBLD,PSIB) 

300 CONTINUE 

C 

IF(JS(2,1).EQ.0) GO TO 400 

C 

C MID-SHEET 

C 

C 

C 

C 

C 

J1 = JS(2,1) 

J2 = JS(2,2) 

CALL FILMNT(J1,J2,IBLD,PSIB) 

400 CONTINUE 

IF(JS(1,1).EQ.0) GO TO 500 

C INBOARD SHEET ROLLUP 

C 

C 

C 

C 

C 

J1 = JS(1,1) 

J2 = JS(1,2) 

JM = J1 

CALL FILROL(JM,J1,J2,IBLD,PSIB) 

500 CONTINUE 

IF(JS(3,1).EQ.0) GO TO 600 

C OUTBOARD SHEET ROLLUP 

C 

C 

C 

C 

J1 = JS(3,1) 

J2 = JS(3,2) 

JM = J2 

CALL FILROL(JM,J1,J2,IBLD,PSIB) 

600 CONTINUE 

RETURN 

C-61 

Program Unit: PREWAK 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

00000680 

00000690 

00000700 

00000710 

00000720 

00000730 

00000740 

00000750 

00000760 

00000770 

00000780 

00000790 

00000800 

00000810 

00000820 

00000830 

00000840 

00000850 

00000860 

00000870 

00000880 

00000890 

00000900 

00000910 

00000920 

00000930 

00000940 

00000950 

00000960 

00000970 

00000980 

00000990 

00001000 

00001010 

00001020 

00001030 

00001040 
Source FiLe: LSWT04.FOR 

END 

C-62 

Program Unit: PREWAK 

00001050 
Source File: LSWT04.FOR Program Unit: FILMNT 

C ******************************************************************00000010 

C 00000020 

C LSWT04(FILMNT) 00000030 

C 00000040 

C CALCULATES THE TRAJECTORY OF A FILAMENT USING THE PRESCRIBED WAKE 00000050 

C EQUATIONS FOR ROOT AND TIP VORTICES AND MID-SHEET 00000060 

C 00000070 

C ******************************************************************00000080 

C 00000090 

SUBROUTINE FILMNT(J1,J2,IBLD,PSIB) 00000100 

C 00000110 

COMMON! CIPRT ! IPRT1, IPRT2, IPRT3, IPRT4, IPRT5, IPRT6, 00000120 

1 IPRT7, IPRT8 00000130 

COMMON! CONSTS ! PI, RPD 00000140 

COMMON! CWIND ! ALPS1, ALPS2, HO, VWO, E, 00000150 

1 ITSTYP, TSTAB(100), NXTS, NYTS, 00000160 

2 TO, TP, TPO, TPS, TK, 00000170 

3 AB(5,2), AT(5,2) 00000180 

COMMON! IFLAGS ! ISTDY, IWFLAG, LSFLAG, IRFLAG 00000190 

COMMON! PNLCRD ! XS(6,24), YS(6,24), ZS(6,24), 00000200 

1 XCOL(5,20), YCOL(5,20), ZCOL(5,20) 00000210 

COMMON! PNLNDX ! MP, NP, NPANEL, 00000220 

1 MP1, NP1, NPNLSQ, 00000230 

2 NSGMNT, JGLIM(4,2), JCGLIM(4,2), 00000240 

3 NPS(4), NBLDS 00000250 

COMMON! UNITS ! IOU1, IOU5, IOU6, IOU7, IOU8, 00000260 

1 IOU10, IOU11, IOU12, IOU13 00000270 

COMMON! WAKCRD ! XW(133,24), YW(133,24), ZW(133,24) 00000280 

COMMON! WAKNDX ! REVS, NWIPR, NWI, 00000290 

1 KMAX(24), IFWAK, JS(3,2), 00000300 

2 PSIMR, PSIMT, IROLL 00000310 

COMMON! WRATES ! AKZW, AKZI, AKZ, AKR, A, AKB, 00000320 

1 CTRW, AKZO, ALAMO, AKRO, VAXB, VNUB 00000330 

C 00000340 

C ******************************************************************00000350 

C 00000360 

C MAXIMUM WAKE RADIUS AT BLADE TRAILING EDGE 00000370 

C 00000380 

RWMAX = SQRT(XS(MP1,NP1)**2+YS(MP1,NP1)**2+ZSCMP1,NP1)**2) 00000390 

C 00000400 

IF(ISTDY.EQ.O) CALL WNDPROCO,0.0,0.0,0.0,VW1,VW2,VW3,AKZW) 00000410 

IF«ISTDY.EQ.O) .AND. (IPRT7.GT.0» CALL TRACEC'WNDPRO') 00000420 

C 00000430 

DO 500 J = J1,J2 00000440 

C 00000450 

C STARTING COORDINATE OF TRAILER FILAMENT IS BLADE TRAILING EDGE 00000460 

C 00000470 

XFO = XS(MP1,J) 00000480 

YFO = YS(MP1,J) 00000490 

ZFO = ZSCMP1,J) 00000500 

RFO = SQRT(XFO**2+YFO**2+ZFO**2) 00000510 

RRATIO = RFO!RWMAX 00000520 

C-63 
Source File: LSWT04.FOR Program Unit: FIlMNT 

C 

C 

XP = XFO 

YP = YFO 

CALL ROTATE(XP,YP,-PSIB) 

PSIO = ATAN2(-XP,YP) 

IF(PSIO.GT.O.O) PSIO = PSIO-2.0*PI 

PSIO = PSIO+PSIB 

C GENERATE FILAMENT COORDINATES 

C 

C 

C 

C 

XW(1,J) = XFO 

YW(1,J) = YFO 

ZW(1,J) = ZFO 

IF(ISTDY.EQ.O) GO TO 110 

BETAB = AB(1,1) 

NBH = IFIX(AB(1,2)+0.1) 

DO 100 N = 1,NBH 

BETAB = BETAB+AB(N+1,1)*COS(N*PSIB)+AB(N+1,2)*SIN(N*PSIB) 

100 CONTINUE 

110 CONTI NUE 

C 

C SWEEP AZIMUTH GRID 

C 

C 

C 

C 

FNWI = FLOAT(NWIPR) 

DO 400 K = 2,KMAX(J) 

FKM1 = FLOAT(K-1) 

IF(K.LE.2*NWIPR+1) PSIW = PSIO-(2.0*PI-(PSIB-PSIO»* 

1 (FKM1/(2.0*FNWI»**2 

IF(K.GT.2*NWIPR+1) PSIW = PSIB-2.0*PI/FNWI*(FKM1-FNWI) 

IF(ISTDY.EQ.O) GO TO 210 

BETAW = AB(1, 1) 

PSIOW = PSIW+(PSIB-PSIO) 

DO 200 N = 1,NBH 

8ETAW = BETAW+AB(N+1,1)*COS(N*PSIOW)+AB(N+1,2)*SIN(N*PSIOW) 

200 CONTINUE 

210 CONTINUE 

C RELOCATE STARTING COORDINATES BACK IN AZIMUTH (TIME) 

C 

C 

C 

XF = XFO 

YF = YFO 

ZF = ZFO 

IF(ISTDY.EQ.1) CALL ROTATE(YF,ZF,BETAW-BETAB) 

CALL ROTATE(XF,YF,PSIW-PSIO) 

IF(ISTDY.EQ.O) GO TO 220 

C-64 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

00000680 

00000690 

00000700 

00000710 

00000720 

00000730 

00000740 

00000750 

00000760 

00000770 

00000780 

00000790 

00000800 

00000810 

00000820 

00000830 

00000840 

00000850 

00000860 

00000870 

00000880 

00000890 

00000900 

00000910 

00000920 

00000930 

00000940 

00000950 

00000960 

00000970 

00000980 

00000990 

00001000 

00001010 

00001020 

00001030 

00001040 
Source FiLe: LSWT04.FOR Program Unit: FILMNT 

C 

C TRANSFORM INITIAL POINT TO WIND AXIS FOR INTEGRATION 

C 

C 

CALL ROTATE(ZF,XF,ALPS2) 

CALL ROTATE(YF,ZF,ALPS1) 

220 CONTINUE 

C 

C INTEGRATE WITH KS STEPS OVER TIME TO GET PRESENT POSITION 

C 

C 

C 

KS = K 

IF(ISTDY.EQ.O) KS = 1 

DPSI = -(PSIW-PSIO)/KS 

PSIF = ATAN2(-XF,YF) 

DO 300 I = 1,KS 

C GET SETTLING RATE DUE TO WIND PROFILE 

C 

IF(ISTDY.EQ.1) CALL WNDPRO(0,XF,YF,ZF,VW1,VW2,VW3,AKZW) 

C 

C UPDATE TRAILER COORDINATE FOR THIS STEP 

C 

C 

C 

ZF = ZF+(AKZW+AKZI)*DPSI 

RF = RRATIO*(A+(1-A)*EXP(-AKR*(ZF-ZFO») 

XF = -RF*SIN(PSIF) 

YF = RF*COS(PSIF) 

300 CONTINUE 

IF(ISDTY.EQ.O) GO TO 310 

C TRANSFORM BACK TO SHAFT AXIS 

C 

C 

C 

CALL ROTATE(YF,ZF,-ALPS1) 

CALL ROTATE(ZF,XF,-ALPS2) 

RF = SQRT(XF**2+YF**2) 

310 CONTINUE 

C SAVE FILAMENT INTO STORAGE ARRAY 

C 

C 

C 

XW(K,J) = XF 

YW(K,J) = YF 

ZW(K,J) = ZF 

400 CONTINUE 

C LOAD FILAMENT COORDINATES INTO DISK FILE 

C 

IREC = (IBLD-1)*NP1+J 

WRITE(IOU13, REC = IREC) (XW(K,J),YW(K,J),ZW(K,J), K = 1,KMAX(J» 

C-65 

00001050 

00001060 

00001070 

00001080 

00001090 

00001100 

00001110 

00001120 

00001130 

00001140 

00001150 

00001160 

00001170 

00001180 

00001190 

00001200 

00001210 

00001220 

00001230 

00001240 

00001250 

00001260 

00001270 

00001280 

00001290 

00001300 

00001310 

00001320 

00001330 

00001340 

00001350 

00001360 

00001370 

00001380 

00001390 

00001400 

00001410 

00001420 

00001430 

00001440 

00001450 

00001460 

00001470 

00001480 

00001490 

00001500 

00001510 

00001520 

00001530 

00001540 

00001550 

00001560 
Source FiLe: LSWT04.FOR 

C 

C 

500 CONTINUE 

RETURN 

END 

C-66 

Program Unit: FILMNT 

00001570 

00001580 

00001590 

00001600 

00001610 
Source FiLe: LSWT04.FOR Program Unit: FILROL 

C ******************************************************************00000010 

C 00000020 

C LSWT04(FILROL) 00000030 

C 00000040 

C FAIRS INBOARD OR OUTBOARD SHEET FILAMENTS FROM BLADE TO MERGE OOOOOOSO 

C POINT ON ROOT OR TIP VORTEX TRAJECTORY RESPECTIVELY 00000060 

C 00000070 

C ******************************************************************00000080 

C 00000090 

SUBROUTINE FILROL(JM,J1,J2,IBLD,PSIB) 00000100 

C 00000110 

COMMON/ CIPRT / IPRT1, IPRT2, IPRT3, IPRT4, IPRTS, IPRT6, 00000120 

1 IPRT7, IPRTB 00000130 

COMMON/ CONSTS / PI, RPD 00000140 

COMMON/ PNLCRD / XS(6,24), YS(6,24), ZS(6,24), 000001 SO 

1 XCOL(S,20), YCOL(5,20), ZCOL(5,20) 00000160 

COMMON/ PNLNDX / MP, NP, NPANEL, 00000170 

1 MP1, NP1, NPNLSQ, 000001BO 

2 NSGMNT, JGLIM(4,2), JCGLIM(4,2), 00000190 

3 NPS(4), NBLDS 00000200 

COMMON/ UNITS / IOU1, IOUS, IOU6, IOU7, IOUB, 00000210 

1 IOU10, IOU11, IOU12, IOU13 00000220 

COMMON/ WAKCRD / XW(133,24), YW(133,24), ZW(133,24) 00000230 

COMMON/ WAKNDX / REVS, NWIPR, NWI, 00000240 

1 KMAX(24), IFWAK, JS(3,2), 000002S0 

2 PSIMR, PSIMT, IROLL 00000260 

C 00000270 

C ******************************************************************000002BO 

C 00000290 

C READ COORDINATES FROM DISK FILE FOR FILAMENT TO MERGE INTO 00000300 

C 00000310 

IREC = (IBLD-1)*NP1+JM 00000320 

READ(IOU13, REC = IREC) (XW(K,JM),YW(K,JM),ZW(K,JM), K=1,KMAX(JM»00000330 

C 00000340 

C SEARCH TO LOCATE MERGE POINT NEAREST DESIRED AZIMUTH 000003S0 

C 00000360 

IF(JM.EQ.J1) PSIMIN = PSIMR+PSIB 00000370 

IF(JM.EQ.J2) PSIMIN = PSIMT+PSIB 000003BO 

C 00000390 

DO 100 K = 1,KMAX(JM) 00000400 

C 00000410 

XM = XW(K,JM) 00000420 

YM = YW(K,JM) 00000430 

CALL ROTATE(XM,YM,-PSIB) 00000440 

PSIM = ATAN2(-XM,YM) 00000450 

IF(PSIM.GT.O.O) PSIM = PSIM-2.0*PI 00000460 

PSIM = PSIM+PSIB 00000470 

C 000004BO 

IF(PSIM.LE.PSIMIN) GO TO 200 00000490 

C OOOOOSOO 

100 CONTINUE 00000510 

C 00000520 

C-67 
Source File: LSWT04.FOR Program Unit: FILROL 

200 CONTINUE 00000530 

C 00000540 

KM = K 00000550 

RM = SQRT(XW(KM,JM)**2+YW(KM,JM)**2) 00000560 

ZM = ZW(KM,JM) 00000570 

C 00000580 

RMM1 = SQRT(XW(KM-1,JM)**2+YW(KM-1,JM)**2) 00000590 

XM = XW(KM-1,JM) 00000600 

YM = YW(KM-1,JM) 00000610 

CALL ROTATE(XM,YM,-PSIB) 00000620 

PSIMM1 = ATAN2(-XM,YM) 00000630 

IF(PSIMM1.GT.0.0) PSIMM1 = PSIMM1-2.0*PI 00000640 

PSIMM1 = PSIMM1+PSIB 00000650 

C 00000660 

RMP1 = SQRT(XW(KM+1,JM)**2+YW(KM+1,JM)**2) 00000670 

XM = XW(KM+1,JM) 00000680 

YM = YW(KM+1,JM) 00000690 

CALL ROTATE(XM,YM,-PSIB) 00000700 

PSIMP1 = ATAN2(-XM,YM) 00000710 

IF(PSIMP1.GT.0.0) PSIMP1 = PSIMP1-2.0*PI 00000720 

PSIMP1 = PSIMP1+PSIB 00000730 

C 00000740 

AA = «RMP1-RMM1)/(PSIMP1-PSIMM1)+(RMM1-RM)/(PSIM-PSIMM1»/ 00000750 

1 «PSIMP1**2-PSIMM1**2)/(PSIMP1-PSIMM1)-(PSIM**2-PSIMM1**2)/ 00000760 

2 (PSIM-PSIMM1» 00000770 

BB = (RM-RMM1)/(PSIM-PSIMM1)-(PSIM**2-PSIMM1**2)/(PSIM-PSIMM1)*AA 00000780 

C 00000790 

RMP = 2.0*AA*PSIM+BB 00000800 

C 00000810 

C SWEEP RADIALLY 00000820 

C 00000830 

IF(JM.EQ.J1) J1 = J1+1 00000840 

IF(JM.EQ.J2) J2 = J2-1 00000850 

DO 300 J = J1,J2 00000860 

C 00000870 

C STARTING COORDINATE OF TRAILER FILAMENT IS BLADE TRAILING EDGE 00000880 

C 00000890 

XFO = XS(MP1,J) 00000900 

YFO = YS(MP1,J) 00000910 

ZFO = ZS(MP1,J) 00000920 

RFO = SQRT(XFO**2+YFO**2) 00000930 

C 00000940 

XP = XFO 00000950 

YP = YFO 00000960 

CALL ROTATE(XP,YP,-PSIB) 00000970 

PSIO = ATAN2(-XP,YP) 00000980 

IF(PSIO.GT.O.O) PSIO = PSIO-2.0*PI 00000990 

PSIO = PSIO+PSIB 00001000 

C 00001010 

XW(1,J) = XFO 00001020 

YW(1,J) = YFO 00001030 

ZW(1,J) = ZFO 00001040 

C-68 
Source FiLe: LSWT04.FOR Program Unit: FILROL 

C 

C FAIRING CONSTANTS 

C 

C 

DPSI = PSIM-PSIO 

AA = (2.0*RFO+RMP*DPSI-2.0*RM)/DPSI**3 

BB = (RMP-3.0*AA*DPSI**2)/2.0/DPSI 

ZSLP = (ZM-ZFQ)/(PSIM-PSIO> 

C SET LENGTH INDEX TO KM 

C 

KMAX(J) = KM 

C 

C SWEEP AND GENERATE AZIMUTH GRID 

C 

C 

C 

C 

FKMM1 = FLOAT(KM-1) 

DO 400 K = 2,KM 

FKM1 = FLOAT(K-1) 

PSIW = PSIO+(PSIM-PSIO)*(FKM1/FKMM1)**2 

DPSI = PSIW-PSIO 

C FAIR FROM TRAILING EDGE TO MERGE POINT WITH CUBIC IN AZIMUTH 

C FOR R AND LINEAR IN AZIMUTH FOR Z 

C 

C 

RF = AA*DPSI**3+BB*DPSI**2+RFO 

ZF = ZSLP*DPSI+ZFO 

XF = -RF*SIN(PSIW) 

YF = RF*COS(PSIW) 

C SAVE COORDINATE INTO STORAGE ARRAY 

C 

C 

C 

XW(K,J) = XF 

YW(K,J) = YF 

ZW(K,J) = ZF 

400 CONTINUE 

C LOAD FILAMENT COORDINATES INTO DISK FILE 

C 

C 

C 

IREC = (IBLD-1)*NP1+J 

WRITE(IOU13, REC = IREC) (XW(K,J),YW(K,J),ZW(K,J), K = 1,KMAX(J» 

300 CONTINUE 

RETURN 

END 

C-69 

00001050 

00001060 

00001070 

00001080 

00001090 

00001100 

00001110 

00001120 

00001130 

00001140 

00001150 

00001160 

00001170 

00001180 

00001190 

00001200 

00001210 

00001220 

00001230 

00001240 

00001250 

00001260 

00001270 

00001280 

00001290 

00001300 

00001310 

00001320 

00001330 

00001340 

00001350 

00001360 

00001370 

00001380 

00001390 

00001400 

00001410 

00001420 

00001430 

00001440 

00001450 

00001460 

00001470 

00001480 

00001490 

00001500 

00001510 
Source FiLe: LSWT04.FOR Program Unit: PWAKE 

C ******************************************************************00000010 

C 00000020 

C LSWT04(PWAKE) 00000030 

C 00000040 

C POSITIONS THE WAKE COORDINATES FOR EACH BLADE IF ISTDY = 0 00000050 

C 00000060 

C ******************************************************************00000070 

C 00000080 

SUBROUTINE PWAKE 00000090 

C 00000100 

COMMONI CONSTS I PI, RPD 00000110 

COMMONI PNLNDX IMP, NP, NPANEL, 00000120 

1 MP1, NP1, NPNLSQ, 00000130 

2 NSGMNT, JGLIM(4,2), JCGLIM(4,2), 00000140 

3 NPS(4), NBLDS 00000150 

COMMONI UNITS I IOU1, IOU5, IOU6, IOU7, IOU8, 00000160 

1 IOU10, IOU11, IOU12, 10U13 00000170 

COMMONI WAKCRD I XW(133,24), YW(133,24), ZW(133,24) 00000180 

COMMONI WAKNDX I REVS, NWIPR, NWI, 00000190 

1 KMAX(24), IFWAK, JS(3,2), 00000200 

2 PSIMR, PSIMT, IROLL 00000210 

C 00000220 

C ******************************************************************00000230 

C 00000240 

C BLADE SPACING AZIMUTH INCREMENT 00000250 

C 00000260 

PSI8S = 2.0*PI/NBLDS 00000270 

C 00000280 

C ROTATION TO POSITION OF FOLLOWING BLADE IS NEGATIVE 00000290 

C 00000300 

DELPSI = -PSIBS 00000310 

C 00000320 

C SWEEP BLADE AZIMUTH POSITION 00000330 

C 00000340 

DO 300 IBLD = 2,NBLDS 00000350 

C 00000360 

C SWEEP TRAILERS 00000370 

C 00000380 

DO 200 J = 1,NP1 00000390 

C 00000400 

C READ PREVIOUS BLADE'S TRAILER COORDINATES FROM DISK FILE 00000410 

C 00000420 

IREC = (IBLD-2)*NP1+J 00000430 

READ(IOU13, REC = IREC) (XW(K,J),YW(K,J),ZW(K,J), K = 1,KMAX(J» 00000440 

C 00000450 

C PLACE THIS TRAILER AT NEXT AZIMUTH 00000460 

C 00000470 

DO 100 K = 1,KMAX(J) 00000480 

CALL ROTATE(XW(K,J),YW(K,J),DELPSI) 00000490 

100 CONTINUE 00000500 

C 00000510 

C WRITE TO DISK FILE 00000520 

C-70 
Source FiLe: LSVT04.FOR Program Unit: PVAKE 

C 00000530 

IREC = (IBLD-1)*NP1+J 00000540 

WRITE(IOU13, REC = IREC) (XW(K,J),YW(K,J),ZW(K,J), K = 1,KMAX(J» 00000550 

C 00000560 

200 CONTINUE 00000570 

C 00000580 

300 CONTINUE 00000590 

C 00000600 

RETURN 00000610 

END 00000620 

C-71 
Source FiLe: LSWT04.FOR Program Unit: WAKPRM 

C ******************************************************************00000010 

C 00000020 

C LSWT04(WAKPRM) 00000030 

C 00000040 

C ADJUSTS REFERENCE WAKE PARAMETERS BASED ON THE WORKING STATE OF 00000050 

C THE ROTOR 00000060 

C 00000070 

C ******************************************************************00000080 

C 00000090 

SUBROUTINE WAKPRM 00000100 

C 00000110 

COMMON/ CTCON / CTRIN, CTROUT, CTRUPD 00000120 

COMMON/ CWIND / ALPS1, ALPS2, HO, VWO, E, 00000130 

1 ITSTYP, TSTAB(100), NXTS, NYTS, 00000140 

2 TO, TP, TPO, TPS, TK, 00000150 

3 AB(S,2), AT(S,2) 00000160 

COMMON/ PARMS / RADIUS, OMEGA, OMEGAR, RHO, AMU 00000170 

COMMON/ WRATES / AKZW, AKZI, AKZ, AKR, A, AKB, 00000180 

1 CTRW, AKZO, ALAMO, AKRO, VAXB, VNUB 00000190 

C 00000200 

C ******************************************************************00000210 

C 00000220 

C CALCULATE MOMENTUM INDUCED VELOCITY RATIO 00000230 

C 00000240 

CTRW = CTRIN 00000250 

SGNCT = SIGN(1.0,CTRW) 00000260 

VNUO = OMEGAR*SGNCT*SQRT(ABS(CTRW)/2.0) 00000270 

VAXB = VWO/VNUO 00000280 

AKAXB = VAXB/SQRT(2.0) 00000290 

C 00000300 

IF(VAXB.GE.2.0) GO TO 100 00000310 

IF(VAX8.GE.1.S) GO TO 200 00000320 

IF(VAXB.GE.O.O) GO TO 300 00000330 

GO TO 400 00000340 

C 00000350 

100 CONTINUE 00000360 

C 00000370 

C WINDMILL BRAKE STATE 00000380 

C 00000390 

VNUB = -VAXB/2.0+SQRT«VAXB/2.0)**2-1) 00000400 

AKB = AKAXB/2.0+SQRT«AKAXB/2.0)**2+1.0-SQRT(2.0» 00000410 

GO TO 500 00000420 

C 00000430 

200 CONTINUE 00000440 

C 00000450 

C VORTEX RING STATE, PAST REGION OF ROUGHNESS 00000460 

C 00000470 

VNUB = 3.0*VAXB-7.0 00000480 

AKB = VAXB+VNUB 00000490 

GO TO 500 00000500 

C 00000510 

300 CONTINUE 00000520 

C-72 
Source FiLe: LSWT04.FOR 

C 

C VORTEX RING STATE, THROUGH REGION OF ROUGHNESS 

C 

C 

C 

VNUB = -VAXB-1.0 

AKB = VAXB+VNUB 

GO TO 500 

400 CONTINUE 

C NORMAL WORKING STATE 

C 

VNUB = -VAXB/2.0-SQRT«VAXB/2.0)**2+1.0) 

AKB = AKAXB/2.0-SQRT«AKAXB/2.0)**2+1.0) 

C 

500 CONTINUE 

C 

C SET REFERENCE WAKE PARAMETERS 

C 

C 

AKZO = -SGNCT*SQRT(ABS(CTRW» 

ALAMO = 4.0*SQRT(ABS(CTRW» 

AKRO = ALAMO/AKZO 

C MODIFY REFERENCE VALUES BY VELOCITY RATIO 

C 

C 

C 

AKZW = VWO/OMEGAR 

AKZ = -AKZO*AK8 

AKZI = AKZ-AKZU 

AKR = ABS(AKRO/AKB) 

AKR = SIGN(AKR,AKZ) 

A = 1.0+0.22*SIGN(1.0,AKZ) 

RETURN 

END 

C-73 

Program Unit: WAKPRM 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

00000680 

00000690 

00000700 

00000710 

00000720 

00000730 

00000740 

00000750 

00000760 

00000770 

00000780 

00000790 

00000800 

00000810 

00000820 

00000830 

00000840 

00000850 

00000860 
Source FiLe: LSWT04.FOR Program Unit: WAKUPD 

c ******************************************************************00000010 

C 00000020 

C LSWT04CWAKUPD) 00000030 

C 00000040 

C CHECKS WAKE PARAMETER CONVERGENCE AND CALCULATES NEW VALUES BASED 00000050 

C ON MOST RECENT ITERATION 00000060 

C 00000070 

C ******************************************************************00000080 

C 00000090 

SUBROUTINE WAKUPD 00000100 

C 00000110 

COMMONI CIPRT I IPRT1, IPRT2, IPRT3, IPRT4, IPRT5, IPRT6, 00000120 

1 IPRT7, IPRT8 00000130 

COMMONI CONTRL I TOL1, TOL2, TOL3, ICYL1, ICYL2, ICYL3, 00000140 

1 ICYL4 00000150 

COMMONI CTCON I CTRIN, CTROUT, CTRUPD 00000160 

COMMONI IFLAGS I ISTDY, IWFLAG, LSFLAG, IRFLAG 00000170 

COMMONI WRATES I AKZW, AKZI, AKZ, AKR, A, AKB, 00000180 

1 CTRW, AKZO, ALAMO, AKRO, VAXB, VNUB 00000190 

C 00000200 

C ******************************************************************00000210 

C 00000220 

C SAVE CURRENT VALUES 00000230 

C 00000240 

AKZ1 = AKZW+AKZI 00000250 

AKR1 = AKR 00000260 

CT1 = CTRIN 00000270 

CTRUPD = CCTRIN+CTROUT)/2.0 00000280 

C 00000290 

C GET NEW VALUES 00000300 

C 00000310 

CTRIN = CTROUT 00000320 

C 00000330 

CALL WAKPRM 00000340 

C 00000350 

IFCIPRT6.EQ.1) CALL OUT6 00000360 

C 00000370 

AKZ2 = AKZW+AKZI 00000380 

AKR2 = AKR 00000390 

C 00000400 

C CHECK CONVERGENCE 00000410 

C 00000420 

IWFLAG = 0 00000430 

TOLMAX = 0.05 00000440 

IFCTOL3.GT.0.0) TOLMAX = TOL3 00000450 

TOLKZ = A8SCCAKZ2-AKZ1)/AKZ2) 00000460 

TOLKR = ABSCCAKR2-AKR1)/AKR2) 00000470 

IF(TOLKZ.GT.TOLMAX) IWFLAG = 1 00000480 

CTRIN = CTRUPD 00000490 

C 00000500 

CALL WAKPRM 00000510 

C 00000520 

C-74 
Source FiLe: LSWT04.FOR 

C 

IF(IPRT6.EQ.1) CALL OUT6 

RETURN 

END 

C-75 

Program Unit: WAKUPD 

00000530 

00000540 

00000550 

00000560 
Source File: LSWT04.FOR Program Unit: ROLNDX 

C ******************************************************************00000010 

C 00000020 

C LSWT04eROLNDX) 00000030 

C 00000040 

C UPDATES WAKE SHEET INDICES FOR COMPATABILITY WITH RADIAL 00000050 

C CIRCULATION DISTRIBUTION 00000060 

C 00000070 

C ******************************************************************00000080 

C 00000090 

SUBROUTINE ROLNDX 00000100 

C 00000110 

COMMON/ CCIRC / CIRC(100), DCIRC(100), ACIRC(100), 00000120 

1 CIRCR(100), BCIRC(20), GO(20), 00000130 

2 TECF, AKM(6), XKM(5) 00000140 

COMMON/ CONTRL / TOL1, TOL2, TOL3, ICYL1, ICYL2, ICYL3, 00000150 

1 ICYL4 00000160 

COMMON/ IFLAGS / ISTDY, IWFLAG, LSFLAG, IRFLAG 00000170 

COMMON/ PNLNDX / MP, NP, NPANEL, 00000180 

1 MP1, NP1, NPNLSQ, 00000190 

2 NSGMNT, JGLIM(4,2), JCGLIM(4,2), 00000200 

3 NPS(4), NBLDS 00000210 

COMMON/ WAKNDX / REVS, NWIPR, NWI, 00000220 

1 KMAX(24), IFWAK, JS(3,2), 00000230 

2 PSIMR, PSIMT, IROLL 00000240 

C 00000250 

C ******************************************************************00000260 

C 00000270 

C SEARCH FROM TIP INBOARD FOR FIRST MAXIMUM IN BOUND CIRCULATION 00000280 

C 00000290 

JMAX = NP 00000300 

C 00000310 

DO 100 JJ = 2,NP 00000320 

J = NP-JJ+1 00000330 

IFeaCIRC(J).LT.BCIRCeJ+1» GO TO 150 00000340 

JMAX = J 00000350 

100 CONTINUE 00000360 

C 00000370 

150 CONTINUE 00000380 

C 00000390 

C GET CORRESPONDING SEGMENT 00000400 

C 00000410 

DO 200 JSEG = 1,NSGMNT 00000420 

IF«JCGLIM(JSEG,1).LE.JMAX) .AND. eJMAX.LE.JCGLIMeJSEG,2») 00000430 

1 JSEGM = JSEG 00000440 

200 CONTINUE 00000450 

C 00000460 

C INBOARD INDEX OF OUTBOARD SHEET CORRESPONDS TO OUTBOARD 00000470 

C GRIDLINE INDEX OF THE JMAX PANEL 00000480 

C 00000490 

JROLL = eJMAX-JCGLIM(JSEGM,1)+1) + JGLIMeJSEGM,1) 00000500 

C 00000510 

C SET CONVERGENCE STATUS FLAG 00000520 

C-76 
Source File: LSWT04.FOR 

C 

IF(JROLL.NE.JS(3,1» IRFLAG = 1 

C 

C RETURN IF NO CHANGE IN ROLL-UP 

C 

IF(IRFLAG.EQ.O) GO TO 400 

C 

C ADJUST OUTBOARD SHEET INDEX 

C 

JS(3,1) = JROLL 

C 

C ADJUST MID-SHEET OUTER BOUNDARY IF OPTIONED 

C 

C 

IF(JS(2,2).EQ.0) GO TO 300 

JS(2,2) = JROLL-1 

C MAKE SURE AT LEAST ONE FILAMENT IS LEFT 

C 

C 

C 

IF(JS(2,2).GE.JS(2,1» GO TO 400 

IF(JS(1,2).EQ.0) GO TO 250 

JS(2,1) = 0 

JS(2,2) = 0 

GO TO 300 

250 CONTINUE 

JS(2,1) = 1 

JS(2,2) = 1 

JS(3,1) = JS(1,2) + 1 

GO TO 400 

300 CONTINUE 

C OTHERWISE, ADJUST INBOARD SHEET OUTER BOUNDARY 

C 

C 

C 

JS(1,2) = JROLL-1 

IF(JS(1,2).GE.JS(1,1» GO TO 400 

JS(1,1) = 1 

J S(1 ,2) = 1 

JS(3,1) = JS(1,2) + 1 

400 CONTINUE 

RETURN 

END 

C-77 

Program Unit: ROLNDX 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

00000680 

00000690 

00000700 

00000710 

00000720 

00000730 

00000740 

00000750 

00000760 

00000770 

00000780 

00000790 

00000800 

00000810 

00000820 

00000830 

00000840 

00000850 

00000860 

00000870 

00000880 

00000890 

00000900 

00000910 

00000920 

00000930 

00000940 

00000950 
Source File: lSWT05.FOR Program Unit: READIN 

C ******************************************************************00000010 

C 00000020 

C LSWT05(READIN) 00000030 

C 00000040 

C DIRECTS ALL PROGRAM INPUT 00000050 

C 00000060 

C ******************************************************************00000070 

C 00000080 

SUBROUTINE READIN 00000090 

C 00000100 

CHARACTER CASEID*72 00000110 

C 00000120 

COMMON! CASE ! IPOINT, ALPHAD, VWOD, IVDIM, VWFAC, PSIRD, 00000130 

1 CASEID 00000140 

COMMON! CGRID / NGRID(4), XG(6), YG(24), XCG(5) 00000150 

COMMON! CIPRT ! IPRT1, IPRT2, IPRT3, IPRT4, IPRT5, IPRT6, 00000160 

1 IPRT7, IPRT8 00000170 

COMMON! CONFIG ! XOCREF(4), YSEG(4,2), JCHORD(4,2), 00000180 

1 YCHORD(24), CHORD(24) , JTWIST<4,2) , 00000190 

2 YTWIST< 24), TWIST(24) , JXAOFF(4,2) , 00000200 

3 YXAOFF(24), XAOFF(24) , JAFT(4,2), 00000210 

4 YAFT( 24,2), IDAF(24), XTRAN(4), 00000220 

5 YTRAN(4) , ZTRAN(4) , XROT(4) , 00000230 

6 YROT< 4), ZROT(4) 00000240 

COMMON! CONSTS ! PI, RPD 00000250 

COMMON! CONTRL ! TOL1, TOL2, TOL3, ICYL1, ICYL2, ICYL3, 00000260 

1 ICYL4 00000270 

COMMON! CTCON ! CTRIN, CTROUT, CTRUPD 00000280 

COMMON! CWIND ! ALPS1, ALPS2, HO, VWO, E, 00000290 

1 ITSTYP, TSTAB(10Q), NXTS, NYTS, 00000300 

2 TO, TP, TPO, TPS, TK, 00000310 

3 AB(5,2), AT<5,2) 00000320 

COMMON! IFLAGS ! ISTDY, IWFLAG, LSFLAG, IRFLAG 00000330 

COMI..,ON! PARMS ! RAD IUS, OMEGA, OMEGAR, RHO, AMU 00000340 

COMMON! PNLNDX ! MP, NP, NPANEL, 00000350 

1 MP1, NP1, NPNLSQ, 00000360 

2 NSGMNT, JGLIM(4,2), J CGLIM(4,2), 00000370 

3 NPS(4), NBLDS 00000380 

COMMON! SWEEP ! ALPS IN, DALP, NALP, VWOIN, DVWO, NVWO, 00000390 

1 PSIRIN, DPSIR, NPSIR 00000400 

COMMON! UNITS ! IOU1, IOU5, IOU6, IOU7, IOU8, 00000410 

1 IOU10, IOU11, IOU12, IOU13 00000420 

COMMON! WAKNDX / REVS, NWIPR, NWI, 00000430 

1 KMAX(24), IFWAK, JS(3,2), 00000440 

2 PSIMR, PS IMT, IROLL 00000450 

C 00000460 

C ******************************************************************00000470 

C 00000480 

REWIND IOUS 00000490 

C 00000500 

C ------------------------ 00000510 

C RECORD SET 1, CASE SETUP 00000520 

, C-78 
Source File: lSWT05.FOR Program Unit: READIN 

C ------------------------ C 

C 

READCIOU5,10) CASEID 

10 FORMAT<A72) 

C PRINT SWITCHES 

C 

C 

READ CIOU5,11) APRT1,APRT2,APRT3,APRT4,APRT5,APRT6,APRT7 

READ CIOU5,11) APRT8 

11 FORMATC7F10.0) 

IPRT1 = IFIXCAPRT1+0.1) 

IPRT2 = IFIXCAPRT2+0.1) 

IPRT3 = IFIXCAPRT3+0.1) 

IPRT4 = IFIXCAPRT4+0.1) 

IPRT5 = IFIXCAPRT5+0.1) 

IPRT6 = IFIXCAPRT6+0.1) 

IPRT7 = IFIXCAPRT7+0.1) 

IPRT8 = IFIXCAPRT8+0.1) 

C OUTPUT POINTER FOR TRACE OPTION 

C 

C 

IOU7 = IPRT7 

IFCIPRT7.EQ.1) IOU7 = 0 

C TOLERANCES 

C 

READCIOU5,11) TOL1,TOL2,TOL3 

C 

C ITERATION CYCLE LIMITS 

C 

C 

READCIOU5,11) AICYL1,AICYL2,AICYL3,AICYCL4 

ICYL1 = IFIXCAICYL1+0.1) 

ICYL2 = IFIXCAICYL2+0.1) 

ICYL3 = IFIXCAICYL3+0.1) 

ICYL4 = IFIXCAICYL4+0.1) 

C STREAM CONDITIONS AND PITCH SWEEP 

C 

C 

C 

C 

REAOCIOU5,11) AISTDY,RPM,AMURAT,SIGMAP 

ISTDY = IFIXCAISTOY + 0.1) 

AMU = 3.719E-07*AMURAT 

RHO = 0.002378*SIGMAP 

READCIOU5,11) VWOIN,DVWO,ANVWO,VDIM 

NVWO = IFIXCANVWO+0.1) 

IVDIM = IFIXCVDIM+0.1) 

READCIOU5,11) ALPSIN,DALP,ANALP,THRUST 

ALPSIN = ALPSIN*RPD 

DALP = DALP*RPD 

NALP = ANALP+0.1 

C-79 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

00000680 

00000690 

00000700 

00000710 

00000720 

00000730 

00000740 

00000750 

00000760 

00000770 

00000780 

00000790 

00000800 

00000810 

00000820 

00000830 

00000840 

00000850 

00000860 

00000870 

00000880 

00000890 

00000900 

00000910 

00000920 

00000930 

00000940 

00000950 

00000960 

00000970 

00000980 

00000990 

00001000 

00001010 

00001020 

00001030 

00001040 
Source FiLe: LSWT05.FOR Program Unit: READIN 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

CONFIGURATION PARAMETERS 

READ(IOU5,11) ABLDS,AMP,ASGMNT,RADIUS 

NBLDS = IFIX(ABLDS+0.1) 

MP = IFIX(AMP+0.1) 

NSGMNT = IFIX(ASGMNT+0.1) 

OMEGAR = RPM*2*PI*RADIUS/60.0 

OMEGA = OMEGAR/RADIUS 

CTRIN = THRUST/(RHO*PI*RADIUS**2*OMEGAR**2) 

CTROUT = CTRIN 

PUT VWOIN, DVWO INTO WORKING DIMENSIONS (FT/SEC) 

IVDIM INPUT DIMENSION 

o FT/SEC 

1 M/SEC 

2 MPH 

3 TIP SPEED RATIO 

GO TO (50,51,52,53), IVDIM + 1 

50 CONTINUE 

VWFAC = 1.0 

GO TO 60 

51 CONTINUE 

VWFAC = 0.304800 

GO TO 60 

52 CONTINUE 

VWFAC = 15.0 I 22.0 

GO TO 60 

53 CONTINUE 

VWFAC = 1.0 I OMEGAR 

CHECK FOR DVWO = 0.0, AND HANDLE, THEN RESTRICT TO ONE POINT 

IF(DVWO.LE.1.0E-06) NVWO = 1 

GO TO 70 

60 CONTINUE 

VWOIN = VWOIN I VWFAC 

DVWO = DVWO I VWFAC 

70 CONTINUE 

WAKE LENGTH PARAMETERS 

READ(IOU5,11) REVS,ANWIPR,AIFWAK,PSIMR,PSIMT, AROLL 

NWIPR = IFIX(ANWIPR+0.1) 

C-80 

00001050 

00001060 

00001070 

00001080 

00001090 

00001100 

00001110 

00001120 

00001130 

00001140 

00001150 

00001160 

00001170 

00001180 

00001190 

00001200 

00001210 

00001220 

00001230 

00001240 

00001250 

00001260 

00001270 

00001280 

00001290 

00001300 

00001310 

00001320 

00001330 

00001340 

00001350 

00001360 

00001370 

00001380 

00001390 

00001400 

00001410 

00001420 

00001430 

00001440 

00001450 

00001460 

00001470 

00001480 

00001490 

00001500 

00001510 

00001520 

00001530 

00001540 

00001550 

00001560 
Source File: LSWT05.FOR Program Unit: READIN 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

IFWAK = IFIX(AIFWAK+0.1) 

PSIMR = -PSIMR*RPD 

PSIMT = -PSIMT*RPD 

IROLL = IFIX(AROLL+0.1) 

READ(IOU5,11) AJS11,AJS12,AJS21,AJS22,AJS31,AJS32 

JS(1,1) = IFIX(AJS11+0.1) 

JS(1,2) = IFIX(AJS12+0.1) 

IF(JS(1,1).EQ.0) JS(1,2) = 0 

IF(JS(1,2).EQ.0) JS(1,1) = 0 

JS(2,1) = IFIX(AJS21+0.1) 

JS(2,2) = IFIX(AJS22+0.1) 

IF(JS(2,1).EQ.0) JS(2,2) = 0 

IF(JS(2,2).EQ.0) JS(2,1) = 0 

JS(3,1) = IFIX(AJS31+0.1) 

JS(3,2) = IFIX(AJS32+0.1) 

IF(JS(3,1).EQ.0) JS(3,2) = 0 

IF(JS(3,2).EQ.0) JS(3,1) = 0 

SET IROLL = 0 IF SELECTION NOT CORRECT 

IF(JS(3,2).EQ.0) IROLL = 0 

IF«JS(2,2).EQ.0) .AND. (JS(1,2).EQ.0» IROLL = 0 

RECORD SET 2, SEGMENT DESCRIPTION 

DO 500 JSEG = 1,NSGMNT 

READ(IOU5,11) ANPS,ANGRID,XOCREF(JSEG),YSEG(JSEG,1),YSEG(JSEG,2) 

READ(IOU5,11) XTRAN(JSEG),YTRAN(JSEG),ZTRAN(JSEG), 

1 XROT(JSEG),YROT(JSEG),ZROT(JSEG) 

NPS(JSEG) = IFIX(ANPS+0.1) 

NGRID(JSEG) = IFIX(ANGRID+0.1) 

YSEG(JSEG,1) = YSEG(JSEG,1)/RADIUS 

YSEG(JSEG,2) = YSEG(JSEG,2)/RADIUS 

XTRAN(JSEG) = XTRAN(JSEG)/RADIUS 

YTRAN(JSEG) = YTRAN(JSEG)/RADIUS 

ZTRAN(JSEG) = ZTRAN(JSEG)/RADIUS 

XROT(JSEG) = XROT(JSEG)*RPD 

YROT(JSEG) = YROT(JSEG)*RPD 

ZROT(JSEG) = ZROT(JSEG)*RPD 

CHORD DISTRIBUTION 

READ(IOU5,11) ACHORD 

NCHORD = IFIX(ACHORD+0.1) 

J1 = 1 

C-81 

00001570 

00001580 

00001590 

00001600 

00001610 

00001620 

00001630 

00001640 

00001650 

00001660 

00001670 

00001680 

00001690 

00001700 

00001710 

00001720 

00001730 

00001740 

00001750 

00001760 

00001770 

00001780 

00001790 

00001800 

00001810 

00001820 

00001830 

00001840 

00001850 

00001860 

00001870 

00001880 

00001890 

00001900 

00001910 

00001920 

00001930 

00001940 

00001950 

00001960 

00001970 

00001980 

00001990 

00002000 

00002010 

00002020 

00002030 

00002040 

00002050 

00002060 

00002070 

00002080 
Source File: LSWT05.FOR 

C 

C 

C 

IF(JSEG.GT.1) J1 = JCHORD(JSEG-1,2)+1 

J2 = J1+NCHORD-1 

READ(IOU5,11) (YCHORD(J), J = J1,J2) 

READ(IOU5,11) (CHORD(J), J = J1,J2) 

DO 100 J = J1,J2 

YCHORD(J) = YCHORD(J)/RADIUS 

CHORD(J) = CHORD(J)/RADIUS 

100 CONTINUE 

JCHORD(JSEG,1) = J1 

JCHORD(JSEG,2) = J2 

C TWIST DISTRIBUTION 

C 

C 

C 

C 

READ(IOU5,11) ATWIST 

NTWIST = IFIX(ATWIST+0.1) 

J1 = 1 

IF(JSEG.GT.1) J1 = JTWIST(JSEG-1,2)+1 

J2 = J1+NTWIST-1 

READ(IOU5,11) (YTWIST(J), J = J1,J2) 

READ(IOU5,11) (TWIST(J), J = J1,J2) 

DO 200 J = J1,J2 

YTWIST(J) = YTWIST(J)/RADIUS 

TWIST(J) = TWIST(J)*RPD 

200 CONTINUE 

JTWIST(JSEG,1) = J1 

JTWIST(JSEG,2) = J2 

C INPUT REFERENCE AXIS OFFSETS 

C 

C 

C 

C 

READ(IOU5,11) AXAOFF 

NXAOFF = IFIX(AXAOFF+0.1) 

J1 = 1 

IF(JSEG.GT.1) J1 = JXAOFF(JSEG-1,2)+1 

J2 = J1+NXAOFF-1 

READ(IOU5,11) (YXAOFF(J), J = J1,J2) 

READ(IOU5,11) (XAOFF(J), J = J1,J2) 

DO 300 J = J1,J2 

YXAOFF(J) = YXAOFF(J)/RADIUS 

XAOFF(J) = XAOFF(J)/RADIUS 

300 CONTINUE 

JXAOFF(JSEG,1) = J1 

JXAOFF(JSEG,2) = J2 

C AIRFOIL TABLE IDENTIFIERS 

C 

READ(IOU5,11) ANAFT 

C-82 

Program Unit: READIN 

00002090 

00002100 

00002110 

00002120 

00002130 

00002140 

00002150 

00002160 

00002170 

00002180 

00002190 

00002200 

00002210 

00002220 

00002230 

00002240 

00002250 

00002260 

00002270 

00002280 

00002290 

00002300 

00002310 

00002320 

00002330 

00002340 

00002350 

00002360 

00002370 

00002380 

00002390 

00002400 

00002410 

00002420 

00002430 

00002440 

00002450 

00002460 

00002470 

00002480 

00002490 

00002500 

00002510 

00002520 

00002530 

00002540 

00002550 

00002560 

00002570 

00002580 

00002590 

00002600 
Source FiLe: LSWT05.FOR 

NAFT = IFIX(ANAFT+0.1) 

J1 = 1 

IF(JSEG.GT.1) J1 = JAFT(JSEG-1,2)+1 

J2 = J1+NAFT-1 

c 

c 

C 

C 

DO 400 J = J1,J2 

READ(IOU5,11) AIDAF,YAFT1,YAFT2 

IDAF(J) = IFIX(AIDAF+0.1) 

YAFT(J,1) = YAFT1/RADIUS 

YAFT(J,2) = YAFT2/RADIUS 

400 CONTINUE 

JAFT(JSEG,1) = J1 

JAFT(JSEG,2) = J2 

500 CONTINUE 

C BYPASS RECORD SET 3 IF IN STEADY MODE 

C 

IF(ISTDY.EQ.O) GO TO 800 

C 

C ----------------------------- C RECORD SET 3, NON-STEADY MODE 

C ----------------------------- C 

C 

READ(IOU5,11) PSIRIN,DPSIR,APSIR 

PSIRIN = PSIRIN*RPD 

DPSIR = DPSIR*RPD 

NPSIR = IFIX(APSIR+0.1) 

C SHAFT AXIS ORIENTATION AND WIND PROFILE 

C 

C 

C 

READ(IOU5,11) ALPS1,ALPS2,HO,E,ATSTYP 

ALPS1 = ALPS1*RPD 

ALPS2 = ALPS2*RPD 

ITSTYP = IFIX(ATSTYP+0.1) 

GO TO (552,550,551), ITSTYP+1 

550 CONTINUE 

C TOWER SHADOW EQUATION, ITSTYP = 1 

C 

C 

C 

READ(IOU5,11) TO,TP,TPO,TPS,TK 

TPO = TPO*RPD 

TPS = TPS*RPD 

GO TO 552 

551 CONTINUE 

C TOWER SHADOW TABLE, ITSTYP = 2 

C 

READ(IOU5,11) AXTS,AYTS 

C-83 

Program Unit: READIN 

00002610 

00002620 

00002630 

00002640 

00002650 

00002660 

00002670 

00002680 

00002690 

00002700 

00002710 

00002720 

00002730 

00002740 

00002750 

00002760 

00002770 

00002780 

00002790 

00002800 

00002810 

00002820 

00002830 

00002840 

00002850 

00002860 

00002870 

00002880 

00002890 

00002900 

00002910 

00002920 

00002930 

00002940 

00002950 

00002960 

00002970 

00002980 

00002990 

00003000 

00003010 

00003020 

00003030 

00003040 

00003050 

00003060 

00003070 

00003080 

00003090 

00003100 

00003110 

00003120 
Source FiLe: LSWT05.FOR 

C 

C 

NXTS = IFIX(AXTS+0.1) 

NYTS = IFIX(AYTS+0.1) 

CALL REDTAB(TSTAB(1),NXTS,NYTS) 

552 CONTINUE 

C FLAPPING AND PITCH BLADE MOTIONS 

C 

C 

C 

C 

C 

READ(IOU5,11) AB(1,2),AB(1,1) 

NBH = IFIX(AB(1,2)+0.1) 

READ(IOU5,11) (AB(J,1), J = 2,NBH+1) 

READ(IOU5,11) (AB(J,2), J = 2,NBH+1) 

AB(1,1) = AB(1,1)*RPD 

DO 600 J = 2,NBH+1 

AB(J,1) = AB(J,1)*RPD 

AB(J,2) = AB(J,2)*RPD 

600 CONTINUE 

READ(IOU5,11) AT(1,2),AT(1,1) 

NTH = IFIX(AT(1,2)+0.1) 

READ(IOU5,11) (AT(J,1), J = 2,NTH+1) 

READ(IOU5,11) (AT(J,2), J = 2,NTH+1) 

AT(1,1) = AT(1,1)*RPD 

DO 700 J = 2,NTH+1 

AT(J,1) = AT(J,1)*RPD 

AT(J,2) = AT(J,2)*RPD 

700 CONTINUE 

800 CONTINUE 

C ---------------------------- C RECORD SET 4, AIRFOIL TABLES 

C ---------------------------- C 

C 

CALL READAF 

RETURN 

END 

C-84 

Program Unit: READIN 

00003130 

00003140 

00003150 

00003160 

00003170 

00003180 

00003190 

0000320G 

00003210 

00003220 

00003230 

00003240 

00003250 

00003260 

00003270 

00003280 

00003290 

00003300 

00003310 

00003320 

00003330 

00003340 

00003350 

00003360 

00003370 

00003380 

00003390 

00003400 

00003410 

00003420 

00003430 

00003440 

00003450 

00003460 

00003470 

00003480 

00003490 

00003500 

00003510 
Source FiLe: LSWT05.FOR Program Unit: READAF 

C ******************************************************************00000010 

C 00000020 

C LSWT05CREADAF) 00000030 

C 00000040 

C DOES PREPARATION FOR READING AIRFOIL TABLES AND CALLS REDTAB TO 00000050 

C READ TABLE ENTRIES 00000060 

C 00000070 

C ******************************************************************00000080 

C 00000090 

SUBROUTINE READAF 00000100 

C 00000110 

CHARACTER*62 TITLE(5) 00000120 

C 00000130 

COMMON/ AFTABL / NAFT, IDAFT(4), AFTOC(4), IAFTEX, 00000140 

1 STP1(4), STP2(4), STP3(4), 00000150 

2 STP4(4), STP5(4), STP6(4), 00000160 

3 CLTABC200,4), NRCL(4), NACL(4), 00000170 

4 CDTAB(200,4), NRCD(4), NACD(4), 00000180 

5 CMTAB(100,4), NRCM(4), NACM(4) 00000190 

COMMON/ UNITS / IOU1, IOU5, IOU6, IOU7, IOU8, 00000200 

1 IOU10, IOU11, IOU12, IOU13 00000210 

C 00000220 

C ******************************************************************00000230 

C 00000240 

C READ NUMBER OF TABLES TO BE INPUT, TYPE OF EXTENSION TO USE 00000250 

C 00000260 

READ(IOU5,11) ANAFT,AFTEX 00000270 

11 FORMAT(7F10.0) 00000280 

NAFT = IFIX(ANAFT+0.1) 00000290 

IAFTEX = IFIX(AFTEX+0.1) 00000300 

C 00000310 

C LOOP TO READ TABLES 00000320 

C 00000330 

DO 400 J = 1,NAFT 00000340 

C 00000350 

READ(IOU5,13) AIDAFT, TITLE(J) 00000360 

13 FORMAT(F10.0,A62) 00000370 

READ(IOU5,11) ANRCL,ANACL,ANRCD,ANACD,ANRCM,ANACM 00000380 

C 00000390 

IDAFT(J) = IFIX(AIDAFT+0.1) 00000400 

NRCL(J) = IFIX(ANRCL+0.1) 00000410 

NACL(J) = IFIX(ANACL+0.1) 00000420 

NRCD(J) = IFIXCANRCD+0.1) 00000430 

NACDCJ) = IFIX(ANACD+0.1) 00000440 

NRCM(J) = IFIX(ANRCM+0.1) 00000450 

NACM(J) = IFIX(ANACM+0.1) 00000460 

C 00000470 

READ(IOU5,11) AFTOC(J),STP1(J),STP2(J),STP3(J),STP4(J),STP5(J), 00000480 

1 STP6(J) 00000490 

C 00000500 

C READ LIFT TABLE 00000510 

C 00000520 

C-85 
Source FiLe: LSWTOS.FOR 

CALL REDTAB(CLTAB(1,J),NRCL(J),NACL(J» 

C 

C SCALE INPUT REYNOLD'S NUMBERS 

C 

C 

DO 100 JJ = 1,NRCL(J) 

CLTAB(JJ,J)=CLTAB(JJ,J)*1.0E+06 

100 CONTINUE 

C READ DRAG TABLE 

C 

C 

CALL REDTAB(CDTAB(1,J),NRCD(J),NACD(J» 

DO 200 JJ = 1,NRCD(J) 

CDTAB(JJ,J)=CDTAB(JJ,J)*1.0E+06 

200 CONTI NUE 

C 

C READ PITCHING MOMENT TABLE 

C 

CALL REDTAB(CMTAB(1,J),NRCM(J),NACM(J» 

C 

C 

DO 300 JJ = 1,NRCM(J) 

CMTAB(JJ,J)=CMTAB(JJ,J)*1.0E+06 

300 CONTINUE 

400 CONTI NUE 

C 

RETURN 

END 

C-86 

Program Unit: REAOAF 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

00000680 

00000690 

00000700 

00000710 

00000720 

00000730 

00000740 

00000750 

00000760 

00000770 

00000780 

00000790 

00000800 
Source FiLe: LSWT05.FOR Program Unit: REDTAS 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

10 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

******************************************************************00000010 

00000020 

LSWT05CREDTAB) 00000030 

00000040 

READS BIVARIENT TABLE ENTRIES AND ARRANGES THEM IN INTERNAL 00000050 

STORAGE FORMAT 00000060 

00000070 

******************************************************************00000080 

SUBROUTINE REDTABCTABLE,NCOL,NROW) 

DIMENSION TABLE(1) 

COMMON/ UNITS 

1 

/ IOU1, IOU5, IOU6, 

IOU10, IOU11, IOU12, 

DATA ISIX/6/, IFIVE/5/ 

IOU7, 

IOU13 

IOU8, 

00000090 

00000100 

00000110 

00000120 

00000130 

00000140 

00000150 

00000160 

00000170 

00000180 

******************************************************************00000190 

00000200 

READ COLUMN VALUES INTO TABLE(1->NCOL) 00000210 

00000220 

READCIOU5,10) (TABLE(IS), IS = 1,NCOL) 00000230 

FORMAT(10X , 6F10.0) 00000240 

00000250 

DO 200 I = 1,NROW 00000260 

00000270 

ICOUNT COUNTS THE NUMBER OF CARDS CONTAINING A ROW OF TABLE VALUES00000280 

00000290 

ICOUNT = 0 00000300 

00000310 

ISROW IS STORAGE LOCATION FOR ROW VALUE IN 'TABLE' 00000320 

00000330 

ISROW = NCOL+I 00000340 

00000350 

IMAX IS MAXIMUM SUBSCRIPT IN 'TABLE' FOR THIS ROW'S VALUES 00000360 

ISCOL1 IS FIRST SUBSCRIPT AND ISCOL2 IS LAST SUBSCRIPT FOR 00000370 

TABLE VALUES READ FROM EACH CARD 00000380 

00000390 

ISCOL1 = NCOL+NROW+(I-1)*NCOL+1 00000400 

IMAX = ISCOL1+NCOL-1 00000410 

ISCOL2 = MINO(IMAX,ISCOL1+IFIVE) 00000420 

C 00000430 

C READ ROW VALUE INTO TABLE(NCOL+1->NCOL+NROW) AND TABLE VALUE INTO 00000440 

C TABLE(NCOL+NROW+1->NCOL+NROW+NCOL*NROW) 00000450 

C 00000460 

READ(IOU5,12) TABLE(ISROW),(TABLE(IS), IS = ISCOL1,ISCOL2) 00000470 

12 FORMAT(7F10.0) 00000480 

C 00000490 

100 CONTINUE 00000500 

C 00000510 

ICOUNT = ICOUNT+1 00000520 

C-87 
Source FiLe: LSWT05.FOR Program Unit: REDTAB 

C 

C IF MORE TABLE VALUES FOR THIS ROW ARE TO BE READ, THEN CONTINUE 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

C 

C 

C 

IF(NCOL.LE.ISIX*ICOUNT) GO TO 200 

ISCOL1 = ISCOL2+1 

ISCOL2 = MINO(IMAX,ISCOL1+IFIVE) 

READ(IOU5,10) (TABLE(IS), IS = ISCOL1,ISCOL2) 

GO TO 100 

200 CONTINUE 

RETURN 

END 

C-88 
Source File: LSWT06.FOR Program Unit: OUTl 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

******************************************************************00000010 

LSWT06(OUT1) 

REPORTS BLADE REFERENCE GEOMETRY 

00000020 

00000030 

00000040 

00000050 

00000060 

******************************************************************00000070 

SUBROUTINE OUT1(ITBLD) 

COMMON! 

COMMON! 

1 

COMMON! 

1 

2 

3 

COMMON! 

1 

CONSTS ! 

PNLCRD ! 

PNLNDX ! 

UNITS ! 

PI, RPD 

XS(6,24), 

XCOLC5,20) , MP, 

MP1, 

NSGMNT, 

NPS(4), 

IOU1, IOU5, 

IOU10, IOU11, 

YS(6,24), 

YCOLC5,20> , NP, 

NP1, 

JGLIM(4,2) , NBLDS 

IOU6, IOU7, 

IOU12, IOU13 

ZS(6,24), 

ZCOLC5,20> 

NPANEL, 

NPNLSQ, 

JCGLIM(4,2) , 

IOU8, 

00000080 

00000090 

00000100 

00000110 

00000120 

00000130 

00000140 

00000150 

00000160 

00000170 

00000180 

00000190 

00000200 

******************************************************************00000210 

ICASE = 1 

IF(ITBLD.GE.1) ICASE = 2 

CALL HEADER(ICASE,IOU6) 

IF(ITBLD.EQ.O) WRITE(IOU6,10) 

10 FORMAT('0',4X,'REFERENCE BLADE SURFACE PANEL COORDINATES'! 

1 ' ',4X,41('-'» 

IF(ITBLD.GT.O) WRITE(IOU6,12) ITBLO 

12 FORMAT('0',4X,'BLAOE ',12,' SURFACE PANEL COORDINATES'! 

1 ' ',4X,37(' -'» 

J1 = 1 

J2 = NP1 

IF(NP1.GT.11) J2 = 11 

1000 CONTINUE 

C 

00000220 

00000230 

00000240 

00000250 

00000260 

00000270 

00000280 

00000290 

00000300 

00000310 

00000320 

00000330 

00000340 

00000350 

00000360 

00000370 

00000380 

00000390 

00000400 

00000410 

00000420 

00000430 

00000440 

00000450 

00000460 

00000470 

00000480 

00000490 

00000500 

00000510 

00000520 

C 

C 

C 

C 

IF(J2-J1.GT.10) J2 = J1+10 

WRITE(IOU6,14) (J, J = J1,J2) 

14 FORMAT('0',4X,'I,J',I8,10110) 

DO 1100 I = 1,MP1 

WRITE(IOU6,16) I,(XS(I,J), J = J1,J2) 

16 FORMAT('0',4X,I2,1X,'X',11F10.6) 

WRITE(IOU6,18) (YS(I,J), J = J1,J2) 

18 FORMAT(' ',7X,'Y' ,11F10.6) 

C-89 
Source FiLe: LSWT06.FOR Program Unit: OUT1 

C 

C 

WRITE(IOU6,20) (ZS(I,J), J = J1,J2) 

20 FORMAH' ',7X,'Z',11F10.6) 

1100 CONTINUE 

C 

C 

JTEMP = J2 

J1 = J2+1 

J2 = J1+10 

IF(J2.GT.NP1) J2 = NP1 

IF(JTEMP.LT.NP1) GO TO 1000 

C COLLOCATION POINT COORDINATES 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

CALL HEADER(ICASE,IOU6) 

IF(ITBLD.EG.O) WRITE(IOU6,22) 

22 FORMAT('0',4X,'REFERENCE BLADE COLLOCATION POINT COORDINATES'/ 

1 ' ',4X,45('-'» 

IF(ITBLD.GT.O) WRITE(IOU6,24) ITBLD 

24 FORMAT('0',4X,'BLADE ',12,' COLLOCATION POINT COORDINATES'/ 

1 ' ',4X,41('-'» 

J1 = 1 

J2 = NP 

1200 CONTINUE 

IF(J2-J1.GT.9) J2 = J1+9 

WRITE(IOU6,26) (J, J = J1,J2) 

26 FORMAT('0',4X,'I,J',I8,9I10) 

DO 1300 I = 1,MP 

WRITE(IOU6,28) I,(XCOL(I,J), J=J1,J2) 

28 FORMAT('0',4X,I2,1X,'X',10F10.6) 

WRITE(IOU6,30) (YCOL(I,J), J=J1,J2) 

30 FORMAH' ',7X,'Y',10F10.6) 

WRITE(IOU6,32) (ZCOL(I,J), J=J1,J2) 

32 FORMAT(' ',7X,'Z',10F10.6) 

1300 CONTINUE 

C 

JTEMP = J2 

J1 = J2+1 

J2 = J1+9 

IF(J2.GT.NP) J2 = NP 

IF(JTEMP.LT.NP) GO TO 1200 

C-90 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

00000680 

00000690 

00000700 

00000710 

00000720 

00000730 

00000740 

00000750 

00000760 

00000770 

00000780 

00000790 

00000800 

00000810 

00000820 

00000830 

00000840 

00000850 

00000860 

00000870 

00000380 

00000890 

00000900 

00000910 

00000920 

00000930 

00000940 

00000950 

00000960 

00000970 

00000980 

00000990 

00001000 

00001010 

00001020 

00001030 

00001040 
Source FiLe: LSWT06.FOR 

C 

RETURN 

END 

C-91 

Program Unit: OUT1 

00001050 

00001060 

00001070 
Source FiLe: LSWT06.FOR Program Unit: OUT2 

C ******************************************************************00000010 

C 00000020 

C LSWT06(OUT2) 00000030 

C 00000040 

C REPORTS WAKE COORDINATES 00000050 

C 00000060 

C ******************************************************************00000070 

C 00000080 

SUBROUTINE OUT2(ITBLD,PSIR) 00000090 

C 00000100 

DIMENSION PSI(133),RW(133) 00000110 

C 00000120 

COMMONI CONSTS I PI, RPD 00000130 

COMMONI PNLNDX IMP, NP, NPANEL, 00000140 

1 MP1, NP1, NPNLSQ, 00000150 

2 NSGMNT, JGLIM(4,2), JCGLIM(4,2), 00000160 

3 NPS(4), NBLDS 00000170 

COMMONI UNITS I IOU1, IOU5, IOU6, IOU7, IOU8, 00000180 

1 IOU10, IOU11, IOU12, IOU13 00000190 

COMMONI WAKCRD I XW(133,24), YW(133,24), ZW(133,24) 00000200 

COMMONI WAKNDX I REVS, NWIPR, NWI, 00000210 

1 KMAX(24), IFWAK, JS(3,2), 00000220 

2 PSIMR, PSIMT, IROLL 00000230 

C ******************************************************************00000240 

C 00000250 

C LOAD WAKE COORDINATES FOR THIS BLADE INTO BUFFER 00000260 

C 00000270 

DO 100 J = 1,NP1 00000280 

C 00000290 

C LOAD THE BUFFER 00000300 

C 00000310 

IREC = (ITBLD-1)*NP1+J 00000320 

READ(IOU13, REC=IREC) (XW(K,J),YW(K,J),ZW(K,J), K = 1,KMAX(J» 00000330 

C 00000340 

100 CONTINUE 00000350 

C 00000360 

CALL HEADER(2,IOU6) 00000370 

C 00000380 

WRITECIOU6,10) ITBLD 00000390 

10 FORMAT('0',4X,'BLADE ',12,' WAKE FILAMENT COORDINATES'I 00000400 

1 ",4X,34('-'» 00000410 

C 00000420 

SITB = PSIR - FLOAT(ITBLD-1)*(2.0*PI/FLOAT(NBLDS» 00000430 

PSIRD = PSIR/RPD 00000440 

PSITBD = PSITB/RPD 00000450 

C 00000460 

C SWEEP WAKE FILAMENTS 00000470 

C 00000480 

DO 400 J = 1,NP1 00000490 

C 00000500 

C CALCULATE CYLINDRICAL COORDINATES 00000510 

C 00000520 

C-92 
Source FiLe: LSWl06.FOR 

PSIM1 = 0.0 

C 

DO 200 K=1,KMAX(J) 

C 

C FIRST REFERENCE TO TARGET BLADE 

C 

C 

XTW = XW(K,J) 

YTW = YW(K,J) 

PSITW = -PSITB 

CALL ROTATE(XTW,YTW,PSITW) 

RW(K) = SQRT(XW(K,J)**2+YW(K,J)**2) 

PSITWD = ATAN2(-XTW,YTW)/RPD 

C PUT IN 0 TO -360 DEG RANGE 

C 

IF(PSITWD.GT.O.O) PSITWD = PSITWD-360.0 

C 

C ADD IN EARLIER REVS 

C 

C 

IREVS = IFIX(ABS(PSIM1/360.0» 

PSITWD = PSITWD+IREVS*(-360.0) 

IF(PSITWD.GT.PSIM1) PSITWD = PSITWD - 360.0 

PSIM1 = PSITWD 

C REFERENCE BACK TO ROTOR AZIMUTH 

C 

PSI(K) = PSITWD + PSITBD 

C 

200 CONTINUE 

C 

C REPORT OUT THIS FILAMENT 

C 

C 

C 

C 

C 

C 

C 

WRITE(IOU6,11) J 

11 FORMAT('0',7X,'FILAMENT NUMBER ',12,) 

K1 = 1 

K2 = KMAX(J) 

IF(K2-K1.GT.10) K2 = K1+10 

300 CONTINUE 

WRITE(IOU6,12) (K, K = K1,K2) 

12 FORMAT('0',7X,'K',11(5X,I2,3X» 

WRITE(IOU6,13) (PSI(K), K = K1,K2) 

13 FORMAT(' ',5X,'PSI',11F10.3) 

WRITE(IOU6,14) (RW(K), K = K1,K2) 

14 FORMAT(' ',7X,'R',11F10.6) 

WRITE(IOU6,15) (XW(K,J), K = K1,K2) 

15 FORMAT(' ',7X,'X',11F10.6) 

C-93 

Program Unit: OUl2 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

00000680 

00000690 

00000700 

00000710 

00000720 

00000730 

00000740 

00000750 

00000760 

00000770 

00000780 

00000790 

00000800 

00000810 

00000820 

00000830 

00000840 

00000850 

00000860 

00000870 

00000880 

00000890 

00000900 

00000910 

00000920 

00000930 

00000940 

00000950 

00000960 

00000970 

00000980 

00000990 

00001000 

00001010 

00001020 

00001030 

00001040 
Source FiLe: LSWT06.FOR 

C 

C 

C 

C 

WRITE(IOU6,16) (YW(K,J), K = K1,K2) 

16 FORMAT(' ',7X,' Y', 11 F10.6) 

WRITE(IOU6,17) (ZW(K,J), K = K1,K2) 

17 FORMAT(' ',7X,'Z',11F10.6) 

WRITE( IOU6, 18) 

18 FORMAT( '0') 

C RESET AND MAKE ANOTHER PASS IF REQUIRED 

C 

C 

C 

KTEMP = K2 

K1 = K2+1 

K2 = K1+10 

IF(K2.GT.KMAX(J» K2 = KMAX(J) 

IF(KTEMP.LT.KMAX(J» GO TO 300 

400 CONTINUE 

RETURN 

END 

C-94 

Program Unit: OUT2 

00001050 

00001060 

00001070 

00001080 

00001090 

00001100 

00001110 

00001120 

00001130 

00001140 

00001150 

00001160 

00001170 

00001180 

00001190 

00001200 

00001210 

00001220 

00001230 

00001240 

00001250 

00001260 
Source FiLe: LSVT06.FOR Program Unit: OUT3 

C ******************************************************************00000010 

C 00000020 

C LSWT06(OUT3) 00000030 

C 00000040 

C REPORTS BLADE ELEMENT AERODYNAMIC CHARACTERISTICS 00000050 

C 00000060 

C ******************************************************************00000070 

C 00000080 

SUBROUTINE OUT3(ITBLD,IOUTO) 00000090 

C 00000100 

COMMONI ALSLP I ALS(20) , ALSNEW(20) , ALSOLD(20) 00000110 

COMMONI BE LOAD I DFX(20) , DFXI(20) , DFXP(20), 00000120 

1 DFZ( 20>, DFZH20> , DFZP(20) , 00000130 

2 DQ(20) , DQI (20), DQP(20) , 00000140 

3 DPM(20) 00000150 

COMMONI BLDELE I XCLE (20), YCG(20) , RBE(20), 00000160 

1 DBES(20) , CLAMLE(20) , CLAMQC(20) , 00000170 

2 CHDCGU20> , BETAU20> , AFTWF(20) , 00000180 

3 JTAB(20,2), TOC(20) , RE(20), 00000190 

4 CL H2O>, CDH20> , CMH20> , 00000200 

5 CDS(20) 00000210 

COMMONI CALPHA I ALPHAG ( 20> , ALPHAE(20) , ALPHAW (20) , 00000220 

1 ALPHAN(20) , ALPHAH20> , AZLLC(20) , 00000230 

2 TWSTCG(20) 00000240 COMr~ONI CCIRC I CIRC(100), DCIRC(100) , ACIRC(100), 00000250 

1 CIRCR( 100>, BCIRC(20), GO(20) , 00000260 

2 TECF, AKM(6), XKM(5) 00000270 

COMMONI CONSTS I PI, RPD 00000280 

COMMONI CVLCTY I VFS1(5,20), VFS2(5,20> , VFS3(5,20), 00000290 

1 VFS1M(20), VFS2M(20) , VFS3M(20), 00000300 

2 VI1(5,20), VI2(5,20> , VI3(5,20>, 00000310 

3 VI1M(20) , VI2M(20) , VI3M(20) , 00000320 

4 VREU20), VIND(20) , QREU20> 00000330 

COMMONI PARMS I RAD IUS, OMEGA, OMEGAR, RHO, AMU 00000340 

COMMONI PNLNDX I MP, NP, NPANEL, 00000350 

1 MP1, NP1, NPNLSQ, 00000360 

2 NSGMNT, JGLIM(4,2), J CGLIM(4,2), 00000370 

3 NPS(4), NBLDS 00000380 

C 00000390 

C ******************************************************************00000400 

C 00000410 

C CHANGE DIMENSIONS FOR OUTPUT REPORT 00000420 

C 00000430 

DO 100 J = 1,NP 00000440 

ALPHAG(J) = ALPHAG(J)/RPD 00000450 

ALPHAE(J) = ALPHAE(J)/RPD 00000460 

ALPHAW(J) = ALPHAW(J)/RPD 00000470 

ALPHAN(J) = ALPHAN(J)/RPD 00000480 

ALPHAI(J) = ALPHAI(J) IRPD 00000490 

AZLLC(J) = AZLLC(J)/RPD 00000500 

CHDCGUJ) = CHDCGL(J)*RADIUS 00000510 

DBES(J) = DBES (J) *RAD IUS 00000520 

C-95 
Source FiLe: LSWT06.FOR 

C 

CLAMQC(J) = ACOS(CLAMQC(J»/RPD 

CLAMLE(J) = ACOS(CLAMLE(J»/RPD 

100 CONTINUE 

C BLADE ELEMENT AERODYNAMIC CHARACTERISTIC REPORT 

C 

C 

C 

C 

C 

C 

J1 = 1 

J2 = NP 

200 CONTINUE 

IF(J2-J1.GT.7) J2 = J1+7 

CALL HEADER(2,IOUTO) 

WRITE(IOUTO,1000) ITBLD 

1000 FORMAT('0',4X,'BLADE ',12,' ELEMENT CHARACTERISTICS'/ 

1 ' ',4X,32('-'» 

C ELEMENT GEOMETRY 

C 

WRITE(IOUTO,2000) 

2000 FORMAT('0',4X,'GEOMETRY') 

C 

WRITE(IOUTO,2001) (J, J = J1,J2) 

2001 FORMAT('0',4X,'ELEMENT NUMBER',16X,BI11) 

C 

WRITE(IOUTO,2002) (RBE(J), J = J1,J2) 

2002 FORMATC' ',4X,'ELE CENTER STATION ' ,16X,1PBE11.3) 

C 

WRITECIOUTO,2003) (CHDCGL(J), J = J1,J2) 

2003 FORMAT(' ',4X,'CHORD',20X,'FT ' ,7X,1PBE11.3) 

C 

WRITE(IOUTO,2004) (DBES(J), J = J1,J2) 

2004 FORMAT(' ',4X,'ELEMENT SPAN',13X,'FT',7X,1PBE11.3) 

C 

WRITE(IOUTO,2005) (CLAMLE(J), J = J1,J2) 

2005 FORMAT(' ',4X,'LEADING EDGE SWEEP ' ,7X,'DEG',6X,1P8E11.3) 

C 

WRITE(IOUTO,2006) (CLAMQC(J), J = J1,J2) 

2006 FORMAT(' ',4X,'AEROOYNAMIC SWEEP ' ,8X,'DEG',6X,1PBE11.3) 

C 

C ANGLES 

C 

WRITECIOUTO,3000) 

3000 FORMAT('0',4X,'ANGLES OF ATTACK') 

C 

WRITECIOUTO,3001) CALPHAGCJ), J = J1,J2) 

3001 FORMATC'0',4X,'GEOMETRIC PITCH ' ,10X,'DEG ' ,6X,1PBE11.3) 

C 

WRITECIOUTO,3002) CAZLLC(J), J = J1,J2) 

3002 FORMATC ' ',4X,'ZERO LIFT LINE ' ,11X,'DEG',6X,1PBE11.3) 

C-96 

Program Unit: OUT3 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

00000680 

00000690 

00000700 

00000710 

00000720 

00000730 

00000740 

00000750 

00000760 

00000770 

00000780 

00000790 

OOOOOBOO 

00000B10 

00000820 

00000B30 

00000B40 

00000B50 

00000B60 

00000870 

00000B80 

00000890 

00000900 

00000910 

00000920 

00000930 

00000940 

00000950 

00000960 

00000970 

000009BO 

00000990 

00001000 

00001010 

00001020 

00001030 

00001040 
Source FiLe: LSWT06.FOR Program Unit: OUT3 

C 

WRITE(IOUTO,3004) (ALPHAE(J), J = J1,J2) 

3004 FORMAT(' ',4X,'EFFECTIVE ANGLE',10X,'DEG',6X,1P8E11.3) 

C 

WRITE(IOUTO,3005) (ALPHAW(J), J = J1,J2) 

3005 FORMAT(' ',4X,'WIND ANGLE',15X,'DEG',6X,1P8E11.3) 

C 

WRITE(IOUTO,3006) (ALPHAN(J), J = J1,J2) 

3006 FORMAT(' ',4X,'INFLOW ANGLE',13X,'DEG',6X,1P8E11.3) 

C 

WRITE(IOUTO,3007) (ALPHAI(J), J = J1,J2) 

3007 FORMAT(' ',4X,'INDUCED ANGLE',12X,'DEG',6X,1P8E11.3) 

C 

C VELOCITIES 

C 

WRITE(IOUTO,4000) 

4000 FORMAT('0',4X,'VELOCITIES') 

C 

WRITE(IOUTO,4001) (VIND(J), J = J1,J2) 

4001 FORMAT('0',4X,'INDUCED VELOCITY',9X,'FT/SEC',3X,1P8E11.3) 

C 

WRITE(IOUTO,4002) (VREL(J), J = J1,J2) 

4002 FORMAT(' ',4X,'RELATIVE VELOCITY',8X,'FT/SEC',3X,1P8E11.3) 

C 

WRITE(IOUTO,4003) (RE(J), J = J1,J2) 

4003 FORMAT(' ',4X,'REYNOLDS NUMBER',19X,1P8E11.3) 

C 

WRITE(IOUTO,4004) (QREL(J), J = J1,J2) 

4004 FORMAT(' ',4X,'RELATIVE Q',15X,'PSF',6X,1P8E11.3) 

C 

C LIFT, DRAG AND MOMENT COEFFICIENTS 

C 

WRITE(IOUTO,5000) 

5000 FORMAT('0',4X,'AERODYNAMIC COEFFICIENTS') 

C 

WRITE(IOUTO,5001) (CLT(J), J = J1,J2) 

5001 FORMAT('0',4X,'ELE LIFT COEF',21X,1P8E11.3) 

C 

WRITE(IOUTO,5002) (CDT(J), J = J1,J2) 

5002 FORMAT(' ',4X,'ELE DRAG COEF',21X,1P8E11.3) 

C 

WRITE(IOUTO,5003) (CMT(J), J = J1,J2) 

5003 FORMAT(' ',4X,'ELE MOMENT COEF',19X,1P8E11.3) 

C 

C ELEMENT FORCE LOADINGS 

C 

WRITE(IOUTO,6000) 

6000 FORMAT('0',4X,'FORCE LOADING') 

C 

WRITE(IOUTO,6001) (DFX(J), J = J1,J2) 

6001 FORMAH' ',4X,'ELE X FORCE',14X,'LBS/FT',3X,1P8E11.3) 

C 

C-97 

00001050 

00001060 

00001070 

00001080 

00001090 

00001100 

00001110 

00001120 

00001130 

00001140 

00001150 

00001160 

00001170 

00001180 

00001190 

00001200 

00001210 

00001220 

00001230 

00001240 

00001250 

00001260 

00001270 

00001280 

00001290 

00001300 

00001310 

00001320 

00001330 

00001340 

00001350 

00001360 

00001370 

00001380 

00001390 

00001400 

00001410 

00001420 

00001430 

00001440 

00001450 

00001460 

00001470 

00001480 

00001490 

00001500 

00001510 

00001520 

00001530 

00001540 

00001550 

00001560 
Source FiLe: LSWT06.FOR Program Unit: OUT3 

WRITE(IOUTO,6002) (OFXI(J), J = J1,J2) 

6002 FORMAT(' ',4X,'ELE INO X FORCE',10X,'LBS/FT',3X,1P8E11.3) 

C 

WRITE(IOUTO,6003) (OFXP(J), J = J1,J2) 

6003 FORMAT(' ',4X,'ELE PRO X FORCE',10X,'LBS/FT',3X,1P8E11.3) 

C 

WRITE(IOUTO,6004) (OFZ(J), J = J1,J2) 

6004 FORMAT(' ',4X,'ELE Z FORCE',14X,'LBS/FT',3X,1P8E11.3) 

C 

WRITE(IOUTO,6005) (OFZI(J), J = J1,J2) 

6005 FORMAT(' ',4X,'ELE INO Z FORCE',10X,'LBS/FT',3X,1P8E11.3) 

C 

WRITE(IOUTO,6006) (OFZP(J), J = J1,J2) 

6006 FORMAT(' ',4X,'ELE PRO Z FORCE',10X,'LBS/FT',3X,1P8E11.3) 

C 

C ELEMENT TORQUE LOADINGS 

C 

WRITE(IOUTO,7000) 

7000 FORMAT('0',4X,'TORQUE LOADING') 

C 

WRITE(IOUTO,7001) (OQP(J), J = J1,J2) 

7001 FORMAT('0',4X,'ELE PRO TORQUE',11X,'FT-LBS/FT',1P8E11.3) 

C 

WRITE(IOUTO,7002) (OQI(J), J = J1,J2) 

7002 FORMAT(' ',4X,'ELE INO TORQUE',11X,'FT-LBS/FT',1P8E11.3) 

c 

WRITE(IOUTO,7003) (OQ(J), J = J1,J2) 

7003 FORMAT(' ',4X,'ELE TORQUE',15X,'FT-LBS/FT',1P8E11.3) 

C 

C PITCHING MOMENT LOADING (20) 

C 

WRITE(IOUTO,8000) 

8000 FORMAT('0',4X,'PITCHING MOMENT LOADING (20)') 

C 

WRITE(IOUTO,8001) (OPM(J), J = J1,J2) 

8001 FORMAT('0',4X,'ELE PITCH MOMENT',9X,'FT-LBS/FT',1P8E11.3) 

C 

C LIFT CURVE SLOPES 

C 

WRITE(IOUTO,9000) 

9000 FORMAT('0',4X,'LIFT SLOPE CONVERGENCE') 

C 

WRITE(IOUTO,9001) (ALSOLO(J), J = J1,J2) 

9001 FORMAT('0',4X,'INPUT LIFT SLOPE',9X,'/RAO',5X,1P8E11.3) 

C 

WRITE(IOUTO,9002) (ALSNEW(J), J = J1,J2) 

9002 FORMAT(' ',4X,'CL/ALPHAE',16X,'/RAO',5X,1P8E11.3) 

C 

C CIRCULATION 

C 

WRITE(IOUTO,10000) 

10000 FORMAT('0',4X,'CIRCULATION PARAMETERS') 

C-98 

00001570 

00001580 

00001590 

00001600 

00001610 

00001620 

00001630 

00001640 

00001650 

00001660 

00001670 

00001680 

00001690 

00001700 

00001710 

00001720 

00001730 

00001740 

00001750 

00001760 

00001770 

00001780 

00001790 

00001800 

00001810 

00001820 

00001830 

00001840 

00001850 

00001860 

00001870 

00001880 

00001890 

00001900 

00001910 

00001920 

00001930 

00001940 

00001950 

00001960 

00001970 

00001980 

00001990 

00002000 

00002010 

00002020 

00002030 

00002040 

00002050 

00002060 

00002070 

00002080 
Source FiLe: LSVT06.FOR Program Unit: OUT3 

C 

WRITE(IOUTO,10001) (GO(J), J = J1,J2) 

10001 FORMAT('0',4X,'CIRC SHAPE PARM',19X,1P8E11.3) 

C 

WRITE(IOUTO,10002) (BCIRC(J), J = J1,J2) 

10002 FORMAT(' ',4X,'BOUND CIRCULATION',8X,'FT**2/SEC',1P8E11.3) 

C 

C 

C 

IF(J2.GE.NP) GO TO 300 

J1 = J2+1 

J2 = J1+7 

IF(J2.GT.NP) J2 = NP 

GO TO 200 

300 CONTINUE 

C 

C RETURN TO WORKING DIMENSIONS 

C 

C 

DO 400 J = 1,NP 

ALPHAG(J) = ALPHAG(J)*RPD 

ALPHAE(J) = ALPHAE(J)*RPD 

ALPHAW(J) = ALPHAW(J)*RPD 

ALPHAN(J) = ALPHAN(J)*RPD 

ALPHAI(J) = ALPHAI(J)*RPD 

AZLLC(J) = AZLLC(J)*RPD 

CHDCGL(J) = CHDCGL(J)/RADIUS 

DBES(J) = oaES(J)/RADIUS 

CLAMQC(J) = COS(CLAMQC(J)*RPD) 

CLAMLE(J) = COS(CLAMLE(J)*RPD) 

400 CONTINUE 

RETURN 

END 

C-99 

00002090 

00002100 

00002110 

00002120 

00002130 

00002140 

00002150 

00002160 

00002170 

00002180 

00002190 

00002200 

00002210 

00002220 

00002230 

00002240 

00002250 

00002260 

00002270 

00002280 

00002290 

00002300 

00002310 

00002320 

00002330 

00002340 

00002350 

00002360 

00002370 

00002380 

00002390 

00002400 

00002410 
Source FiLe: LSWT06.FOR Program Unit: OUT4 

C ******************************************************************00000010 

C 00000020 

C LSWT06(OUT4) 00000030 

C 00000040 

C REPORTS BLADE PERFORMANCE CHARACTERISTICS 00000050 

C 00000060 

C 

C 

C 

C 

C 

C 

C 

C 

C 

******************************************************************00000070 

SUBROUTINE OUT4(ITBLD,IOUTO) 

COMMON/ BLLOAD / CTRB, CQRB, CTWB, 

1 BTORQI, BTORQP, BPWR, 

COMMON/ CONSTS / PI, RPD 

00000080 

00000090 

00000100 

CPWB, BTHRST, BTORQ, 00000110 

BPWRP, BPWRI, BPMOMT 00000120 

00000130 

00000140 

******************************************************************00000150 

BLADE PER FORI~ANCE SUMMARY 

CALL HEADER(2,IOUTO) 

WR1TE(10UTO,1100) 1TBLD 

1100 FORMAT('0',4X,'BLADE ',12,' PERFORMANCE'/' ',4X,20('-'» 

C 

00000160 

00000170 

00000180 

00000190 

00000200 

00000210 

00000220 

00000230 

00000240 

00000250 

00000260 

00000270 

00000280 

00000290 

00000300 

00000310 

00000320 

00000330 

00000340 

00000350 

00000360 

00000370 

00000380 

00000390 

00000400 

00000410 

00000420 

00000430 

C 

C 

C 

C 

WR1TE(10UTO,1101) BTHRST,CTRB,CTWB 

1101 FORMAT('0',4X,'THRUST',20X,'LBS',8X,1PE12.4/ 

1 ' ',4X,'CT ROTOR',29X,1PE12.4/ 

2 ' ',4X,'CT WT',32X,1PE12.4) 

WRITE(10UTO,1102) BTORQ,CQRB,CPWB 

1102 FORMAT('0',4X,'TORQUE',20X,'FT-LBS',5X,1PE12.4/ 

1 ' ',4X,'CQ ROTOR',29X,1PE12.4/ 

2 ' ',4X,'CP WT',32X,1PE12.4) 

WR1TE(IOUTO,1103) BPWR,BPWRP,BPWRI 

1103 FORMAT('0',4X,'POWER (BLADE) ',11X,'KW',9X,1PE12.4/ 

1 ' ',4X,'POWER (PROFILE)',11X,'KW',9X,1PE12.4/ 

2 ' ',4X,'POWER (INFLOW) ',11X,'KW' ,9X,1PE12.4) 

WRITE(IOUTO,1104) BPMOMT 

1104 FORMAT('0',4X,'PITCH MOM (2D)',12X,'FT-LB',6X,1PE12.4) 

RETURN 

END 

C-100 
Source FiLe: LSWT06.FOR Program Unit: OUT5 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

******************************************************************00000010 

LSWT06COUT5) 

REPORTS ROTOR PERFORMANCE CHARACTERISTICS 

00000020 

00000030 

00000040 

00000050 

00000060 

******************************************************************00000070 

SUBROUTIN E OUTS 

1 

2 

3 

COMMON/ 

COMMON/ 

COMMON/ 

COMMON/ 

1 

CONSTS / 

!FLAGS / 

RTLOAD / 

PI, 

ISTDY, 

CTRR, 

RTORQP, 

CQR, 

TORQI, 

UNITS / IOU1, 

IOU10, 

RPD 

IWFLAG, 

CQRR, 

RTORQI, 

CTW, 

PWR, 

IOU5, 

IOU11, 

LSFLAG, 

CTWR, 

RPWR, 

CPW, 

PWRP, 

IOU6, 

IOU12, 

IRFLAG 

CPWR, 

RPWRP, 

THRST, 

PWRI, 

IOU7, 

IOU13 

RTHRST, 

RPWRI, 

TORQ, 

RPMOMT, 

IOUB, 

RTORQ, 

CTR, 

TORQP, 

PMOMT 

OOOOOOBO 

00000090 

00000100 

00000110 

00000120 

00000130 

00000140 

00000150 

00000160 

00000170 

00000180 

00000190 

******************************************************************00000200 

00000210 

ROTOR PERFORMANCE SUMMARY 

CALL HEADERC2,IOU6) 

WRITECIOU6,1200) 

1200 FORMAT('0',4X,'ROTOR PERFORMANCE'/ 

1 ' ',4X,17('-'» 

WRITE(IOU6,1201) RTHRST,CTRR,CTWR 

1201 FORMAT('0',4X,'THRUST',20X,'LBS',BX,1PE12.4/ 

1 ' ',4X,'CT ROTOR',29X,1PE12.4/ 

2 ' ',4X,'CT WT',32X,1PE12.4) 

WRITE(IOU6,1202) RTORQ,CQRR,CPWR 

1202 FORMAT('0',4X,'TORQUE',20X,'FT-LBS',5X,1PE12.4/ 

1 ' ',4X,'CQ ROTOR',29X,1PE12.4/ 

2 ' ',4X,'CP WT',32X,1PE12.4) 

WRITE(IOU6,1203) RPWR,RPWRP,RPWRI 

1203 FORMATC'0',4X,'POWER (ROTOR) ',11X,'KW',9X,1PE12.4/ 

1 ' ',4X,'POWER (PROFILE)',11X,'KW',9X,1PE12.4/ 

2 ' ',4X,'POWER (INFLOW) ',11X,'KW',9X,1PE12.4) 

IF(ISTDY.EQ.O) GO TO 1400 

1250 CONTINUE 

C 

00000220 

00000230 

00000240 

00000250 

00000260 

00000270 

00000280 

00000290 

00000300 

00000310 

00000320 

00000330 

00000340 

00000350 

00000360 

00000370 

000003BO 

00000390 

00000400 

00000410 

00000420 

00000430 

00000440 

00000450 

00000460 

00000470 

000004BO 

00000490 

00000500 

00000510 

00000520 

WRITE(IOU6,1300) 

1300 FORMAT('0',4X,'DISK AVERAGE PERFORMANCE'/ 

1 ' ',4X,24('-'» 

C 

C-101 
Source FiLe: LSWT06.FOR 

WRITECIOU6,1301) THRST,CTR,CTW 

1301 FORMATC'0',4X,'THRUST',20X,'LBS',8X,1PE12.4/ 

1 ' ',4X,'CT ROTOR',29X,1PE12.4/ 

2 ' ',4X,'CT WT',32X,1PE12.4) 

C 

WRITECIOU6,1302) TORQ,CQR,CPW 

1302 FORMATC'0',4X,'TORQUE',20X,'FT-LBS',5X,1PE12.4/ 

1 ' ',4X,'CQ ROTOR',29X,1PE12.4/ 

2 ' ',4X,'CP WT',32X,1PE12.4) 

C 

WRITECIOU6,1303) PWR,PWRP,PWRI 

1303 FORMATC'0',4X,'POWER CROTOR)',13X,'KW',9X,1PE12.4/ 

1 ' ',4X,'POWER CPRO) ',13X,'KW',9X,1PE12.4/ 

2 ' ',4X,'POWER UNO) ',13X,'KW',9X,1PE12.4) 

C 

WRITECIOU6,1304) PMOMT 

1304 FORMATC'0',4X,'PITCH MOM (20)',12X,'FT-LB',6X,1PE12.4) 

C 

1400 CONTINUE 

C 

RETURN 

END 

C-102 

Program Unit: OUT5 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

00000680 

00000690 

00000700 

00000710 

00000720 

00000730 

00000740 
Source FiLe: LSVT06.FOR Program Unit: OUT6 

C ******************************************************************00000010 

C 00000020 

C LSWT06(OUT6) 00000030 

C 00000040 

C REPORTS WAKE PARAMETERS AND WORK STATE 00000050 

C 00000060 

C ******************************************************************00000070 

C 00000080 

SUBROUTINE OUT6 00000090 

C 00000100 

COMMON! UNITS ! IOU1, IOUS, IOU6, IOU7, IOU8, 00000110 

1 IOU10, IOU11, IOU12, IOU13 00000120 

COMMON! WRATES ! AKZW, AKZI, AKZ, AKR, A, AKB, 00000130 

1 CTRW, AKZO, ALAMO, AKRO, VAXB, VNUB 00000140 

C 00000150 

C ******************************************************************00000160 

C 00000170 

CALL HEADER(2,IOU6) 00000180 

C 00000190 

WRITE(IOU6,10) 00000200 

10 FORMAT('0',4X,'WORKING STATE AND WAKE RATE PARAMETERS'! 00000210 

1 ' ',4X,38('-'» 00000220 

C 00000230 

C CHECK FOR WORKING STATE 00000240 

C 00000250 

IF(VAXB.GE.2.0) GO TO 100 00000260 

IF(VAXB.GE.1.S) GO TO 200 00000270 

IF(VAXB.GE.O.O) GO TO 300 00000280 

GO TO 400 00000290 

C 00000300 

100 CONTINUE 00000310 

WRITE(IOU6,101) 00000320 

101 FORMAT('0',4X,'WINDMILL BRAKE STATE') 00000330 

GO TO 500 00000340 

C 00000350 

200 CONTINUE 00000360 

WRITE(IOU6,201) 00000370 

201 FORMAT('0',4X,'VORTEX RING STATE, PAST REGION OF ROUGHNESS') 00000380 

GO TO 500 00000390 

C 00000400 

300 CONTINUE 00000410 

WRITE(IOU6,301) 00000420 

301 FORMAT('0',4X,'VORTEX RING STATE, THROUGH REGION OF ROUGHNESS') 00000430 

GO TO 500 00000440 

C 00000450 

400 CONTINUE 00000460 

WRITE(IOU6,401) 00000470 

401 FORMAT('0',4X,'NORMAL WORKING STATE') 00000480 

C 00000490 

500 CONTINUE 00000500 

C 00000510 

WRITE(IOU6,601) VAXB,VNUB 00000520 

C-103 
Source FiLe: LSWT06.FOR 

C 

C 

C 

601 FORMAT('0',6X,'REFERRED VELOCITIES,'! 

1 ' ',8X,'AXIAL ONSET',1PE14.5! 

2 ' ',8X,'INDUCED ',1PE14.5) 

WRITE(IOU6,602) CTRW,AKZO,ALAMO,AKRO 

602 FORMAT('0',6X,'REFERENCE WAKE PARAMETERS,'/ 

1 ' ',8X,'CTRW ',1PE14.5! 

2 ' ',8X,'AKZO ',1PE14.5/ 

3 ' ',8X,'ALAMO ',1PE14.5! 

4 ' ',8X,'AKRO ',1PE14.5) 

WRITE(IOU6,603) AKZW,AKZI,AKZ,AKR,A,AKB 

603 FORMAT('0',6X,'MODIFIED WAKE PARAMETERS,'/ 

1 ' ',8X,'AKZW ',1PE14.5/ 

2 ' ',8X,'AKZI ',1PE14.5/ 

3 ' ',8X,'AKZ ',1PE14.5! 

4 ' ',8X,'AKR ',1PE14.5! 

5 ' ',8X,'A ',1PE14.5/ 

6 ' ',8X,'AKB ',1PE14.5) 

RETURN 

END 

C-104 

Program Unit: OUT6 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

00000680 

00000690 

00000700 

00000'710 

00000720 

00000730 

00000740 
Source File: LSWT06.FOR Program Unit: OUT8 

C ******************************************************************00000010 

C 00000020 

C LSWT06COUT8) 00000030 

C 00000040 

C REPORTS RECORD IMAGE OF INPUT FILE 00000050 

C 00000060 

C ******************************************************************00000070 

C 00000080 

SUBROUTINE OUT8 00000090 

C 00000100 

COMMON/ UNITS / IOU1, IOU5, IOU6, IOU7, IOU8, 00000110 

1 IOU10, IOU11, IOU12, IOU13 00000120 

C 00000130 

C ******************************************************************00000140 

C 00000150 

CALL HEADERCO,IOU6) 00000160 

C 00000170 

WRITE(IOU6,10) 00000180 

10 FORMAT('0',4X,'RECORD IMAGE OF INPUT FILE'/ 00000190 

1 ' ',4X,26C'-')//) 00000200 

C 00000210 

CALL APPENDCIOU5,IOU6,80,5) 00000220 

C 00000230 

RETURN 00000240 

END 00000250 

C-105 
Source FiLe: LSWT06.FOR Program Unit: HEADER 

C ******************************************************************00000010 

C 00000020 

C LSWT06(HEADER) 00000030 

C 00000040 

C PLACES BANNER AND CASE INFORMATION ON REPORTS 00000050 

C 00000060 

C ICASE = 0 BANNER ONLY 00000070 

C ICASE = 1 BANNER AND CASE 10 00000080 

C ICASE = 2 BANNER, CASE 10, AND POINT INFORMATION 00000090 

C 00000100 

C ******************************************************************00000110 

C 00000120 

SUBROUTINE HEADER(ICASE,IOUTO) 00000130 

C 00000140 

CHARACTER TM *36 00000150 

CHARACTER SPEC *35 00000160 

CHARACTER STATUS *15 00000170 

CHARACTER CASEID *72 00000180 

CHARACTER DIM(4) *7 00000190 

C 00000200 

COMMON/ CASE / IPOINT, ALPHAD, VWOD, IVDIM, VWFAC, PSIRD, 00000210 

1 CASEID 00000220 

C 00000230 

DATA TM /'COMPUTATIONAL METHODOLOGY ASSOCIATES'/ 00000240 

DATA SPEC /'LSWT VERSION 1.00 RELEASED MAY 1986'/ 00000250 

DATA STATUS /'SERI IL-5-05105'/ 00000260 

DATA DIM /'(FT/SEC',' (M/SEC',' (MPH',' nSR'/ 00000270 

C 00000280 

C ******************************************************************00000290 

C 00000300 

WRITE(IOUTO,10) TM,SPEC,STATUS 00000310 

10 FORMAT('1',4X,A36,' *** ',A35,' *** ',A15,/' ',4X,122('-'» 00000320 

C 00000330 

IF(ICASE.NE.1) GO TO 100 00000340 

C 00000350 

WRITE(IOUTO,20) CASEID 00000360 

20 FORMAT('0',4X,A72) 00000370 

GO TO 200 00000380 

C 00000390 

100 CONTINUE 00000400 

C 00000410 

IF(ICASE.NE.2) GO TO 200 00000420 

C 00000430 

WRITE(IOUTO,30) IPOINT,CASEID,ALPHAD,DIM(IVDIM+1),VWOD,PSIRD 00000440 

30 FORMAT('0',4X,'POINT ',12,': ',A72/ 00000450 

1 ' ',4X,'ROTOR PITCH (DEG) ',F10.4,/ 00000460 

2 ' ',4X,'WIND SPEED ',A7,') ',F10.4,/ 00000470 

3 ' ',4X,'ROTOR AZIMUTH (DEG) ',F10.4) 00000480 

C 00000490 

200 CONTINUE 00000500 

C 00000510 

RETURN 00000520 

C-106 
Source File: LSVT06.FOR 

END 

C-107 

Program Unit: HEADER 

00000530 
Source FiLe: LSWT06.FOR Program Unit: APPEND 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

100 

******************************************************************00000010 

00000020 

LSWT06(APPEND) 00000030 

COPIES THE FILE ASSOCIATED WITH UNIT IOUFRM TO THE FILE ON UNIT 00000040 

IOUTO AT ITS CURRENT POINTER POSITION. BOTH FILES MUST BE 00000050 

FORMATTED, SEQUENTIAL FILES. 'MRECL' IS THE MAXIMUM RECORD LENGTH00000060 

OF THE IOUFRM FILE. TRAILING BLANKS ARE TRIMMED FROM THE RECORD 00000070 

TO CONSERVE SPACE. IF LPAD > 0 THEN THE RECORD IS PADDED WITH 00000080 

LPAD LEADING BLANKS TO ACCOMODATE FORMAT CONTROL ON OUTPUT. 00000090 

(MRECL+LPAD) MUST BE LE 132. 00000100 

00000110 

******************************************************************00000120 

00000130 

SUBROUTINE APPEND(IOUFRM, IOUTO, MRECL,LPAD) 00000140 

00000150 

CHARACTER IOBUFR(132) *1 00000160 

00000170 

******************************************************************00000180 

00000190 

RESTRICT VALUES FOR MAXIMUM RECORD LENGTH 00000200 

00000210 

IF(MRECL+LPAD .GT. 132) GO TO 600 00000220 

00000230 

POSITION RECORD POINTER TO BEGINNING OF 'FROM' FILE 00000240 

00000250 

REWIND IOUFRM 00000260 

00000270 

READ IOUFRM AND WRITE IOUTO UNTIL END OF FILE 00000280 

00000290 

CONTINUE 00000300 

00000310 

READ (IOUFRM,10,END=600) (IOBUFR(I), I=1,MRECL) 00000320 

10 FORMAT(132A1) 00000330 

C 00000340 

C GET NET LENGTH BY FINDING FIRST NON-BLANK CHARACTER FROM END 00000350 

C 00000360 

IRECL = MRECL 00000370 

C 00000380 

DO 200 I = 1, MRECL 00000390 

II = MRECL - I + 1 00000400 

IASCII = ICHAR(IOBUFR(II» 00000410 

IF(IASCII .EQ. 32) GO TO 200 00000420 

IRECL = II 00000430 

GO TO 300 00000440 

200 CONTINUE 00000450 

C 00000460 

300 CONTINUE 00000470 

C 00000480 

C PAD WITH LEADING BLANK IF REQUESTED, LPAD > 0 00000490 

C 00000500 

IF(LPAD.EQ.O) GO TO 500 00000510 

DO 400 I = 1, IRECL 00000520 

C-108 
Source FiLe: LSWT06.FOR 

C 

C 

C 

II = IRECL - I + 1 

IOBUFR(II+LPAD) = IOBUFR(II) 

400 CONTINUE 

DO 410 1=1, LPAD 

IOBUFR(I) = , , 

410 CONTI NUE 

IRECL = IRECL + LPAD 

500 CONTINUE 

C APPEND RECORD TO 'TO' FILE 

C 

WRITE (IOUTO,10) (IOBUFR(I), I=1,IRECL) 

C 

C REPEAT FOR NEXT RECORD 

C 

C 

C 

GO TO 100 

600 CONTINUE 

RETURN 

END 

C-109 

Program Unit: APPEND 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

00000680 

00000690 

00000700 

00000710 

00000720 

00000730 

00000740 

00000750 
Source FiLe: LSWT07.FOR Program Unit: IOINIT 

C ******************************************************************00000010 

C 00000020 

C LSWT07(IOINIT) 00000030 

C 00000040 

C OPENS DISK FILES FOR FOR I/O. FILENAMES ARE PROMPTED FROM THE 00000050 

C CONSOLE. 00000060 

C 00000070 

C ******************************************************************00000080 

C 00000090 

SUBROUTINE IOINIT 00000100 

C 00000110 

CHARACTER*14 IPFILE,OPFILE,MSF1,MSF2,MSF3,MSF4 00000120 

C 00000130 

COMMON/ UNITS / IOU1, IOU5, IOU6, IOU7, IOU8, 00000140 

1 IOU10, IOU11, IOU12, IOU13 00000150 

C 00000160 

DATA MSF1, MSF2, MSF3, MSF4 00000170 

1 / 'MSF1.DAT','MSF2.DAT','MSF3.DAT','MSF4.DAT'/ 00000180 

C 00000190 

C ******************************************************************00000200 

C 00000210 

C ASSIGN DEFAULT VALUES TO I/O UNIT POINTERS 00000220 

C 00000230 

IOU1 = 0 00000240 

IOU5 = 5 00000250 

IOU6 = 6 00000260 

IOU7 = IOU1 00000270 

IOU8 = 8 00000280 

IOU10 = 10 00000290 

IOU11 = 11 00000300 

IOU12 = 12 00000310 

IOU13 = 13 00000320 

C 00000330 

C CLEAR THE DISPLAY 00000340 

C 00000350 

CALL CLRSCN 00000360 

C 00000370 

C PLACE CURSOR AT ROW 10 COLUMN 1 00000380 

C 00000390 

CALL LOCATE(10,1) 00000400 

C 00000410 

C PROMPT FOR I/O FILES AND READ USER RESPONSE 00000420 

C 00000430 

WRITE(IOU1,10) 00000440 

10 FORMAT('ENTER INPUT FILENAME ===> , \) 00000450 

READ(IOU1,11) IPFILE 00000460 

11 FORMAT(A) 00000470 

WRITE(IOU1,12) 00000480 

12 FORMAT(' ENTER OUTPUT FILENAME ===> ' \) 00000490 

READ<IOU1,11) OPFILE 00000500 

C 00000510 

C REDIRECT OUTPUT FILE IF REQUESTED 00000520 

C-110 
Source FiLe: LSWT07.FOR Program Unit: IOINIT 

C 00000530 

IF(OPFILE.EQ.'CON ' ) IOU6 = IOU1 00000540 

C 00000550 

C OPEN STANDARD I/O FILES 00000560 

C 00000570 

C IOU5 STANDARD INPUT 00000580 

C IOU6 STANDARD OUTPUT 00000590 

C IOU7 TRACE FILE ASSIGNED TO CONSOLE OR STANDARD OUTPUT 00000600 

C IOU8 TEMPORARY OUTPUT BUFFER FILE 00000610 

C 00000620 

OPEN(IOU5, FILE = IPFILE, STATUS = 'OLD') 00000630 

IFCIOU6.EQ.6) OPEN(IOU6, FILE = OPFILE, STATUS = 'NEW') 00000640 

OPENCIOU8, FILE = 'IOBUFFER.TMP ' , STATUS = 'NEW') 00000650 

C 00000660 

C OPEN MASS STORAGE FILES 00000670 

C 00000680 

C NAME USE SIZE(ELEMENTS) 00000690 

C MSF1.DAT SURFACE AIC'S 2*(100*100)*NBLADES 00000700 

C MSF2.DAT WAKE AIC'S 2*(100*20 )*NBLADES 00000710 

C MSF3.DAT COMBINED AIC ARRAY 2*(100*100) 00000720 

C MSF4.DAT WAKE COORDINATES (24 *133)*NBLADES 00000730 

C 00000740 

OPEN(IOU10, FILE=MSF1, STATUS='NEW ' , ACCESS='DIRECT ' , RECL = 400 )00000750 

OPENCIOU11, FILE=MSF2, STATUS='NEW ' , ACCESS='DIRECT ' , RECL = 80 )00000760 

OPEN(IOU12, FILE=MSF3, STATUS='NEW ' , ACCESS='DIRECT ' , RECL = 400 )00000770 

OPENCIOU13, FILE=MSF4, STATUS='NEW ' , ACCESS='DIRECT' , RECL = 1596)00000780 

C 00000790 

C CLEAR THE DISPLAY SCREEN AND HOME THE CURSOR 00000800 

C 00000810 

CALL CLRSCN 00000820 

C 00000830 

RETURN 00000840 

END 00000850 

C-111 
Source FiLe: LSWT07.FOR Program Unit: IOFNSH 

C ******************************************************************00000010 

C 00000020 

C LSWT07(IOFNSH) 00000030 

C 00000040 

C CLOSES FILES OPENED FOR DISK 1/0 00000050 

C 00000060 

C ******************************************************************00000070 

C 00000080 

SUBROUTINE IOFNSH 00000090 

C 00000100 

COMMONI UNITS I IOU1, IOU5, IOU6, IOU7, IOU8, 00000110 

1 IOU10, IOU11, IOU12, IOU13 00000120 

C 00000130 

C ******************************************************************00000140 

C 00000150 

C KEEP STANDARD 1/0 FILES 00000160 

C 00000170 

CLOSE(IOU5, STATUS = 'KEEP') 00000180 

CLOSE(IOU6, STATUS = 'KEEP') 00000190 

C 00000200 

C DELETE IOBUFFER AND MASS STORAGE FILES 00000210 

C 00000220 

CLOSE(IOU8 , STATUS = 'DELETE') 00000230 

CLOSE(IOU10, STATUS = 'DELETE') 00000240 

CLOSE(IOU11, STATUS = 'DELETE') 00000250 

CLOSE(IOU12, STATUS = 'DELETE') 00000260 

CLOSE(IOU13, STATUS = 'DELETE') 00000270 

C 00000280 

RETURN 00000290 

END 00000300 

C-112 
Source FiLe: LSWT07.FOR Program Unit: TRACE 

C ******************************************************************00000010 

C 00000020 

C LSWT07(TRACE) 00000030 

C 00000040 

C PLACES A MARKER AND TIMING INFORMATION IN THE OUTPUT STREAM TO 00000050 

C IOU7 00000060 

C 00000070 

C ******************************************************************00000080 

C 00000090 

SUBROUTINE TRACE(MARKER) 00000100 

C 00000110 

CHARACTER*6 MARKER 00000120 

C 00000130 

COMMON/ CIPRT / IPRT1, IPRT2, IPRT3, IPRT4, IPRT5, IPRT6, 00000140 

1 IPRT7, IPRTB 00000150 

COMMON/ UNITS / IOU1, IOU5, IOU6, IOU7, IOUB, 00000160 

1 IOU10, IOU11, IOU12, IOU13 00000170 

C 000001BO 

C ******************************************************************00000190 

C 00000200 

WRITE(IOU7,10) MARKER 00000210 

10 FORMAT('O','TRACE: ',A6,/) 00000220 

C 00000230 

C DISPLAY STEP TIME 00000240 

C 00000250 

CALL TIMER(4) 00000260 

C 00000270 

C DISPLAY TOTAL TIME 00000280 

C 00000290 

CALL TIMER(2) 00000300 

C 00000310 

C INITIALIZE STEP TIME 00000320 

C 00000330 

CALL TIMER(3) 00000340 

C 00000350 

RETURN 00000360 

END 00000370 

C-113 
Source FiLe: LSWT07.FOR Program Unit: TIMER 

C ******************************************************************00000010 

C 00000020 

C LSWT07(TIMER) 00000030 

C 00000040 

C DISPLAYS PROGRAM TIMING INFORMATION TO IOU7. SYSTEM DEPENDENT 00000050 

C SUBROUTINE SYSTIM IS CALLED TO READ THE SYSTEM CLOCK FOR THE 00000060 

C CURRENT TIME. 00000070 

C 00000080 

C OPTION ACTION 00000090 

C 1 INITIALIZE START TIME IN HO,MO,SO,DO; NO DISPLAY 00000100 

C 2 DISPLAY TOTAL TIME T-TO 00000110 

C 3 INITIALIZE STEP TIME IN H1,M1,S1,D1; NO DISPLAY 00000120 

C 4 DISPLAY STEP TIME, T-T1 00000130 

C 00000140 

C ******************************************************************00000150 

C 00000160 

SUBROUTINE TIMER(OPTION) 00000170 

C 00000180 

IMPLICIT INTEGER (A-Z) 00000190 

C 00000200 

CHARACTER*49 FMT 00000210 

CHARACTER*1 FMTE(49) 00000220 

EQUIVALENCE (FMT,FMTE) 00000230 

C 00000240 

CHARACTER*10 TITLE(2) 00000250 

C 00000260 

COMMONI CTIMER I HO, MO, SO, DO, H1, M1, 00000270 

1 51, 01 00000280 

COMMONI UNITS I IOU1, IOUS, IOU6, IOU7, IOU8, 00000290 

1 IOU10, IOU11, IOU12, IOU13 00000300 

C 00000310 

DATA FMT/I(II ",A10," (H:M:S.D) ",IX,I:",IX,I:I,IX,".",I200000320 

1.2)11 00000330 

C 00000340 

DATA TITLE(1)/'TOTAL TIME'I 00000350 

DATA TITLE(2)/'STEP TIME II 00000360 

C 00000370 

C ******************************************************************00000380 

C 00000390 

CALL SYSTIM(H,M,S,D) 00000400 

C 00000410 

GO TO (100,200,300,400),OPTION 00000420 

C 00000430 

100 CONTINUE 00000440 

C 00000450 

C INITIALIZE START TIME 00000460 

C 00000470 

HO = H 00000480 

MO = M 00000490 

SO = S 00000500 

DO = 0 00000510 

C 00000520 

C-114 
Source File: LSWT07.FOR 

GO TO 900 

C 

200 CONTINUE 

C 

C 

C DISPLAY TOTAL TIME 

C 

C 

C 

C 

H = H-HO 

M = M-MO 

S = S-SO 

D = D-DO 

ITITLE = 1 

GO TO 500 

300 CONTINUE 

C INITIALIZE STEP TIME 

C 

C 

C 

H1 = H 

M1 = M 

S1 = S 

D1 = D 

GO TO 900 

400 CONTINUE 

C 

C DISPLAY STEP TIME 

C 

C 

C 

C 

H = H-H1 

M = M-M1 

S = S-S1 

D = D-D1 

ITITLE = 2 

GO TO 500 

500 CONTINUE 

C SCALE TIME COMPONENTS FOR DISPLAY 

C 

C 

IF(D.GE.O) GO TO 600 

D = D+100 

S = S-1 

600 CONTINUE 

C 

C 

IF(S.GE.O) GO TO 700 

S = S+60 

M = M-1 

C-115 

Program Unit: TIMER 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

00000680 

00000690 

00000700 

00000710 

00000720 

00000730 

00000740 

00000750 

00000760 

00000770 

00000780 

00000790 

00000800 

00000810 

00000820 

00000830 

00000840 

00000850 

00000860 

00000870 

00000880 

00000890 

00000900 

00000910 

00000920 

00000930 

00000940 

00000950 

00000960 

00000970 

00000980 

00000990 

00001000 

00001010 

00001020 

00001030 

00001040 
Source FiLe: L5WT07.FOR 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

700 CONTINUE 

800 

IF(M.GE.O) GO TO 800 

M = M+60 

H = H-1 

CONTINUE 

ADJUST FORMAT FOR SIZE OF TIME 

FMTE(25) = 121 

IF(H.LT.10) FMTE(25) = 111 

FMTE(32) = 121 

IF(M.LT.10) FMTE(32) = 1 l' 

FMTE(39) = 121 

IF(S.LT.10) FMTE(39) = , 11 

REPORT IT 

COMPONENTS 

WRITE(IOU7,FMT) TITLE(ITITLE),H,M,S,D 

900 CONTINUE 

RETURN 

END 

C-116 

Program Unit: TIMER 

00001050 

00001060 

00001070 

00001080 

00001090 

00001100 

00001110 

00001120 

00001130 

00001140 

00001150 

00001160 

00001170 

00001180 

00001190 

00001200 

00001210 

00001220 

00001230 

00001240 

00001250 

00001260 

00001270 

00001280 

00001290 

00001300 

00001310 
Source FiLe: L5WT07.FOR Program Unit: LOCATE 

C ******************************************************************00000010 

C 00000020 

C LSWT07(LOCATE) 00000030 

C 00000040 

C POSITIONS THE CONSOLE DISPLAY CURSOR BY WRITING ANSI TERMINAL 00000050 

C CONTROL SEQUENCES TO UNIT IOU1. 00000060 

C 00000070 

C ******************************************************************00000080 

C 00000090 

SUBROUTINE LOCATE(IROW,ICOL) 00000100 

C 00000110 

CHARACTER*8 CUP 00000120 

CHARACTER*1 ECUP(8) 00000130 

EQUIVALENCE (CUP,ECUP(1» 00000140 

C 00000150 

CHARACTER*10 FMT 00000160 

CHARACTER*1 EFMT(10) 00000170 

EQUIVALENCE (FMT,EFMT(1» 00000180 

C 00000190 

COMMONI UNITS I IOU1, IOU5, IOU6, IOU7, IOU8, 00000200 

1 IOU10, IOU11, IOU12, IOU13 00000210 

C 00000220 

DATA FMT I '('I ",A? \)' I 00000230 

C 00000240 

C ******************************************************************00000250 

C 00000260 

C ANSI CONTROL SEQUENCE: CUP = ESC['ROW';'COLUMN'H 00000270 

C 00000280 

IR1 = IROW/10 00000290 

IR2 = IROW-IR1*10 00000300 

IC1 = ICOL/10 00000310 

IC2 = ICOL-IC1*10 00000320 

C 00000330 

ECUP(1) = CHAR(27) 00000340 

ECUP(2) = CHAR(91) 00000350 

IPOS = 3 00000360 

C 00000370 

IF(IR1.EQ.0) GO TO 100 00000380 

ECUP(IPOS) = CHAR(IR1+48) 00000390 

IPOS = IPOS + 1 00000400 

100 CONTINUE 00000410 

C 00000420 

ECUP(IPOS) = CHAR(IR2+48) 00000430 

IPOS = IPOS + 1 00000440 

C 00000450 

ECUP(IPOS) = CHAR(59) 00000460 

IPOS = IPOS + 1 00000470 

C 00000480 

IF(IC1.EQ.0) GO TO 200 00000490 

ECUP(IPOS) = CHAR(IC1+48) 00000500 

IPOS = IPOS + 1 00000510 

200 CONTINUE 00000520 

C-117 
Source FiLe: LSWT07.FOR 

c 

C 

C 

c 

ECUP(IPOS) = CHAR(IC2+48) 

I PO S = I PO S + 1 

ECUP(IPOS) = CHAR(72) 

EFMT(7) = CHAR(IPOS+48) 

wRITE (IOU1,FMT) CUP 

RETURN 

END 

C-118 

Program Unit: LOCATE 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 
Source FiLe: LSWT07.FOR Program Unit: CLRSCN 

C ******************************************************************00000010 

C 00000020 

C LSWT07CCLRSCN) 00000030 

C 00000040 

C CLEARS THE CONSOLE DISPLAY AND HOMES THE CURSOR BY WRITING ANSI 00000050 

C TERMINAL CONTROL SEQUENCES TO UNIT IOU1. 00000060 

C 00000070 

C ******************************************************************00000080 

C 00000090 

SUBROUTINE CLRSCN 00000100 

C 00000110 

CHARACTER*4 ED 00000120 

CHARACTER*1 EED(4) 00000130 

EQUIVALENCE (ED,EEDC1» 00000140 

CHARACTER*10 FMT 000001 SO 

C 00000160 

COMMON! UNITS ! IOU1, IOUS, IOU6, IOU7, IOU8, 00000170 

1 IOU10, IOU11, IOU12, IOU13 00000180 

C 00000190 

DATA FMT ! 'C" ",A4 \)' ! 00000200 

C 00000210 

C ******************************************************************00000220 

C 00000230 

C ANSI CONTROL SEQUENCE: ED = ESC[2J 00000240 

C 000002S0 

EED(1) = CHAR(27) 00000260 

EED(2) = CHAR(91) 00000270 

EED(3) = CHAR(SO) 00000280 

EED(4) = CHAR(74) 00000290 

C 00000300 

WRITE CIOU1,FMT) ED 00000310 

C 00000320 

RETURN 00000330 

END 00000340 

C-119 
S,::iJrce Fi Le: LSWT08.FOR Drogr3m Un;:: WNDPRO 

c 

c 

c 

c 

C 

C 

C 

C 

c 

c 

c 

.-

'-

c 

c 

1 

2 

"T 

~ 

******************************************************************OOOOOO';~ 

;]0000020 

LSWT08(WNDPRO) 00000030 

00000040 

DETERmNES THE ONSET WIND PROFILE DUE TO THE ATMOSPHERIC BOUNDARY 00000050 

LAYER AND TOWER SHADOW. IF ITRAN = 0 THE AXIS SYSTEM IS WIND AXIS.00000060 

OTHERWISE IT IS SHAFT AXIS AND THE INPUT COORDINATES ARE 00000070 

TRANSFORMED TO WIND AXIS FOR DETERMINATION OF THE PROFILE. THE 00000080 

wIND VECTOR IS THEN RETURNED IN THE SAME AXIS SYSTEM AS INDICATED 00000090 

BY 'ITRAN'. 00000100 

00000110 

*****************************************************************xDJOOO12J 

00000130 

SUBROUTINE WNDPROCITRAN,X,Y,Z,VW1,VW2,VW3,AKZW) 1)0000140 

00000'150 

COMMON/ CONSTS / PI, RPD 00000160 

COMMON/ CWIND I ALPS1, ALPS2, HO, VWO, E, 00000170 

ITSTYP, TSTAB(10Q), NXTS, NYTS, 00000130 

TO, TP, TPG, TPS, TK, 00000190 

ABCS,2), AT<5,2) JOOO0200 

COIViMONI IFLAGS I ISTDY, IWFLAG, LSFLAG, IRFLAG 00000210 

CJMIVIONI PARMS I RADIUS, OMEGA, OMEGAR, RHO, ~MU 00000220 

00000230 

~*****************************************************************00000240 

vvr = 0.0 

vW2 = 0.0 

=JWO 

AKZw = VW3/'jMEGAR 

IF(:S70Y.EQ.Q) GO TJ 200 

IF::TRAN.EQ.O) GO TO 100 

TRA~SFORM lX,V,Z) FROM SHAFT TO WIND AXIS 

:AL~ ROTATE(Z,X,ALPS2) 

CALL RJT~TECY,Z,ALPS1) 

"00 CONTINUE 

00000250 

000::.10260 

0000027::1 

00000280 

00000290 

00000300 

00000310 

00000320 

00000330 

00000340 

00000350 

00000360 

00000370 

00000:,80 

00000390 

00000400 

00000410 

00000420 

00000430 

00000440 

00000450 

00000460 

00000470 

OClOQ0480 

00000490 

HEIGHT ABOVE 3ROUND (POSITIVE Y POINTS DOWN) 

-I = HQ-Y 

= :1 .. 0 

= J.O 

ADD ~0WER SHADOW (TS IS VELOCITY DEFIC:ENCY FRACTION) 

:-121] 

J0000500 

00000510 

00000520 
Source FiLe: LSWT08.FOR Program Unit: WNDPRO 

GO TO (110,120,130), ITSTYP+1 

C 

110 CONTINUE 

C 

C NO TOWER SHADOW INCLUDED IN WIND PROFILE 

C 

C 

C 

TS = 0.0 

GO TO 140 

120 CONTINUE 

C TOWER SHADOW EQUATION 

C 

C 

C 

TS = 0.0 

PSI = ATAN2(-X,Y) 

IF( (PSI.LT.(TPS-TPO» .OR. «TPS+TPO).LT.PSI) ) GO TO 130 

TS = TO + TP * COS«PI*TK/TPO)*(PSI-TPS» 

GO TO 140 

130 CONTINUE 

C TOWER SHADOW TABLE 

C 

C 

C 

C 

C 

CALL BVTINT(X,TS,Y,NXTS,NYTS,TSTAB,INOREX) 

IF(INOREX.NE.O) TS = 0.0 

140 CONTINUE 

VW3 = VW3 * (1.0-TS) 

AKZW = VW3 I OMEGAR 

IF(ITRAN.EQ.O) GO TO 200 

C RESOLVE WIND VECTOR TO SHAFT AXIS 

C 

C 

CALL ROTATE(VW2,VW3,-ALPS1) 

CALL ROTATE(VW3,VW1,-ALPS2) 

200 CONTINUE 

RETURN 

END 

C-121 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

00000680 

00000690 

00000700 

00000710 

00000720 

00000730 

00000740 

00000750 

00000760 

00000770 

00000780 

00000790 

00000800 

00000810 

00000820 

00000830 

00000840 

00000850 

00000860 

00000870 

00000880 

00000890 

00000900 

00000910 

00000920 

00000930 
Source FiLe: LSWT08.FOR Program Unit: FLPVEL 

C ******************************************************************00000010 

C 00000020 

C LSWT08(FLPVEL) 00000030 

C 00000040 

C CALCULATES THE ONSET VELOCITY DUE TO BLADE FLAPPING MOTION. THE 00000050 

C FLAPPING VELOCITY IS RESOLVED IN SHAFT AXIS. 00000060 

C 00000070 

C ******************************************************************00000080 

C 00000090 

SUBROUTINE FLPVEL(PSIT,X,Y,Z,VF1,VF2,VF3) 00000100 

C 00000110 

COMMONI CWIND I ALPS1, ALPS2, HO, VWO, E, 00000120 

1 ITSTYP, TSTAB(100), NXTS, NYTS, 00000130 

2 TO, TP, TPO, TPS, TK, 00000140 

3 AB(5,2), AT(5,2) 00000150 

COMMONI PARMS I RADIUS, OMEGA, OMEGAR, RHO, AMU 00000160 

C 00000170 

DATA ZERO I 1.0E-06 I 00000180 

C 00000190 

C ******************************************************************00000200 

C 00000210 

C DETERMINE AZIMUTH AND RADIUS OF COORDINATES 00000220 

C 00000230 

PSIP = 0.0 00000240 

IF(ABS(X).GT.ZERO.AND.ABS(Y).GT.ZERO) PSIP = ATAN2(-X,Y) 00000250 

R = SQRT(X**2+Y**2+Z**2) 00000260 

R = R*COS(PSIP-PSIT) 00000270 

C 00000280 

C FLAPPING ANGULAR DISPLACEMENT AND VELOCITY 00000290 

C 00000300 

BETA = AB(1,1) 00000310 

BET AD = 0.0 00000320 

NBH = IFIX(AB(1,2)+0.1) 00000330 

C 00000340 

DO 100 N = 1,NBH 00000350 

BETA = BETA+AB(N+1,1)*COS(N*PSIT)+AB(N+1,2)*SIN(N*PSIT) 00000360 

BETAD = BETAD-AB(N+1,1)*SIN(N*PSIT)*N+AB(N+1,2)*COS(N*PSIT)*N 00000370 

100 CONTINUE 00000380 

C 00000390 

BETAD = BETAD*OMEGA 00000400 

C 00000410 

C VELOCITY COMPONENTS IN SHAFT AXIS AT (X,Y,Z) 00000420 

C 00000430 

VF1 = 0.0 00000440 

VF2 = 0.0 00000450 

VF3 = R*BETAD 00000460 

CALL ROTATE(VF3,VF2,BETA) 00000470 

CALL ROTATE(VF1,VF2,PSIT) 00000480 

C 00000490 

RETURN 00000500 

END 00000510 

C-122 
Source FiLe: LSWT08.FOR Program Unit: NRMLBC 

C ******************************************************************00000010 

C 00000020 

C LSWT08CNRMLBC) 00000030 

C 00000040 

C CALCULATES THE NORMALWASH BOUNDARY CONDITION FROM SURFACE NORMAL 00000050 

C VECTORS AND ONSET VELOCITY 00000060 

C 00000070 

C ******************************************************************00000080 

C 00000090 

SUBROUTINE NRMLBCCPSIT) 00000100 

C 00000110 

REAL NRMWSH 00000120 

C 00000130 

COMMON/ CCIRC / CIRC(100), DCIRC(100), ACIRC(100), 00000140 

1 CIRCR(100), BCIRC(20), GO(20), 00000150 

2 TECF, AKM(6), XKMCS) 00000160 

COMMON/ CVLCTY / VFS1C5,20), VFS2(5,20), VFS3CS,20), 00000170 

1 VFS1M(20), VFS2M(20), VFS3M(20), 00000180 

2 VI1C5,20), VI2C5,20), VI3CS,20), 00000190 

3 VI1M(20), VI2M(20), VI3M(20), 00000200 

4 VREL(20), VIND(20), QREL(20) 00000210 

COMMON/ IFLAGS / ISTDY, IWFLAG, LSFLAG, IRFLAG 00000220 

COMMON/ NMWSH / NRMWSH(100) 00000230 

COMMON/ PARMS / RADIUS, OMEGA, OMEGAR, RHO, AMU 00000240 

COMMON/ PNLCRD / XSC6,24), YS(6,24), ZSC6,24), 00000250 

1 XCOLC5,20), YCOLC5,20), ZCOLC5,20) 00000260 

COMMON/ PNLNDX / MP, NP, NPANEL, 00000270 

1 MP1, NP1, NPNLSQ, 00000280 

2 NSGMNT, JGLIMC4,2), JCGLIMC4,2), 00000290 

3 NPS(4), NBLDS 00000300 

COMMON/ PNLVEC / AN1C5,20), AN2C5,20), AN3C5,20), 00000310 

1 AT1C5,20), AT2C5,20), AT3(5,20), 00000320 

2 AQC1(20), AQC2(20), AQC3(20) 00000330 

COMMON/ UNITS / IOU1, IOU5, IOU6, IOU7, IOU8, 00000340 

1 IOU10, IOU11, IOU12, IOU13 00000350 

C 00000360 

C ******************************************************************00000370 

C 00000380 

DO 300 N = 1,NP 00000390 

C 00000400 

IF(ISTDY.EQ.1) GO TO 100 00000410 

C 00000420 

CALL WNDPRO(0,0.0,0.0,0.0,VW1,VW2,VW3,AKZW) 00000430 

C 00000440 

VF1 = 0.0 00000450 

VF2 = 0.0 00000460 

VF3 = 0.0 00000470 

C 00000480 

100 CONTINUE 00000490 

C 00000500 

DO 300 M = 1,MP 00000510 

C 00000520 

C-123 
Source FiLe: LSWT08.FOR Program Unit: NRMLBC 

LP = (M-1)*NP+N 

C 

C BUILD FREESTREAM VECTOR FROM WIND PROFILE, 

C FLAPPING, AND ROTATIONAL VELOCITIES 

C 

C 

C 

C 

C 

C 

C 

IF(ISTDY.EQ.O) GO TO 200 

CALL WNDPRO(1,XCOL(M,N),YCOL(M,N),ZCOL(M,N),VW1,VW2,VW3,AKZW) 

CALL FLPVEL(PSIT,XCOL(M,N),YCOL(M,N),ZCOL(M,N),VF1,VF2,VF3) 

200 CONTINUE 

VFS1(M,N) = VW1+VF1+( OMEGAR*YCOL(M,N» 

VFS2(M,N) = VW2+VF2+(-OMEGAR*XCOL(M,N» 

VFS3(M,N) = VW3+VF3 

C NORMALWASH BOUNDARY CONDITION 

C 

C 

C 

NRMWSH(LP) = -( AN1(M,N)*VFS1(M,N) 

1 +AN2(M,N)*VFS2(M,N) 

2 +AN3(M,N)*VFS3(M,N) ) I OMEGAR 

300 CONTINUE 

RETURN 

END 

C-124 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

00000680 

00000690 

00000700 

00000710 

00000720 

00000730 

00000740 

00000750 

00000760 

00000770 

.00000780 

00000790 

00000800 
Source File: LSWT08.FOR Program Unit: CIRPRM 

C ******************************************************************00000010 

C 00000020 

C LSWT08(CIRPRM) 00000030 

C 00000040 

C CALCULATES PARAMETERS DERIVED FROM THE DISTRIBUTED CIRCULATION 00000050 

C SOLUTION 00000060 

C 00000070 

C ******************************************************************00000080 

C 00000090 

SUBROUTINE CIRPRM 00000100 

C 00000110 

COMMON/ CCIRC / CIRC(100), DCIRC(100), ACIRC(100), 00000120 

1 CIRCR(100), BCIRC(20), GO(20), 00000130 

2 TECF, AKM(6), XKM(5) 00000140 

COMMON/ PNLNDX / MP, NP, NPANEL, 00000150 

1 MP1, NP1, NPNLSQ, 00000160 

2 NSGMNT, JGLIM(4,2), JCGLIM(4,2), 00000170 

3 NPS(4), NBLDS 00000180 

C 00000190 

C ******************************************************************00000200 

C 00000210 

DO 100 J = 1,NP 00000220 

C 00000230 

JP = (MP-1)*NP+J 00000240 

C 00000250 

C BOUND (TRAILING EDGE) CIRCULATION 00000260 

C 00000270 

BCIRC(J) = CIRC(JP)*TECF 00000280 

C 00000290 

C LEADING EDGE SUCTION PARAMETER 00000300 

C 00000310 

GO(J) = 1.0 00000320 

IF(MP.EQ.1) GO TO 100 00000330 

GXKM1 = CIRC(J)/BCIRC(J)/AKM(1) 00000340 

GXKM2 = CIRC(J+NP)/BCIRC(J)/AKM(2) 00000350 

GO(J) = (GXKM2-GXKM1)/(XKM(2)-XKM(1»*(-XKM(1»+GXKM1 00000360 

C 00000370 

100 CONTINUE 00000380 

C 00000390 

RETURN 00000400 

END 00000410 

C-125 
Source FiLe: LSWT08.FOR Program Unit: BEVEL 

C ******************************************************************00000010 

C 00000020 

C LSWT08(BEVEL) 00000030 

C 00000040 

C CALCULATES THE BLADE ELEMENT VELOCITIES 00000050 

C 00000060 

C ******************************************************************00000070 

C 00000080 

SUBROUTINE BEVEL(PSIT) 00000090 

C 00000100 

DIMENSION DSWT(100) 00000110 

C 00000120 COMr~ON! ALSLP ! ALS(20) , ALSNEW(20), ALSOLD(20) 00000130 

COMMON! BLDELE ! XCLE(20), YCG(20), RBE(20), 00000140 

1 DBES(20), CLAMLE(20) , CLAMQC(20) , 00000150 

2 CHDCGL(20) , BETAL<20> , AFTWF (20), 00000160 

3 JTAB(20,2), TOC(20), RE(20), 00000170 

4 CL H2O>, CDT(20), CMH20> , 00000180 

5 CDS(20) 00000190 

COMMON! CCIRC ! CIRC (100), DCIRC(100) , ACIRC(100) , 00000200 

1 CIRCR(100), BCIRC(20), GO(20), 00000210 

2 TECF, AKM(6), XKM(5) 00000220 

COMMON! CDLS ! DLS(25) 00000230 

COMMON! CONSTS ! PI, RPD 00000240 

COrI1MON! CVLCTY ! VFS1 (5,20>, VFS2(5,20), VFS3(5,20), 00000250 

1 VFSHH20) , VFS2M(20) , VFS3M(20), 00000260 

2 VI1(5,20), VI2(5,20> , VI3(S,20), 00000270 

3 VI1M(20), VI2M(20), VI3M(20) , 00000280 

4 VREL(20), VIND(20), QREL<20> 00000290 

COMMON! PARMS ! RADIUS, OMEGA, OMEGAR, RHO, AMU 00000300 

COMMON! PNLNDX ! MP, NP, NPANEL, 00000310 

1 MP1, NP1, NPNLSQ, 00000320 

2 NSGMNT, JGLIM(4,2), J CGLIM(4,2), 00000330 

3 NPS(4), NBLDS 00000340 

COMMON! PNLVEC ! AN1(5,20), AN2(S,20> , AN3(S,20), 00000350 

1 AT1(5,20>, AT2(S,20> , AT3(S,20> , 00000360 

2 AQC1 (20), AQC2(20) , AQC3(20) 00000370 

COMMON! UNITS ! IOU1, IOUS, IOU6, IOU7, IOU8, 00000380 

1 IOU10, IOU11, IOU12, IOUB 00000390 

C 00000400 

C ******************************************************************00000410 

C 00000420 

DO 100 N = 1,NP 00000430 

C 00000440 

C 00000450 

VFS1 M(N) = 0.0 00000460 

VFS2M(N) = 0.0 00000470 

VFS3M(N) = 0.0 00000480 

C 00000490 

VI1M(N) = 0.0 00000500 

VI2M(N) = 0.0 00000510 

VI3M(N) = 0.0 00000520 

C-126 
Source FiLe: LSWT08.FOR 

C 

00 200 M = 1,MP 

C 

C NORMAL INDUCED VELOCITY 

C 

c 

C 

VSIN = 0.0 

DO 300 I = 1,MP 

KP = (I-1)*NP+N 

ISTR = (I-1)*MP+M 

VSIN = VSIN + DLS(ISTR)/CHDCGL(N)*CIRC(KP) 

300 CONTINUE 

VSIN = VSIN/RADIUS*2.0*PI/ALS(N) 

VFSN = VFS1 (M,N)*AN1 (M,N) 

1 + VFS2(M,N)*AN2(M,N) 

2 + VFS3(M,N)*AN3(M,N) 

VN = -VFSN-VSIN 

C 

C TANGENTIAL INDUCED VELOCITY 

C 

C 

C 

C 

C 

LP = (M-1)*NP+N 

READ(IOU12, REC = NPANEL+LP) (DSWT(KP), KP = 1,NPANEL) 

VT = 0.0 

00 400 KP = 1,NPANEL 

VT = VT+DSWT(KP)*CIRC(KP) 

400 CONTINUE 

VT = VT/RADIUS 

C RESOLVE TO COMPONENTS IN FIXED REFERENCE SYSTEM 

C 

C 

VI1(M,N) = VN*AN1(M,N) + VT*AT1(M,N) 

VI2(M,N) = VN*AN2(M,N) + VT*AT2(M,N) 

VI3(M,N) = VN*AN3(M,N) + VT*AT3(M,N) 

C TRANSFORM VELOCITIES TO BLADE ELEMENT COORDINATE SYSTEM 

C 

C 

c 

ANGLE = -PSIT 

CALL ROTATE(VI1(M,N),VI2(M,N),ANGLE) 

CALL ROTATE(VFS1(M,N),VFS2(M,N),ANGLE) 

ANGLE = 0.0 

DY = -AN2(M,N) 

DX = AN3(M,N) 

IF(ABS(DY).GT.1.0E-06) ANGLE = -ATAN2(DY,DX) 

CALL ROTATE(VI2(M,N),VI3(M,N),ANGLE) 

CALL ROTATE(VFS2(M,N),VFS3(M,N),ANGLE) 

200 CONTINUE 

C-127 

Program Unit: BEVEL 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

00000680 

00000690 

00000700 

00000710 

00000720 

00000730 

00000740 

00000750 

00000760 

00000770 

00000780 

00000790 

00000800 

00000810 

00000820 

00000830 

00000840 

00000850 

00000860 

00000870 

00000880 

00000890 

00000900 

00000910 

00000920 

00000930 

00000940 

00000950 

00000960 

00000970 

00000980 

00000990 

00001000 

00001010 

00001020 

00001030 

00001040 
Source File: LSWT08.FOR Program Unit: BEVEL 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

GET CHORDWISE AVERAGE 

CALL CWAVG ( VFS1<1 ,N), VFS1 M(N) ) 

CALL CWAVG ( VFS2(1,N), VFS2M(N) ) 

CALL CWAVG ( VFS3(1,N), VFS3M(N) ) 

CALL CWAVG ( VI1(1,N), VI1M(N) ) 

CALL CWAVG ( VI2(1,N), VI2M(N) ) 

CALL CWAVG ( VI3(1,N), VI3M(N) ) 

ELEMENT INDUCED VELOCITY 

VIND(N) = VI1M(N) 

ELEMENT RELATIVE VELOCITY AND DYNAMIC PRESSURE 

VREL1 

VREL2 

VREL3 

VREL(N) 

QREL(N) 

= VFS1M(N) + VI1M(N) 

= VFS2M(N) + VI2M(N) 

= VFS3M(N) + VI3M(N) 

= SQRT( VREL1**2 + VREL2**2 + VREL3**2 ) 

= 0.5*RHO*VREL(N)**2 

COSINE OF AERODYNAMIC SWEEP ANGLE FROM VECTOR PRODUCT OF 

VELOCITY AND CIRCULATION (CIRCULATION ASSUMED TO BE ALONG 

QUARTER CHORD FOR THIS CALCULATION) -- NOTE THAT COSINE OF SWEEP 

IS THE SINE OF INCLUDED ANGLE 

CALL VPANG(AQC1(N),AQC2(N),AQC3(N),VREL1,VREL2,VREL3,CLAMQC(N» 

100 CONTINUE 

RETURN 

END 

C-128 

00001050 

00001060 

00001070 

00001080 

00001090 

00001100 

00001110 

00001120 

00001130 

00001140 

00001150 

00001160 

00001170 

00001180 

00001190 

00001200 

00001210 

00001220 

00001230 

00001240 

00001250 

00001260 

00001270 

00001280 

00001290 

00001300 

00001310 

00001320 

00001330 

00001340 

00001350 

00001360 

00001370 
Source FiLe: LSWT08.FOR Program Unit: CWAVG 

C ******************************************************************00000010 

C 00000020 

C LSWT08(CWAVG) 00000030 

C 00000040 

C CALCULATES THE CHORDWISE AVERAGE 'YM' OF THE 'MP' POINTS PASSED 00000050 

C THROUGH THE DUMMY ARRAY 'V' 00000060 

C 00000070 

C ******************************************************************00000080 

C 00000090 

SUBROUTINE CWAVG(Y,YM) 00000100 

C 00000110 

COMMON/ CGRID / NGRID(4), XG(6), YG(24), XCG(5) 00000120 

COMMON/ PNLNDX / MP, NP, NPANEL, 00000130 

1 MP1, NP1, NPNLSQ, 00000140 

2 NSGMNT, JGLIM(4,2), JCGLIM(4,2), 00000150 

3 NPS(4), NBLDS 00000160 

C 00000170 

DIMENSION Y(1) 00000180 

C 00000190 

C ******************************************************************00000200 

C 00000210 

YM = Y(1) 00000220 

IF(MP.EQ.1) GO TO 200 00000230 

C 00000240 

YLE = (Y(2)-Y(1»/(XCG(1)-XCG(2»*(-XCG(1»+Y(1) 00000250 

YTE = (Y(MP)-Y(MP-1»/(XCG(MP)-XCG(MP-1»*(1.0-XCG(MP»+Y(MP) 00000260 

YM = (YLE+Y(1»/2.0*XCG(1) + (Y(MP)+YTE)/2.0*(1.0-XCG(MP» 00000270 

C 00000280 

DO 100 I=1,MP-1 00000290 

YM = YM + (Y(I+1)+Y(I»/2.0*(XCG(I+1)-XCG(I» 00000300 

100 CONTINUE 00000310 

C 00000320 

200 CONTINUE 00000330 

C 00000340 

RETURN 00000350 

END 00000360 

C-129 
Source FiLe: LSWT08.FOR Program Unit: BEALPH 

C ******************************************************************00000010 

C 00000020 

C LSWT08(BEALPH) 00000030 

C 00000040 

C CALCULATES THE BLADE ELEMENT ANGLES OF ATTACK 00000050 

C 00000060 

C ******************************************************************00000070 

C 00000080 

SUBROUTINE BEALPH 00000090 

C 00000100 

COMMON/ ALSLP / ALS(20), ALSNEW(20), ALSOLD(20) 00000110 

COMMON/ BLDELE / XCLE(20), YCG(20), RBE(20), 00000120 

1 DBES(20), CLAMLE(20), CLAMQC(20), 00000130 

2 CHDCGL(20), BETAL(20), AFTWF(20), 00000140 

3 JTAB(20,2), TOC(20), RE(20), 00000150 

4 CLT(20), CDT(20), CMT(20), 00000160 

5 CDS(20) 00000170 

COMMON/ CALPHA / ALPHAG(20), ALPHAE(20), ALPHAW(20), 00000180 

1 ALPHAN(20), ALPHAI(20), AZLLC(20), 00000190 

2 TWSTCG(20) 00000200 

COMMON/ CCIRC / CIRC(100), DCIRC(100), ACIRC(100), 00000210 

1 CIRCR(100), BCIRC(20), GO(20), 00000220 

2 TECF, AKM(6), XKM(5) 00000230 

COMMON/ CONSTS / PI, RP6 00000240 

COMMON/ CONTRL / TOL1, TOL2, TOL3, ICYL1, ICYL2, ICYL3, 00000250 

1 ICYL4 00000260 

COMMON/ CVLCTY / VFS1(5,20), VFS2(5,20), VFS3(5,20), 00000270 

1 VFS1M(20), VFS2M(20), VFS3M(20), 00000280 

2 VI1(5,20), VI2(5,20), VI3(5,20), 00000290 

3 VI1M(20), VI2M(20), VI3M(20), 00000300 

4 VREL(20), VIND(20), QREL(20) 00000310 

COMMON/ IFLAGS / ISTDY, IWFLAG, LSFLAG, IRFLAG 00000320 

COMMON/ PARMS / RADIUS, OMEGA, OMEGAR, RHO, AMU 00000330 

COMMON/ PNLNDX / MP, NP, NPANEL, 00000340 

1 MP1, NP1, NPNLSQ, 00000350 

2 NSGMNT, JGLIM(4,2), JCGLIM(4,2), 00000360 

3 NPS(4), NBLDS 00000370 

C 00000380 

DATA ZERO /1.0E-06/ 00000390 

C 00000400 

C ******************************************************************00000410 

C 00000420 

C RESET LIFT SLOPE CONVERGENCE FLAG 00000430 

C 00000440 

LSFLAG = 0 00000450 

C 00000460 

DO 100 J = 1,NP 00000470 

C 00000480 

JP = (MP-1)*NP+J 00000490 

C 00000500 

C ONSET VELOCITY ANGLE OF ATTACK 00000510 

C 00000520 

C-130 
Source File: LSWT08.FOR Program Unit: BEALPH 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

ALPHAW(J) = 0.0 

IF(ABS(VFS3M(J».GT.ZERO) ALPHAW(J) = ATAN2(VFS3M(J),VFS1M(J» 

EFFECTIVE ANGLE OF ATTACK 

RE(J) = RHO*VREL(J)*CHDCGL(J)*RADIUS/AMU 

CLO 

CDS(J) 

ALPHAE(J) 

= 2.0*BCIRC(J)/VREL(J)/CHDCGL(J)/RADIUS 

= -(CLO**2/(2.0*PI»/CLAMLE(J) * (GO(J)**2-1.0) 

= ASIN(CLO/ALS(J»/CLAMQC(J) 

ELEMENT AIRFOIL CHARACTERISTICS WITH SWEEP CORRECTIONS 

ALTAB = (ALPHAE(J)+AZLLC(J»/RPD 

CALL AFCOEF(J,ALTAB,RE(J),CLT(J),CDT(J),CMT(J),INOREX) 

CLT(J) = CLT(J)*CLAMQC(J)**2 

'CDF' IS PORTION OF PROFILE DRAG COEFFICIENT ATTRIBUTABLE TO 

FRICTION. CDT-CDF IS THEN PRESSURE DRAG AND MUST BE CORRECTED 

FOR SWEEP 

CDF = 0.006 

CDP = CDT(J) - CDF 

CDT(J) = CDF + CDP*CLAMQC(J)**3 

RESET SUCTION FORCE INCREMENT IF STALLED 

IF(INOREX.NE.O) CDS(J) = 0.0 

CALCULATE NEW LIFT CURVE SLOPE AND CHECK CONVERGENCE 

ALSNEW(J) = CLT(J)/SIN(ALPHAE(J» 

TOLMAX = ABS(1.0/ALSNEW(J)**2) 

IF(TOLMAX.LT.0.01) TOLMAX = 0.01 

IF(TOL2.GT.0.0) TOLMAX = TOL2 

TOL = ABS«ALSNEW(J)-ALS(J»/ALSNEW(J» 

IF(TOL.GT.TOLMAX) LSFLAG = 1 

ALSOLD(J) = ALS(J) 

ALS(J) = ALSNEW(J) 

INFLOW 'N' AND INDUCED 'I' ANGLES OF ATTACK 

USE ANGLE RESOLUTION BELOW STALL, VELOCITY RESOLUTION ABOVE 

STALL 

IF(INOREX.NE.O) GOTO 110 

ALPHAN(J) = ALPHAE(J)-ALPHAG(J)+AZLLC(J) 

ALPHAI(J) = ALPHAN(J)-ALPHAW(J) 

GOTO 100 

110 CONTINUE 

ALPHAN(J) = ATAN2(VFS3M(J)+VI3M(J),VFS1M(J)+VI1M(J» 

C-131 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

00000680 

00000690 

00000700 

00000710 

00000720 

00000730 

00000740 

00000750 

00000760 

00000770 

00000780 

00000790 

00000800 

00000810 

00000820 

00000830 

00000840 

00000850 

00000860 

00000870 

00000880 

00000890 

00000900 

00000910 

00000920 

00000930 

00000940 

00000950 

00000960 

00000970 

00000980 

00000990 

00001000 

00001010 

00001020 

00001030 

00001040 
Source FiLe: LSWT08.FOR 

C 

C 

ALPHAI(J) = ATAN2(VI3M(J),VFS1M(J)+VI1M(J» 

100 CONTINUE 

RETURN 

END 

C-132 

Program Unit: BEALPH 

00001050 

00001060 

00001070 

00001080 

00001090 

00001100 
Source FiLe: LSWT08.FOR Program Unit: AFCOEF 

C ******************************************************************00000010 

C 00000020 

C LSWT08(AFCOEF) 00000030 

C 00000040 

C CALLS TABLE LOOKUPS, ADDS ANALYTICAL EXTENSIONS, AND PERFORMS 00000050 

C AVERAGING TO GET CL,CD, AND CM AT BLADE ELEMENT IJI. 00000060 

C 00000070 

C ******************************************************************00000080 

C 00000090 

SUBROUTINE AFCOEF(J,ALTAB,REN,CL,CD,CM,INOREX) 00000100 

C 00000110 

COMMON/ AFTABL / NAFT, IDAFT(4), AFTOC(4), IAFTEX, 00000120 

1 STP1(4), STP2(4), STP3(4), 00000130 

2 STP4(4), STP5(4), STP6(4), 00000140 

3 CLTAB(200,4), NRCL(4), NACL(4), 00000150 

4 CDTAB(200,4), NRCD(4), NACD(4), 00000160 

5 CMTAB(100,4), NRCM(4), NACM(4) 00000170 

COMMON/ BLDELE / XCLE(20), YCG(20), RBE(20), 00000180 

1 DBES(20), CLAMLE(20), CLAMQC(20), 00000190 

2 CHDCGL(20), BETAL(20), AFTWF(20), 00000200 

3 JTAB(20,2), TOC(20), RE(20), 00000210 

4 CLT(20), CDT(20), CMT(20), 00000220 

5 CDS(20) 00000230 

COMMON/ CCIRC / CIRC(100), DCIRC(100), ACIRC(100), 00000240 

1 CIRCR(100), BCIRC(20), GO(20), 00000250 

2 TECF, AKM(6), XKM(5) 00000260 

COMMON/ CONSTS / PI, RPD 00000270 

C 00000280 

C ******************************************************************00000290 

C 00000300 

JTAB1 = JTAB(J,1) 00000310 

JTAB2 = JTAB(J,2) 00000320 

IPASS = 1 00000330 

JTABP = JTAB1 00000340 

C 00000350 

NRCLP = NRCL(JTABP) 00000360 

NACLP = NACL(JTABP) 00000370 

NRCDP = NRCD(JTABP) 00000380 

NACDP = NACD(JTABP) 00000390 

NRCMP = NRCM(JTABP) 00000400 

NACMP = NACM(JTABP) 00000410 

C 00000420 

100 CONTINUE 00000430 

C 00000440 

CALL BVTINT(REN,CLP,ALTAB,NRCLP,NACLP,CLTAB(1,JTABP),INEXCL) 00000450 

CALL BVTINT(REN,CDP,ALTAB,NRCDP,NACDP,CDTAB(1,JTABP),INEXCD) 00000460 

CALL BVTINT(REN,CMP,ALTAB,NRCMP,NACMP,CMTAB(1,JTABP),INEXCM) 00000470 

C 00000480 

C IF OUT OF TABLE RANGE THEN USE ANALYTICAL MODEL IF REQUESTED, 00000490 

C OTHERWISE KEEP TABLE EXTRAPOLATIONS 00000500 

C 00000510 

IF(INEXCL.EQ.O.AND.INEXCD.EQ.O.AND.INEXCM.EQ.O) GO TO 110 00000520 

C-133 
Source FiLe: LSWT08.FOR Program Unit: AFCOEF 

C 

C 

C 

C 

c 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

110 

IF(IAFTEX.EQ.O) GO TO 110 

GET CL,CD, AND CM AT STALL (ASSUMED TO BE SAME AS TABLE LIMIT) 

ITABL = NRCLP+NACLP 

ITABD = NRCDP+NACDP 

ITABM = NRCMP+NACMP 

ALPSL = CLTAB(ITABL,JTABP) 

ALPSD = CDTAB(ITABD,JTABP) 

ALPSM = CMTAB(ITABM,JTABP) 

CALL BVTINT(REN,CLS,ALPSL,NRCLP,NACLP,CLTA8(1,JTABP),INOREX) 

CALL BVTINT(REN,CDS,ALPSD,NRCDP,NACDP,CDTAB(1,JTABP),INOREX) 

CALL BVTINT(REN,CMS,ALPSM,NRCMP,NACMP,CMTAB(1,JTABP),INOREX) 

EXTEND TABLE ANALYTICALLY 

CALL AFTEXT(JTABP,ALTAB,ALPSL,ALPSD,CLS,CDS,CLEX,CDEX) 

IF <INEXCL.NE.Q) CLP = CLEX 

IF (INEXCD. NE. Q) COP = CDEX 

IF<INEXCM.NE.Q) CMP = CMS 

INOREX = 0 

IF<INEXCL.NE.Q) INOREX = 1 

IF<IPASS.EQ.2) GO TO 120 

CONTINUE 

CL = CLP 

CD = COP 

CM = CMP 

REPEAT FOR SECOND TABLE IF AVERAGING USED AT THIS STATION 

IF(JTAB1.EQ.JTAB2) GO TO 120 

IPASS = 2 

JTABP = JTAB2 

NRCLP = NRCL(JTABP) 

NACLP = NACL(JTABP) 

NRCDP = NRCD(JTABP) 

NACDP = NACD(JTABP) 

NRCMP = NRCM(JTABP) 

NACMP = NACM(JTABP) 

GO TO 100 

120 CONTINUE 

C-134 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

00000680 

00000690 

00000700 

00000710 

00000720 

00000730 

00000740 

00000750 

00000760 

00000770 

00000780 

00000790 

00000800 

00000810 

00000820 

00000830 

00000840 

00000850 

00000860 

00000870 

00000880 

00000890 

00000900 

00000910 

00000920 

00000930 

00000940 

00000950 

00000960 

00000970 

00000980 

00000990 

00001000 

00001010 

00001020 

00001U30 

00001040 
Source FiLe: lSWT08.FOR 

C 

CL = CLP*AFTWF(J)+CL*(1.0-AFTWF(J» 

CD = CDP*AFTWF(J)+CD*(1.0-AFTWF(J» 

CM = CMP*AFTWF(J)+CM*(1.0-AFTWF(J» 

RETURN 

END 

C-135 

Program Unit: AFCOEF 

00001050 

00001060 

00001070 

00001080 

00001090 

00001100 
Source FiLe: LSWT08.FOR Program Unit: AFTEXT 

C ******************************************************************00000010 

C 00000020 

C LSWT08(AFTEXT) 00000030 

C 00000040 

C EXTENDS AIRFOIL TABLES WITH ANALYTICAL METHODS. 00000050 

C 00000060 

C ******************************************************************00000070 

C 00000080 

SUBROUTINE AFTEXT(JTAB,ALTAB,ALPSL,ALPSD,CLS,CDS,CL,CD) 00000090 

C 00000100 

COMMONI AFTABL 1 NAFT, IDAFT(4), AFTOC(4), IAFTEX, 00000110 

1 STP1(4), STP2(4), STP3(4), 00000120 

2 STP4(4), STP5(4), STP6(4), 00000130 

3 CLTAB(200,4), NRCL(4), NACL(4), 00000140 

4 CDTAB(200,4), NRCD(4), NACD(4), 00000150 

5 CMTAB(100,4), NRCM(4), NACM(4) 00000160 

COMMONI CALPHA 1 ALPHAG(20), ALPHAE(20), ALPHAW(20), 00000170 

1 ALPHAN(20), ALPHAI(20), AZLLC(20), 00000180 

2 TWSTCG(20) 00000190 

COMMON 1 CONSTS 1 PI, RPD 00000200 

C 00000210 

C ******************************************************************00000220 

C 00000230 

ALP = ALTAB * RPD 00000240 

ALPSL = ALPSL * RPD 00000250 

ALPSD = ALPSD * RPD 00000260 

ABSALP = ABS(ALP) 00000270 

C 00000280 

SA = SIN(ALP) 00000290 

CA = COS (ALP) 00000300 

SASL = SIN(ALPSL) 00000310 

SASD = SIN(ALPSD) 00000320 

CASL = COS(ALPSL) 00000330 

CASD = COS(ALPSD) 00000340 

C 00000350 

IF(IAFTEX.GT.1) GO TO 200 00000360 

C 00000370 

C ---------------------------------------------------------- 00000380 

C IAFTEX = 1 AEROVIRONMENT METHOD 00000390 

C FLAT PLATE NORMAL FORCE COEFFICIENT WITH MODIFICATIONS FOR 00000400 

C EFFECTIVE ASPECT RATIO 8ASED ON PRANDTL TIP LOSS FACTOR 00000410 

C ---------------------------------------------------------- 00000420 C 00000430 

C APPROXIMATE 'PRANOTL LOSS FUNCTION' 30/20 ALPHA 00000440 

C 00000450 

F = ABS(ALPHAE(J)/(ALPHAW(J)+ALPHAG(J)-AZLLC(J») 00000460 

CN = 1.98 00000470 

IF(F.GE.0.99999) GO TO 100 00000430 

AR = 2.0 00000490 

IF(F.GT.0.5) AR = 2.0 * F/(1-F) 00000500 

CN = 1.98 - 0.81 * TANH(12.22/AR) 00000510 

100 CN=AMIN1( 1.0 1 ( 0.222 + 0.283 1 SIN(ABSALP) ),CN ) 00000520 

C-136 
Source FiLe: LSWT08.FOR 

IF(ALP.LT.O.O) CN = -CN 

C 

C LIFT AND DRAG COEFFICIENTS 

C 

C 

C 

C 

CL = CN * CA 

CD = CN * SA 

GO TO 1000 

200 CONTINUE 

IF(IAFTEX.GT.2) GO TO 300 

C ----------------------------------------------- C IAFTEX = 2 VITERNA'S METHOD 

C ----------------------------------------------- C 

AR = STP1(JTAB) 

CDMAX = 1.11+0.018*AR 

C 

B1 = CDMAX 

B2 = (CDS-B1*SASD**2)/CASD 

C 

A1 = B1/2.0 

A2 = (CLS-CDMAX*SASL*CASL)*SASL/CASL**2 

C 

C LIFT AND DRAG COEFFICIENTS 

C 

C 

C 

C 

CL = A1*2.0*SA*CA + A2*CA**2/SA 

CO = B1*SA**2 + B2*CA 

GO TO 1000 

300 CONTINUE 

IF(IAFTEX.GT.3) GO TO 1000 

C ----------------------------------------------- C IAFTEX = 3 CMA METHOD 

C ----------------------------------------------- C 

C 

C 

ALPR = STP1(JTAB)*RPO 

CL45 = STP2(JTAB) 

C045 = STP3(JTAB) 

CL90 = STP4(JTAB) 

C090 = STP5(JTAB) 

BPR = STP6(JTAB) 

IF(ALP.GT.ALPR) GO TO 310 

C REGION 2 -- TRANSITION FROM STALL TO RECOVERY 

C ALPS < ALP < ALPR 

C 

SAR = SIN(ALPR) 

C-137 

Program Unit: AFTEXT 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

00000680 

00000690 

00000700 

00000710 

00000720 

00000730 

00000740 

00000750 

00000760 

00000770 

00000780 

00000790 

00000800 

00000810 

00000820 

00000830 

00000840 

00000850 

00000860 

00000870 

00000880 

00000890 

00000900 

00000910 

00000920 

00000930 

00000940 

00000950 

00000960 

00000970 

00000980 

00000990 

00001000 

00001010 

00001020 

00001030 

00001040 
Source FiLe: LSWT08.FOR Program Unit: AFTEXT 

C 

C 

C 

CAR = COS (ALPR) 

CLR = C2.0*CL45*SAR*CAR) 

CDR = C2.0*C045*SAR**2 ) 

A1 = (CLR*CASL**2*SAR-CLS*CAR**2*SASL) / 

1 C2.0*CASL*CAR*(SAR**2*CASL-SASL**2*CAR» 

A2 = (CLS-2.0*A1*SASL*CASL)*SASL/CASL**2 

B1 = CCOS*CAR-COR*CASO)/CSASO**3*CAR-SAR**3*CASO) 

B2 = CCOR-B1*SAR**3)/CAR 

CL = A1*2.0*SA*CA + A2*CA**2/SA 

CD = B1*SA**3 + B2*CA 

GOTO 1000 

310 CONTINUE 

IFCALP.GT.PI/4.0) GOTO 320 

C 

C REGION 3 -- RECOVERY TO 45 DEG 

C 

C 

C 

A1 = 2.0*CL45*BPR 

A2 = CCLR-2.0*CL45*BPR*SAR*CAR)/C1.0-2.0*SAR**2) 

B1 = (CDR-SQRTC2.0)*CD45*BPR*CAR)/CSAR**2-SQRT(2.0)/2.0*CAR) 

B2 = (CD45*BPR-B1/2.0)*SQRTC2.0) 

CL = A1*SA*CA+A2*C1.0-2.0*SA**2) 

CD = B1*SA**2+B2*CA 

GOTO 1000 

320 CONTINUE 

C 

C REGION 4 -- 45 DEG TO 90 DEG 

C 

C 

C 

CL = C2.0*CL45*SA*CA - CL90*C1-2.0*SA**2» * BPR 

CD = CCD90*SA**2 + C2.0*CD45-C090)/SQRTC2.0)*CA) * BPR 

1000 CONTINUE 

RETURN 

END 

C-138 

00001050 

00001060 

00001070 

00001080 

00001090 

00001100 

00001110 

00001120 

00001130 

00001140 

00001150 

00001160 

00001170 

00001180 

00001190 

00001200 

00001210 

00001220 

00001230 

00001240 

00001250 

00001260 

00001270 

00001280 

00001290 

00001300 

00001310 

00001320 

00001330 

00001340 

00001350 

00001360 

00001370 

00001380 

00001390 

00001400 

00001410 

00001420 

00001430 
Source FiLe: LSWT08.FOR Program Unit: AEROPF 

C ******************************************************************00000010 

C 00000020 

C LSWT08(AEROPF) 00000030 

C 00000040 

C CALCULATES ELEMENT, BLADE, AND ROTOR PERFORMANCE 00000050 

C 00000060 

C ******************************************************************00000070 

C 00000080 

SUBROUTINE AEROPF(ITBLD,IPSIR,ISCYL) 00000090 

C 00000100 

COMMONI BELOAD I DFX(20), DFXI<2Q) , DFXP(20), 00000110 

1 DFZC2Q) , DFZI (2Q), DFZP(2Q) , 00000120 

2 DQ(2Q), DQI(20) , DQP(20), 00000130 

3 DPM(2Q) 00000140 

COMMONI BLDELE I XCLE( 2Q), YCG(20), RBE(2Q) , 00000150 

1 DBES(20), CLAMLE(20), CLAMQC (20), 00000160 

2 CHDCGL(20), BETAL<2Q) , A FTWF(20), 00000170 

3 JTAB(20,2), TOC(20), RE(2Q), 00000180 

4 CL T<2Q), CDT<2Q) , CMT<2Q) , 00000190 

5 CDS(2Q) 00000200 

COMMONI BLLOAD I CTRB, CQRB, CTWB, CPWB, BTHRST, BTORQ, 00000210 

1 BTORQI, BTORQP, BPWR, BPWRP, BPWRI, BPMOMT 00000220 

COMMONI CALPHA I ALPHAG (20) , ALPHAE(20), ALPHAW(20) , 00000230 

1 ALPHAN(20), ALPHA I (2Q) , AZLLC(2Q), 00000240 

2 TWSTCG(2Q) 00000250 

COMMONI CONSTS I PI, RPD 00000260 

COMMONI CTCON I CTRIN, CTROUT, CTRUPD 00000270 

COMMONI CVLCTY I VFS1(5,20), VFS2(5,2Q) , VFS3(5,2Q) , 00000280 

1 VFS1M(20), VFS2M( 20), VFS3M(20), 00000290 

2 VI1 (5,2Q), VI2(5,2Q) , VI3(5,2Q) , 00000300 

3 VI1M(20), VI2M(20), VI3M(20), 00000310 

4 VREL(20) , VIND(2Q) , QREL(20) 00000320 

COMMONI CWIND I ALPS1, ALPS2, HO, VWO, E, 00000330 

1 ITSTYP, TSTAB(100), NXTS, NYTS, 00000340 

2 TO, TP, TPO, TPS, TK, 00000350 

3 AB(5,2), AT<5,2) 00000360 

COMMONI IFLAGS I ISTDY, IWFLAG, LSFLAG, IRFLAG 00000370 

COMMONI PARMS I RADIUS, OMEGA, OMEGAR, RHO, AMU 00000380 

COMMONI PNLNDX I MP, NP, NPANEL, 00000390 

1 MP1, NP1, NPNLSQ, 00000400 

2 NSGMNT, J GLIM(4,2), J CGLIM(4,2), 00000410 

3 NPS(4), NBLDS 00000420 

COMMONI RTLOAD I CTRR, CQRR, CTWR, CPWR, RTHRST, RTORQ, 00000430 

1 RTORQP, RTORQI, RPWR, RPWRP, RPWRI, CTR, 00000440 

2 CQR, CTW, CPW, THRST, TORQ, TORQP, 00000450 

3 TORQI, PWR, PWRP, PWRI, RPMOMT, PMOMT 00000460 

COMMONI UNITS I IOU1, IOU5, IOU6, IOU7, IOU8, 00000470 

1 IOU10, IOU11, IOU12, IOU13 00000480 

C 00000490 

C ******************************************************************00000500 

C 00000510 

IF(ISTDY.EQ.O) GO TO 20 00000520 

C-139 
Source FiLe: LSWT08.FOR 

IF(ISCYL.EQ.1) GO TO 20 

C 

C RESET IF ENTRY FOR SAME BLADE AS PREVIOUS ENTRY 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

IF(ITBLD.NE.NBLDS) GO TO 10 

IM1 = IPSIR - 1 

IF(IM1.EQ.0) IM1 = 1 

THRST = ( THRST * IPSIR - RTHRST ) / IM1 

TORQ = (TORQ * IPSIR - RTORQ ) I IM1 

TORQP = ( TOPQP * IPSIR - RTORQP ) I IM1 

TORQI = ( TORQI * IPSIR - RTORQI ) I IM1 

PWR = (PWR * IPSIR - RPWR ) I IM1 

PWRP = ( PWRP * IPSIR - RPWRP ) / IM1 

PWRI = ( PWRI * IPSIR - RPWRI ) / IM1 

PMOMT = ( PMOMT * IPSIR - RPMOMT ) I IM1 

CTR = ( CTR * IPSIR - CTRR ) I IM1 

CQR = ( CQR * IPSIR - CQRR ) I IM1 

CTW = ( CTW * IPSIR - CTWR ) I IM1 

CPW = ( CPW * IPSIR - CPWR ) I IM1 

10 CONTINUE 

RTHRST = RTHRST - BTHRST 

RTORQ = RTORQ - BTORQ 

RTORQP = RTORQP - BTORQP 

RTORQI = RTORQI - BTORQI 

RPWR = RPWR - BPWR 

RPWRP = RPWRP - BPWRP 

RPWRI = RPWRI - BPWRI 

RPMOMT = RPMOMT - BPMOMT 

CTRR = CTRR - CTRB 

CQRR = CQRR - CQRB 

CTWR = CTWR - CTWB 

CPWR = CPWR - CPWB 

20 CONTINUE 

C INITIALIZE BLADE PERFORMANCE FOR SUMMING 

C 

BTHRST = 0.0 

BTORQ = 0.0 

BTORQP = 0.0 

BTORQI = 0.0 

BPMOMT = 0.0 

C-140 

Program Unit: AEROPF 

00000530 

00000540 

00000550 

00000560 

00000570 

00000580 

00000590 

00000600 

00000610 

00000620 

00000630 

00000640 

00000650 

00000660 

00000670 

00000680 

00000690 

00000700 

00000710 

00000720 

00000730 

00000740 

00000750 

00000760 

00000770 

00000780 

00000790 

00000800 

00000810 

00000820 

00000830 

00000840 

00000850 

00000860 

00000870 

00000880 

00000890 

00000900 

00000910 

00000920 

00000930 

00000940 

00000950 

00000960 

00000970 

00000980 

00000990 

00001000 

00001010 

00001020 

00001030 

00001040 
Source FiLe: LSWT08.FOR Program Unit: AEROPF 

C 00001050 

C ------------------------------ 00001060 

C LOOP 100 SWEEPS BLADE ELEMENTS 00001070 

C ------------------------------ 00001080 

C 00001090 

DO 100 J = 1,NP 00001100 

C 00001110 

QS = QREL(J)*CHDCGL(J)*DBES(J)*RADIUS**2 00001120 

QSC = QS*CHDCGL(J)*RADIUS 00001130 

C 00001140 

C ELEMENT FORCES (IN ELEMENT AXIS SYSTEM) 00001150 

C 00001160 

DFXI(J) = (-CLT(J) * SIN(ALPHAN(J» 00001170 

1 + CDS(J) * COS(ALPHAG(J)-AZLLC(J») * QS 00001180 

DFXP(J) = CDT(J) * COS(ALPHAN(J» * QS 00001190 

DFX(J) = DFXP(J) + DFXI(J) 00001200 

C 00001210 

DFZI(J) = (CLT(J) * COS(ALPHAN(J» 00001220 

1 - CDS(J) * SIN(ALPHAG(J)-AZLLC(J») * QS 00001230 

DFZI(J) = DFZI(J) * COS(BETAL(J» 00001240 

DFZP(J) = CDT(J) * SIN(ALPHAN(J» * QS 00001250 

DFZP(J) = DFZP(J) * COS(BETAL(J» 00001260 

DFZ(J) = DFZP(J) + DFZI(J) 00001270 

C 00001280 

C PITCHING MOMENT DUE TO 20 AIRFOIL COEFFICIENT 00001290 

C 00001300 

DPM(J) = CMT(J) * QSC 00001310 

C 00001320 

C ELEMENT TORQUE - 'RBE' IS RADIUS OF ELEMENT WITH CONING AND STEADY00001330 

C FLAPPING, THUS TORQUE IS TIP PATH PLANE TORQUE. ACTUAL SHAFT 00001340 

C TORQUE DEPENDS ON TYPE OF JOINT BETWEEN ROTOR AND SHAFT. 00001350 

C 00001360 

DQP(J) = DFXP(J) * RBE(J) * RADIUS 00001370 

DQI(J) = DFXI(J) * RBE(J) * RADIUS 00001380 

DQ(J) = DQP(J) + DQI(J) 00001390 

C 00001400 

C BLADE FORCES AND TORQUES 00001410 

C 00001420 

BTHRST = BTHRST + DFZ(J) 00001430 

BTORQ = BTORQ + DQ(J) 00001440 

BTORQP = BTORQP + DQP(J) 00001450 

BTORQI = BTORQI + DQI(J) 00001460 

BPMOMT = BPMOMT + DPM(J) 00001470 

C 00001480 

C CHANGE ELEMENT FORCES AND TORQUES TO LOADINGS 00001490 

C 00001500 

FAC = DBES(J) I RADIUS 00001510 

DFX(J) = DFX(J) I FAC 00001520 

DFXI(J) = DFXI(J) I FAC 00001530 

DFXP(J) = DFXP(J) I FAC 00001540 

DFZ(J) = DFZ(J) I FAC 00001550 

DFZI(J) = DFZI(J) I FAC 00001560 

C-141 
Source FiLe: LSWT08.FOR Program Unit: AEROPF 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

100 

DFZP(J) = DFZP(J) / FAC 

DQP(J) = DQP(J) / FAC 

DQI(J) = DQI(J) / FAC 

DQ (J) = DQ(J) / FAC 

DPM(J) = DPM(J) / FAC 

CONTINUE 

BLADE FORCES, TORQUES, AND POWERS 

BLADE COEFFICIENTS 

CTRS = BTHRST / (RHO * PI * RADIUS**2 * OMEGAR**2) 

CQRB = BTORQ / (RHO * PI * RADIUS**3 * OMEGAR**2) 

CTWS = BTHRST / (RHO/2.0 * PI * RADIUS**2 * VWO**2 ) 

CPWB = BTORQ / (RHO/2.0 * PI * RADIUS**2 * VWO**3 ) * OMEGA 

BLADE POWER IN KW 

FAC = OMEGA / 737.562 

BPWR = BTORQ * FAC 

BPWRP = BTORQP * FAC 

BPWRI = BTORQI * FAC 

ROTOR FORCES, TORQUES, AND POWERS 

IF(ITBLD.GT.1) GO TO 200 

INITIALIZE ROTOR TOTALS FOR THIS AZIMUTH AT ENTRY FOR 

FIRST BLADE 

RTHRST = 0.0 

RTORQ = 0.0 

RTORQP = 0.0 

RTORQI = 0.0 

RPWR = 0.0 

RPWRP = 0.0 

RPWRI = 0.0 

RPMOMT = 0.0 

CTRR = 0.0 

CQRR = 0.0 

CTWR = 0.0 

CPWR = 0.0 

IF(IPSIR.GT.1) GO TO 200 

C-142 

00001570 

00001580 

00001590 

00001600 

00001610 

00001620 

00001630 

00001640 

00001650 

00001660 

00001670 

00001680 

00001690 

00001700 

00001710 

00001720 

00001730 

00001740 

00001750 

00001760 

00001770 

00001780 

00001790 

00001800 

00001810 

00001820 

00001830 

00001840 

00001850 

00001860 

00001870 

00001880 

00001890 

00001900 

00001910 

00001920 

00001930 

00001940 

00001950 

00001960 

00001970 

00001980 

00001990 

00002000 

00002010 

00002020 

00002030 

00002040 

00002050 

00002060 

00002070 

00002080 
Source FiLe: LSWT08.FOR 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

200 

IF FIRST AZIMUTH THEN INITIALIZE DISK AVERAGES 

THRST = 0.0 

TORQ = 0.0 

TORQP = 0.0 

TORQI = 0.0 

PMOMT = 0.0 

PWR = 0.0 

PWRP = 0.0 

PWRI = 0.0 

CTR = 0.0 

CQR = 0.0 

CTW = 0.0 

CPW = 0.0 

CONTINUE 

SUM THIS BLADES CONTIBUTION TO TOTALS FOR THIS AZIMUTH 

RTHRST = RTHRST + BTHRST 

RTORQ = RTORQ + BTORQ 

RTORQP = RTORQP + BTORQP 

RTORQI = RTORQI + BTORQI 

RPWR = RPWR + BPWR 

RPWRP = RPWRP + BPWRP 

RPWRI = RPWRI + BPWRI 

RPMOMT = RPMOMT + BPMOMT 

CTRR = CTRR + CTRB 

CQRR = CQRR + CQRB 

CTWR = CTWR + CTWB 

CPWR = CPWR + CPWB 

IFCISTDY.NE.O) GO TO 300 

DISK TOTALS FOR STEADY CASE 

RTHRST = RTHRST * NBLDS 

RTORQ = RTORQ * NBLDS 

RTORQP = RTORQP * NBLDS 

RTORQI = RTORQI * NBLDS 

RPWR = RPWR * NBLDS 

RPWRP = RPWRP * NBLDS 

RPWRI = RPWRI * NBLDS 

C-143 

Program Unit: AEROPF 

00002090 

00002100 

00002110 

00002120 

00002130 

00002140 

00002150 

00002160 

00002170 

00002180 

00002190 

00002200 

00002210 

00002220 

00002230 

00002240 

00002250 

00002260 

00002270 

00002280 

00002290 

00002300 

00002310 

00002320 

00002330 

00002340 

00002350 

00002360 

00002370 

00002380 

00002390 

00002400 

00002410 

00002420 

00002430 

00002440 

00002450 

00002460 

00002470 

00002480 

00002490 

00002500 

00002510 

00002520 

00002530 

00002540 

00002550 

00002560 

00002570 

00002580 

00002590 

00002600 
Source FiLe: LSWT08.FOR 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

C 

PMOMT = PMOMT * NBLDS 

CTRR = CTRR * NBLDS 

CQRR = CQRR * NBLDS 

CTWR = CTWR * NBLDS 

CPWR = CPWR * NBLDS 

GO TO 400 

300 CONTINUE 

IF TOTALS AVAILABLE FOR THIS AZIMUTH THEN UPDATE 

DISK AVERAGES 

IF(ITBLD.NE.NBLDS) GO TO 400 

IM1 = IPSIR - 1 

THRST = ( THRST * IM1 + RTHRST ) I IPSIR 

TORQ = ( TORQ * IM1 + RTORQ ) I IPSIR 

TORQP = ( TOPQP * IM1 + RTORQP ) / IPSIR 

TORQI = ( TORQI * IM1 + RTORQI ) I IPSIR 

PWR = ( PWR * IM1 + RPWR ) / IPSIR 

PWRP = ( PWRP * IM1 + RPWRP ) I IPSIR 

PWRI = ( PWRI * IM1 + RPWRI ) I IPSIR 

PMOMT = ( PMOMT * IM1 + RPMOMT ) / IPSIR 

CTR = ( CTR * IM1 + CTRR ) I IPSIR 

CQR = ( CQR * IM1 + CQRR ) / IPSIR 

CTW = ( CTW * IM1 + CTWR ) I IPSIR 

CPW = ( CPW * IM1 + CPWR ) I IPSIR 

400 CONTINUE 

C 

C UPDATE FOR WAKE PARAMETER CALCULATION 

C 

C 

IF(ITBLD.EQ.NBLDS) CTROUT = CTR 

IF(ISTDY.EQ.O) CTROUT = CTRR 

RETURN 

END 

C-144 

Program Unit: AEROPF 

00002610 

00002620 

00002630 

00002640 

00002650 

00002660 

00002670 

00002680 

00002690 

00002'700 

00002710 

00002720 

00002730 

00002740 

00002750 

00002760 

00002770 

00002780 

00002790 

00002800 

00002310 

00002820 

00002830 

00002840 

00002850 

00002860 

00002870 

00002880 

00002890 

00002900 

00002910 

00002920 

00002930 

00002940 

00002950 

00002960 

00002970 

00002980 

00002990 

00003000 

00003010 

00003020 

00003030 
Source FiLe: LSWT.ASM Program Unit: SYSTIM 

; ****************************************************************** 

; SUBROUTINE SYSTIM 

· , 

· , 

; 

· , 

· , 

· , 

; 

· , 

· , 

· , 

· , 

; 

· , 

· , 

· , 

ASSEMBLER INTERFACE TO SYSTEM CLOCK FOR MS FORTRAN??, VER.3.2 

UNDER MS-DOS 2.X 

READS THE SYSTEM CLOCK AND RETURNS HOURS, 

MINUTES, SECONDS, AND HUNDRETHS OF SECONDS 

USAGE: CALL SYSTIM(H,M,S,D) 

ARGUMENTS ARE ALL 

H = HOUR 

M = MINUTE 

S = SECOND 

o = 1/100 SECOND 

INTEGER*4 

RANGE 0-59 

0-59 

0-59 

0-99 

; ****************************************************************** 

· , FRAME STRUC 

SAVEBP OW ? 

SAVERET DO ? 

0 DO ? 

S DO ? 

M DO ? 

H DO ? 

FRAME ENDS 

· , DATA SEGMENT PUBLIC 'DATA' 

DATA ENDS 

· , CODE SEGMENT 'CODE' 

DGROUP GROUP DATA 

ASSUME CS:CODE,DS:DGROUP,ES:DGROUP,SS:DGROUP 

· , 

SYSTIM PROC FAR 

PUBLIC SYSTIM 

· , PUSH BP ;SAVE FRAMEPOINTER ON STACK 

MOV BP,SP 

· , MOV AH,2CH ;DOS SERVICE TO GET TIME 

INT 21H 

· , LES BX,[BPJ+H ;HOURS 

MOV AH,O 

MOV AL,CH 

MOV ES:[BXJ,AX 

MOV WORD PTR ES:[BX+2J,0 

; 

LES BX,[BPJ+M ;MINUTES 

MOV AL,CL 

C-145 
Source FiLe: LSWT.ASM Program Unit: SYSTIM 

MOV ES:[BXJ,AX 

MOV WORD PTR ES:[BX+2J,O 

; 

LES BX,[BPJ+S ;SECONDS 

MOV AL,DH 

MOV ES:[BXJ,AX 

MOV WORD PTR ES:[BX+2J,O 

; 

LES BX,[BPJ+D ;HUNDRETHS 

MOV AL,DL 

MOV ES:[BXJ,AX 

MOV WORD PTR ES:[BX+2J,O 

; 

MOV SP,BP 

POP BP ;RESTORE THE FRAME POINTER 

RET 16 

; 

SYSTIM ENDP 

; 

CODE ENDS 

; 

END 

C-146 
APPENDIX D 

SAMPLE INPUT AND OUTPUT FILE LISTINGS 
COMPUTATIONAL METHODOLOGY ASSOCIATES *** LSWT VERSION 1.00 RELEASED MAY 1986 *** SERI IL-5-05105 --------------------------------------------------------------------------------------------------------------------------

RECORD IMAGE OF INPUT FILE --------------------------

MOD-O (AILERON) *** CMA STALL MODEL *** 05 

3.0 0.0 2.0 0.0 2.0 2.0 0.0 

1.0 

0.0 0.0 0.0 

0.0 0.0 0.0 0.0 

0.0 20.60 1.0 1.0 

10.0 1.0 1.0 1.0 

0.0 1.0 1.0 4000.0 

2.0 2.0 4.0 63.9592 

2.0 12.0 0.0 180.0 30.0 1.0 

0.0 0.0 1.0 16.0 17.0 19.0 

3.0 3.0 0.0 3.3333 13.3332 

-.9170 0.0 0.0 3.0 0.0 0.0 

2.0 

3.3333 13.3332 

1.8340 5.0 

2.0 

0.0 13.3332 

0.0 0.0 

2.0 

0.0 13.3332 

0 0.0 0.0 I 1.0 ...... 110.0 0.0 13.3332 

3.0 1.0 0.0 13.3332 26.0430 

-.9170 0.0 0.0 3.0 0.0 0.0 

2.0 

13.3332 26.0430 

5.0 5.0 

2.0 

13.3332 26.0430 

0.0 0.0 

2.0 

13.3332 26.0430 

0.0 0.0 

1.0 

110.0 13.3332 26.0430 

8.0 4.0 0.0 26.0430 62.4172 

-.9170 0.0 0.0 3.0 0.0 0.0 

5.0 

26.0430 40.0815 42.9588 42.9982 62.4172 

5.0 4.1667 3.9173 3.9402 2.1883 

2.0 

26.0430 62.4172 

0.0 0.0 

2.0 

26.0430 62.4172 

0.0 0.0 

1.0 

110.0 26.0430 62.4172 

1.0 1.0 0.0 62.4172 63.9592 

-.9170 0.0 0.0 3.0 0.0 0.0 

2.0 

62.4172 63.9592 

2.1883 1.2254 

2.0 

62.4172 63.9592 

0.0 0.0 

2.0 

62.4172 63.9592 

0.0 0.3043 

1.0 

110.0 62.4172 63.9592 

1.0 3.0 
o 

I 

N 

110.0 

1.0 

0.24 

-4.0 

-2.0 

0.0 

2.0 

4.0 

6.0 

8.0 

9.0 

10.0 

11.0 

12.0 

13.0 

14.0 

-4.0 

-2.0 

0.0 

2.0 

4.0 

6.0 

8.0 

9.0 

10.0 

11.0 

12.0 

13.0 

14.0 

-180.0 

180.0 

NACA 23024 *** ABBOTT & VON DOENHOFF *** CMA STALL MODEL 

13.0 1.0 13.0 1.0 2.0 

32.0 1.0 1.0 0.0 2.0 0.5960 

3.0000 

-.3000 

-.1100 

0.0950 

0.2800 

0.4400 

0.6250 

0.8100 

0.8900 

0.9750 

1.0500 

1.1250 

1.1800 

1.1950 

3.0000 

0.0084 

0.0082 

0.0084 

0.0088 

0.0096 

0.0106 

0.0121 

0.0134 

0.0153 

0.0161 

0.0163 

0.0183 

0.0250 

0.0000 

0.0 

0.0 
COMPUTATIONAL METHODOLOGY ASSOCIATES *** LSWT VERSION 1.00 RELEASED MAY 1986 *** SERI IL-5-05105 --------------------------------------------------------------------------------------------------------------------------

MOD-O (AILERON) *** CMA STALL MODEL *** 05 

REFERENCE BLADE SURFACE PANEL COORDINATES -----------------------------------------

I,J 2 3 4 5 6 7 8 9 10 11 

1 X -.014337 -.014337 -.014337 -.014337 -.014337 -.014337 -.014337 -.014337 -.014337 -.014337 -.014337 

Y .052045 .072963 .130112 .208178 .208178 .274327 .340475 .406623 .406623 .517421 .623961 

Z .002728 .003824 .006819 .010910 .010910 .014377 .017844 .021310 .021310 .027117 .032700 

2 X -.005940 -.003998 .001308 .008557 .008557 .008557 .008557 .008557 .008557 .006628 .004773 Y .052052 .072971 .130125 .208198 .208198 .274346 .340494 .406643 .406643 .517439 .623977 

Z .002592 .003657 .006566 .010540 .010540 .014007 .017473 .020940 .020940 .026778 .032391 

3 X .014334 .020964 .039080 .063827 .063827 .063827 .063827 .063827 .063827 .057242 .050911 Y .052069 .072992 .130157 .208245 .208245 .274393 .340541 .406690 .406690 .517482 .624016 

Z .002264 .003253 .005955 .009646 .009646 .013113 .016580 .020046 .020046 .025959 .031645 

I,J 12 13 14 15 16 17 18 19 

1 X -.014337 -.014337 -.014337 -.014337 -.014337 -.014337 -.014337 -.009580 

Y .722148 .808210 .878840 .931322 .963641 .974553 .974553 .998634 

Z .037846 .042357 .046058 .048809 .050502 .051074 .051074 .052259 

a 2 X .002360 .000083 -.001785 -.003174 -.004029 -.004318 -.004318 -.003969 I Y .722162 .808223 .878851 .931332 .963649 .974562 .974562 .998638 

w Z .037576 .042123 .045855 .048628 .050336 .050912 .050912 .052168 

3 X .042671 .034898 .028518 .023777 .020858 .019872 .019872 .009576 

Y .722197 .808252 .878876 .931355 .963671 .974582 .974582 .998650 

Z .036924 .041560 .045365 .048192 .049933 .050521 .050521 .051949 
COMPUTATIONAL METHODOLOGY ASSOCIATES *** LSWT VERSION 1.00 RELEASED MAY 1986 *** SERI IL-5-05105 

MOD-O (AILERON) *** CMA STALL MODEL *** 05 

REFERENCE BLADE COLLOCATION POINT COORDINATES ---------------------------------------------

I,J 2 3 4 5 6 7 8 9 10 

X -.011090 -.009834 -.007659 -.006402 -.006402 -.006402 -.006737 -.007392 -.008100 -.008945 

Y .062506 .101541 .169151 .241259 .307408 .373556 .462029 .570697 .673060 .765184 

Z .003223 .005249 .008757 .012515 .015982 .019449 .024091 .029796 .035172 .040014 

2 X .004098 .011229 .023581 .030712 .030712 .030712 .028814 .025092 .021075 .016279 

Y .062519 .101559 .169177 .241291 .307439 .373587 .46205.9 .570724 .673085 .765205 

Z .002978 .004908 .008251 .011915 .015382 .018848 .023516 .029271 .034701 .039606 

I,J 11 12 13 14 15 

X -.009663 -.010228 -.010616 -.010815 -.009250 

Y .843529 .905085 .947485 .969100 .986596 

Z .044132 .047367 .049595 .050731 .051623 

2 X .012200 .008996 .006788 .005663 .003420 

Y .843548 .905101 .947499 .969114 .986607 

Z .043778 .047056 .049314 .050465 .051418 

0 

I 

oj::> 
o 

I 

U"I 

COMPUTATIONAL METHODOLOGY ASSOCIATES *** LSWT VERSION 1.00 RELEASED MAY 1986 *** SERI IL-5-05105 

POINT 8: MOD-O (AILERON) *** CMA STALL MODEL *** 05 

ROTOR PITCH (DEG) .0000 

WIND SPEED (M/SEC) 10.0000 

ROTOR AZIMUTH (DEG) .0000 

WORKING STATE AND WAKE RATE PARAMETERS 

WINDMILL BRAKE STATE 

REFERRED VELOCITIES 

AXIAL ONSET 4.0~452E+00 INDUCED -2.63803E-01 

REFERENCE WAKE PARAMETERS

CTRW 6.87899E-6 3 

AKZO -8.29397E-02 

ALAMO 3.31759E-01 

AKRO -4.00000E+00 

MODIFIED WAKE 

AKZW 

AKZI 

AKZ 

AKR 

A 

AKB 

PARAMETERS, 2.37786E-01 

-1.26566E-02 

2.25129E-01 

1.47364E+00 

1.22000E+00 

2.71438E+00 
COMPUTATIONAL METHODOLOGY ASSOCIATES *** LSWT VERSION 1.00 RELEASED MAY 1986 *** SERI IL-5-05105 

POINT 8: MOD-O (AILERON) *** CMA STALL MODEL *** 05 

ROTOR PITCH (DEG) .0000 

WIND SPEED (M/SEC) 10.0000 

ROTOR AZIMUTH (DEG) .0000 

BLADE 1 ELEMENT CHARACTERISTICS 

GEOMETRY 

ELEMENT NUMBER 1 2 3 4 5 6 7 8 

ELE CENTER STATION 6.250E-02 1.015E-01 1.691 E-01 2.413E-01 3.074E-01 3.735E-01 4.620E-01 5.707E-01 

CHORD FT 2.046E+00 2.838E+00 4.209E+00 5.000E+00 5.000E+00 5.000E+00 4.789E+00 4.376E+00 

ELEMENT SPAN FT 1.340E+00 3.660E+00 5.000E+00 4.237E+00 4.237E+00 4.237E+00 7.096E+00 6.824E+00 

LEADING EDGE SWEEP DEG .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO 

AERODYNAMIC SWEEP DEG 3.554E+00 2.603E+00 1.269E+00 2.179E+00 1.913E+00 1.679E+00 2.003E+00 1.531E+00 

ANGLES OF ATTACK 

GEOMETRIC PITCH DEG .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO 

ZERO LIFT LINE DEG -9. 277E-01 -9.277E-01 -9.277E-01 -9.277E-01 -9.277E-01 -9.277E-01 -9.277E-01 -9.277E-01 

EF FECTIVE ANGLE DEG 6.586E+01 6.082E+01 5.101 E+01 4.199E+01 3.516E+01 3.034E+01 2.557E+01 2.122E+01 

WIND ANGLE DEG 7.526E+01 6.688E+01 5.465E+01 4.470E+01 3.784E+01 3.259E+01 2.732E+01 2.268E+01 

INFLOW ANGLE DEG 7.447E+01 6.679E+01 5.461E+01 4.434E+01 3.682E+01 3.159E+01 2.643E+01 2.178E+01 

INDUCED ANGLE DEG 7.318E-01 4.129E+00 1.929E+00 3.002E-01 -7.8S0E-01 -7.830E-01 -7.27SE-01 -7.892E-01 

0 VELOCITIES I 

0'\ INDUCED VELOCITY FT/SEC S.129E-01 S.107E-01 6.062E-01 6.092E-01 7.966E-01 8.713E-01 8.SSOE-01 8.621E-01 

RELATIVE VELOCITY FT ISEC 3.417E+01 3.686E+01 4.136E+01 4.743E+01 S.402E+01 6.1S6E+01 7.217E+01 8.S74E+01 

REYNOLDS NUMBER 4.471 E+OS 6.688E+OS 1.113E+06 1.S16E+06 1.727E+06 1.968E+06 2.210E+06 2.399E+06 RELATIVE Q PSF 1.388E+00 1.61SE+00 2.034E+00 2.675E+00 3.469E+00 4.S06E+00 6.192E+00 8. 740E+00 

AERODYNAMIC COEFFICIENTS 

ELE LIFT COEF 4.SS7E-01 S.162E-01 S.864E-01 7.029E-01 8.S76E-01 9.12SE-01 9.476E-01 1.004E+00 

ELE DRAG COEF 9.72SE-01 8.893E-01 7.006E-01 S.8S4E-01 S.671E-01 4.402E-01 2.S72E-01 1.349E-01 

ELE MOMENT COEF .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO 

FORCE LOADING 

ELE X FORCE LBS/FT -1.786E+03 -2.324E+03 -2.S31E+03 -3.968E+03 -4.2S9E+03 -9.490E+03 -2.323E+04 -3.871E+04 

ELE IND X FORCE LBS/FT -4.811E+03 -8.896E+03 -1.674E+04 -2.688E+04 -3.647E+04 -4.40SE+04 -S.117E+04 -S.831E+04 

ELE PRO X FORCE LBS/FT 3.025E+03 6.S71E+03 1.421E+04 2.291E+04 3.221E+04 3.4S6E+04 2. 794E+04 1.960E+04 

ELE Z FORCE LBS/FT 1.228E+04 1.911E+04 3.18SE+04 4.982E+04 7.273E+04 9.277E+04 1.167E+OS 1.S3SE+OS 

ELE IND Z FORCE LBS/FT 1.411E+03 3.809E+03 1.188E+04 2.747E+04 4.864E+04 7.1S4E+04 1.028E+OS 1.4S7E+OS 

ELE PRO Z FORCE LBS/FT 1.087E+04 1.S30E+04 1.997E+04 2.236E+04 2.408E+04 2.122E+04 1.387E+04 7.824E+03 

TORQUE LOADING 

ELE PRO TORQUE FT-LBS/FT 1.209E+04 4. 267E+04 1.S37E+OS 3.53SE+OS 6.333E+OS 8.258E+05 8.2S7E+OS 7.155E+05 

ELE IND TORQUE FT-LBS/FT -1.923E+04 -5.777E+04 -1.811E+05 -4.147E+05 -7.170E+05 -1.052E+06 -1.512E+06 -2.128E+06 

ELE TORQUE FT-LBS/FT -7.141E+03 -1.510E+04 -2.738E+04 -6.122E+04 -8.373E+04 -2.267E+05 -6.865E+05 -1.413E+06 

PITCHING MOMENT LOADING (20) 

ELE PITCH MOMENT FT-LBS/FT .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO 

LIFT SLOPE CONVERGENCE 

INPUT LIFT SLOPE IRAD 4.992E-01 5.911E-01 7.538E-01 1.056E+00 1.490E+00 1.803E+00 2.194E+00 2.775E+00 CL/ALPHAE IRAD 4.993E-01 5.912E-01 7.545E-01 1.051E+00 1.489E+00 1.806E+00 2.196E+00 2.774E+00 

CIRCULATION PARAMETERS 

CIRC SHAPE PARM 8. 260E-01 8.243E-01 8. 284E-01 8.383E-01 8.532E-01 8.623E-01 8.743E-01 8.926E-01 BOUND CIRCULATION FT**2/SEC 1.591 E+01 2.697E+01 5.098E+01 8.375E+01 1.158E+02 1.401 E+02 1.635E+02 1.884E+02 
Cl 

I 

'-J 

Ulfll'lJI A I IllflAI I'll IlIllI,l)1 Ill, f A~, ',1)1. I A I I', ... I :,W I VI 1",1 III I 1.1)0 III I U ',I I, MA ( 1'11:1, 

p(J/ln 1\: MOIJ-O (AII.UlOIO ... CMA ~.IAI.I. MOOI"I ... 11'. R'JlOR f'llell (Olf;) .f)OfJO WINO ~r[rr, (Mr;lf;) 10.IHII)!) ROTOR AlIMIJTIl (DEI,) .0000 

BLADE 1 UFMrtlT CltATlAtrlRI',IIC; 

GEOMI.IRY 

ELEMFlH IlllMnrR 'I HI 11 1? 

(1.[ CENTER ~ IA TlOIl (,.1311-1)1 (.(,',~I -H' ~.Id)1 -w 'I. O~ lI>Hl CHORO FT ~. 'I ~IJI .flO ~ .. ~'J~' .. JrJ ~. 'II.~I • HI ~.~'II)I • I I 

(LEMEtlT ~PAN FT 6.711'/1.00 ~.~PI 'flO I •. :.?t.I'f)I) ~. ~"1£ HlQ LHDIW. EOr;[ ~wrf:p orf. .Oflfll .flO .onfll. '00 .1)001'00 1.'IIr,r:-IU 

AERrJDYljAl'lrC ~w[rp ore. 1 .I,'Jf,[ .IlO 1.?>f.1 '00 1.0;>'/1 .I)!) I:.nll-Ul 

AIlr,I.[~ OF A TTAcr 

GIOMUR II. PilCH 0[1. .f)OM '(1) .1)01)1 .(11) .QI)I)I .Im .1)oor'l)l) 

zr:po LIFT LHlf. orr, -'I.UII-Ol -'I.nfl-ol -'I.llfl-Ol -'I.nll-Hl 

EFFEe TlVE AIlr;I.E OU. 1.l:l l

,HH1 1. :""'1 'f) 1 ,.1,1.1\1. '1)1 1. ~I,I,f. 'Ul WIIIO AIlr,I.E Off, 1. ,,~fll.l Jl 1.0'" .fJl 1.jl:;1 ")1 1.1."0/ .I)l 

IIIFLOW AIlr,U orr, 1.1:~1F+Ol l.1.?I,1 ';Jl 1 .1,1. ~I 1f)1 1. ~'.~I .Ill 

IllDlJCED AIHiLE ~EG -'J.1~~[-(Jl -'I.~~~f -01 -1.0/.111 '00 -1.1',81.HI I 

VELOti TI E~. 

1Il0'Jf.FO VFL fJU rt FT 1'.Fr. ".141[-IJ1 '1 .. ~I/~ -t)1 '1.1.1: /I -01 '1.'Pp,f-f)1 

Pl'LA T IVf. VELOU Tf FT/:;H 'I. iI'I(JI"Jl 1 • 1 f)'/1 .fJI 1. ?111 'f);> 1.;:r'I~1 .(J~ 

RE1f11IL~'. PlIJI'IIJEk ~ .. 4P'~[.O~ ;>.I,1I)1·fJf, ~ .. ,~ '.,. "fJ'~ 2.W'Hg~ RELATIVE Q P~F 1.JI.~[.rJl 1 .. /,.11 ~f. to 1 1.1/,'/1 .• IJl 1. ',', II Ij 

AEROD'fIlAMrC (OU FlU EIH~ 

EI.E LIFT C'JEF 1.0nHOI) 1.11,1,1 .0fJ 1.111f1r·f)fJ 1.1'. If "If) 

ELE OP~I, f.lJ(F 7. lP,~f.-IJi' ~ .. ;:rJ'Jr-(JI I.IIJIII -fJ? 1. n1l-fJ/ 

ELE MOMElH (OEf .1)f)I)HOIJ • f)fIIJI .• IIIJ • (JlJOI .• rw .IJlHJI. ./jIJ 

F'JPCE L'lA~rll(, 

ELE x fOPCE UJ'.IFT -~ .1)'11,[ .04 -~. 7"f,r .r14 -'.",1J71f tfJl .. -) .. ~ ~/" tfJ/,. 

EL[ 1110 t fOP~E LIl'.1F T -II. ~/JP,F. "rJ4 -II .. '.1 If), "'J4 -'I. ~i"Jt to')/, -~ .. ~~~'JJ tfJ/, 

ELE PRIJ X fORCl Lll~1F T l.U4[.fJ4 1.~VJF .,n~ 4 .. 4~/Jr "f)~ J .. ~~~,f.. .,().~ 

ELE Z fIJPr.E LI,'./FT , .'JI,'n:+fj~ (;'. ~'~?i iofJ~ 2 .. 4 ~'f +n';. t~nl,")~ 

Elf: It/O l fOPCE L/l~IFT 1. ',nor '(J~ l.i'~~,~ ior)~ 1.41'1/ ")'; t .. ~~, ~f iof)~ 

ELE PPO Z FIJPr.E LfJ~.1F T 4 .. 2t;'jl·r;~ i!. 1(J~tioO~ 1. 11'J< .• IJ ~ ~.~ ~/4l·fJ/. 

TIJPQIJE LOACI IIII, 

ELE PPO TfJP<)IJE FT -Lll'd F T ~. 4114E .rJ~ 

-~: ~~?~~ :B~ ~.1·~9"')~ ? r,ll'?," Elf lIt~ TIJPQIJE fT - Lll'" IT -~.741F'.f)1, : Lt ;1~ ~%/. -~ .. • 'J~F-.)" 

ELE TIJPQIJE FT-Ul'./FT -2 .1'i~H!)/. -~ .. ~i'-l+{J'" - ".rJ~~F . • 011 

PI H H 1I4~ MlJMEIH LI)~ u m(, 12~J 

ELE PlTr.H M'l"EIH f T-Lb'./f T .OOOE .QO .rJIjIj[ "lO • IJfJOi. "lfJ .. rjrJr;~ .fJfJ 

LIfT ~L()I>E (J),,'/EP'.Ellt:e: 

I"~'JT LIFT >l()l>l I~~r, ~. 4 'IJI. 'fJO 4.11:1 t .')11 L.. I ~;Jr '0'J I,. 'J' ... ~;. 100f; 

r.LI~LPH~E IP~v ~.447E.r)O 1 •• 1 '11 f 'or;r; I ... l':." ,r;(J I •. '1/11 t .. Of; 

r.l~~'JUTllj" PH·~I'.[ TFP~ 

UP( ~f1~Pf. P~Pl'\ ".l';lF-f)' ',. ~/';'-(J' '1. ~4'j~ -(J1 'I.I,"/I,t -(;1 

'lr,')fit. r.IH'JUTI')14 FT"21~F. i.' .. r;'I'I'L f,fJ ~ ~. 1 III "ll I. 1 1 I,; .1) ~ , • '1 ~ H. 'fJ"/ 

',I HI I I W.lf)', 

1 ~ ", 1~ 

1.. ","1 -H1 1. I'IFT "·!l~(.!:~Bl 7..(,I.~HJg I.J~JI' ? 1'( )~I ~ H ~. )'(f)l. ~p, ) " ' IWI"- .'ill/~ ) 

.1.11)1)1.' J~ f :2~H:;~H? J.1] ZtlHl 1.1:/.1<-U 7. .91..f' )(J 

-~.~(/L-Ol ·9"'" '0<, -'I.~/fl- • 9"""P.l -'I.~(lr- .QOO' '~l 1.~~I)I'f)l l·U~H'~ l·unt ·H i.l, 111/ .f) .' I?f! J1 .'~M ~ 

1.?'>!Pf 1 1.fJ·/~f'(1 1.611·~H -l.7l,gl..Ho -dl'Jf;t.Ho -l.'I/Ji.H I 

1 .f)f.11 .1)1) 1. f)1J1,f '1}(1 1.1i. jl 'WJ 1 .. ~/,IJf. t(Ji' 1. HlI .1)1 1. 1/ /1')1 

U)%i'1'2~ J • 'l"~~ '~1 . ~~/~ .~~ t.Jl.l.f'l I .. ~ ~ .. r t J I .. ~ 'If. J J 

1.IJ/fll.lrJiJ 'J.I''"I/.f-t)1 'I. ~~ ~$: ... f)l 

1.1, 1/f -Ij? 1. t;f)?,' -I);' 1.1.1::;;; -IN • I)IJI)~ tfJ/J .III)f)! ./jO • /)/)/JI. '1lI) 

-4.4 Iill. 'f)I, -.~ .. ~/, ~~ t~/,. -?.I.1 il ")1, 

-4.7/..1,1: '1)1, -; .. ~J~/,.J. ., )1,. -~ .~/,'iJ. "~/~ i .. L l'l£" .. f) ~ I. 'l')?' I .1) I ( .. ;~"$ ~ J ~ ~. ill'lf. "J~ 1. 'J~~f-t,()'" ,. I~~r.')~ 

t .. H:%; .,;)r, , .. 'I'-i~ ")~ 1..~'>,F t,!y .. 

I. 14~f "Ji. ~ .. 1,~/,t "(ji. 4.1 .. ~j'f t,(Ji 

J .. ~~!~ . .,~'~ 

=~:7.~~:~~/. J:~~~;: ~~f. -I. fj(ll'~1, 1./,'1 /

,1 ·r· = 1 : ~~~: :~~; 

.f;(J(H.,rjfJ • r J(Jr)~ ,r J rJ .fJfj!H o,,'j'J 

':.. 'J','/: "J'J ~ .. 1/,1,: ,'J'; '" .... 1 !~; .. 'J(J 

~. 'J':,',:. ""f" ':-.1/,1,' .. fi'J ':- .. 1 ~ ~; ,/, rJ 

'1./111 -'J' ~/ .. ;': ' .. ;:; .- r) 1 '1.'/111 -fj1 

'1 .lfjl,F "JI' 1 . ',I,',; ~fJ;' 1 . , ! t; ~{Ji' 
o 

I 

00 

COMPUTATIONAL METHODOLOGY ASSOCIATES *** LSWT VERSION 1.00 RELEASED MAY 1986 *** SERI IL-5-05105 

POINT 8: 1'100-0 (AILERON) *** CMA STALL MODEL *** 05 

ROTOR PITCH (DEG) .0000 

WIND SPEED (M/SEC) 10.0000 

ROTOR AZIMUTH (DEG) .0000 

ROTOR PERFORMANCE -----------------

THRUST LBS 4.0183E+03 CT ROTOR 6.9068E-03 

CT WT 2.4431E-01 

TORQUE FT-LBS -3.9070E+04 CQ ROTOR -1.0500E-03 

CP WT -1.5619E-01 

POWER (ROTOR) KW -1.1427E+02 POWER (PROF ILE) KW 3.9184E+01 POWER (INFLOW) KW -1". 5346E+02 
t::J 

I 

1.0 

COMPUTATIONAL METHODOLOGY ASSOCIATES *** LSWT VERSION 1.00 RELEASED MAY 1986 *** SERI IL-S-OS10S 

RECORD IMAGE OF INPUT FILE --------------------------

ESI-54 *** CMA STALL MODEL *** 05 3.0 0.0 2.0 0.0 

1.0 

0.0 0.0 0.0 

0.0 0.0 0.0 0.0 0.0 77.0 1.0 1.0 S.O 1.0 18.0 1.0 0.0 0.0 1.0 600.0 2.0 2.0 2.0 27.0 2.0 12.0 0.0 180.0 0.0 0.0 1.0 13.0 

4·8 3:8 8. 25 2.~0 o. .0 5. 2.0 

0.0 8.10 

1.15 2.05 

2.0 

0.0 27.0 

-7.5 2.5 

2.0 

0.0 27.0 

0.0 0.0 

1.0 

120.0 0.0 27.0 

11.0 4.0 0.25 8.10 0.0 0.0 0.0 5.0 2.0 

8.10 27.0 

2.05 1.0 

2.0 

0.0 27.0 

-7.5 2.5 

2.0 

0.0 27.0 

0.0 0.0 

1.0 

120.0 0.0 27.0 1.0 3.0 

2.0 

30.0 

14.0 

8:30 

27.0 

0.0 

2.0 

1.0 

17.0 

0.0 

0.0 

0.0 
120.0 NACA 23012 *** VDT1167 TR586 *** CMA STALL MODEL 

8.0 14.0 8.0 14.0 1.0 2.0 

0.12 32.0 1.0 1.0 0.0 2.0 0.5960 

0.0424 0.0842 0.1700 0.3350 0.6650 1.2860 

2.3000 3.0900 

-2.0 -0.030 -0.030 -0.080 -0.080 -0.080 -0.080 

-0.080 -0.080 

0.0 0.1600 0.1400 0.1300 0.1300 0.1300 0.1300 

0.1300 0.1300 

2.0 0.4000 0.4000 0.3800 0.3300 0.3300 0.3300 

0.3300 0.3300 

4.0 0.5800 0.5800 0.5400 0.5400 0.5400 0.5400 

0.5400 0.5400 

6.0 0.7400 0.7400 0.7200 0.7200 0.7200 0.7200 

0.7200 0.7200 

8.0 0.8600 0.9000 0.9000 0.9000 0.9300 0.9300 

0.9300 0.9300 

9.0 0.9250 0.9800 0.9600 0.9800 1.0500 1.0600 

1.0600 1.0600 

10.0 0.9000 1.0200 1.0600 1.0800 1.1100 1.1500 

1.1500 1.1500 

11.0 0.8600 1.0800 1.0900 1.1500 1.1900 1.2300 

1.2400 1.2400 

12.0 0.8400 0.9900 1.1000 1.1800 1.2500 1.3000 

1.3100 1.3200 

13.0 0.8200 0.9400 1.1000 1.2000 1.3000 1.3800 

1.3900 1.4100 

14.0 0.8000 0.9000 1.0300 1.1900 1.3000 1.4000 

a 1.4700 1.4900 I 15.0 0.7900 0.8800 0.9750 1.1200 1.2700 1.4200 ..... 1.5400 1.5700 

0 16.0 0.7800 0.8600 0.9400 1.0800 1.2200 1.2700 

1.5600 1.6000 

0.0424 0.0842 0.1700 0.3350 0.6650 1.2860 

2.3000 3.0900 

-2.0 0.0265 0.0258 0.0125 0.0120 0.0120 0.0100 

0.0100 0.0090 

0.0 0.0220 0.0215 0.0125 0.0115 0.0115 0.0100 

0.0100 0.0085 

2.0 0.0225 0.0210 0.0125 0.0115 0.0115 0.0100 

0.0100 0.0080 

4.0 0.0230 0.0215 0.0135 0.0120 0.0200 0.0100 

0.0100 0.0085 

6.0 0.0270 0.0250 0.0170 0.0140 0.0140 0.0120 

0.0120 0.0105 

8.0 0.0335 0.0313 0.0200 0.0170 0.0165 0.0135 

0.0135 0.0120 

9.0 0.0424 0.0350 0.0225 0.0190 0.0180 0.0150 

0.0155 0.0140 

10.0 0.0539 0.0400 0.0280 0.0230 0.0195 0.0175 

0.0170 0.0155 

11.0 0.0666 0.0500 0.0400 0.0290 0.0240 0.0210 

0.0185 0.0175 

12.0 0.0804 0.0643 0.0530 0.0350 0.0290 0.0240 

0.0215 0.0215 

13.0 0.0954 0.0797 0.0688 0.0480 0.0400 0.0385 

0.0245 0.0235 

14.0 0.1114 0.0963 0.0858 0.0657 0.0579 0.0335 

0.0295 0.0275 

15.0 0.1286 0.1140 0.1039 0.0845 0.0771 0.0500 

0.0400 0.0333 

16.0 0.1468 0.1326 0.1231 0.1046 0.0975 0.0715 

0.0619 0.0500 

0.0 

-180.0 0.0 

180.0 0.0 
COMPUTATIONAL METHODOLOGY ASSOCIATES *** LSWT VERSION 1.00 RELEASED MAY 1986 *** SERI IL-5-05105 --------------------------------------------------------------------------------------------------------------------------

ESI-54 *** CMA STALL MODEL *** 05 

REFERENCE BLADE SURFACE PANEL COORDINATES -----------------------------------------

I,J 2 3 4 5 6 7 8 9 10 11 

1 X -.013369 -.014764 -.016159 -.017555 -.018951 -.018951 -.017584 -.016238 -.014942 -.013725 -.012611 

Y .099727 .149536 .199344 .249149 .298953 .298953 .398160 .495353 .588550 .675856 .755491 

Z .007489 .011848 .016232 .020639 .025071 .025071 .034136 .042971 .051399 .059255 .066389 

2 X .002294 .002533 .002772 .003012 .003251 .003251 .003017 .002786 .002564 .002355 .002164 Y .099601 .149411 .199221 .249031 .298842 .298842 .398089 .495315 .588541 .675869 .755521 

Z .008926 .013284 .017637 .021986 .026331 .026331 .034948 .043397 .05~ 507 .059109 .066049 

3 X .040108 .044291 .048477 .052664 .056852 .056852 .052752 .048715 .044827 .041174 .037834 

Y .099298 .149108 .198924 .248747 .298576 .298576 .397918 .495225 .588518 .675900 .755593 Z .012395 .016749 .021030 .025238 .029374 .029374 .036908 .044427 .051767 .058756 .065229 

I,J 12 13 14 15 16 17 

1 X -.011627 -.010791 -.010123 -.009636 -.009339 -.009240 Y .825834 .885452 .933130 .967897 .989045 .996142 

Z .072664 .077964 .082190 .085264 .087131 .087757 

0 2 X .001995 .001851 .001737 .001653 .001602 .001585 I Y .825876 .885502 .933186 .967956 .989106 .996204 .... Z .072184 .077386 .081549 .084585 .086432 .087053 .... 3 X .034880 .032374 .030369 .028907 .028017 .027719 Y .825978 .885624 .933321 .968100 .989253 .996353 

Z .071024 .075991 .080001 .082946 .084746 .085352 
COMPUTATIONAL METHODOLOGY ASSOCIATES *** LSWT VERSION 1.00 RELEASED MAY 1986 *** SERI IL-5-05105 

ESI-54 *** CMA STALL MODEL *** 05 

REFERENCE BLADE COLLOCATION POINT COORDINATES -------------------------'--------------------

I,J 2 3 4 5 6 7 8 9 10 

1 X -.008355 -.009183 -.010012 -.010841 -.010850 -.010045 -.009260 -.008514 -.007821 -.007198 

Y .124588 .174397 .224205 .274012 .348525 .446737 .541943 .632203 .715681 .790675 

Z .010165 .014530 .018911 .023305 .029966 .038772 .047281 .055323 .062740 .069386 

2 X .018362 .020182 .022004 .023826 .023847 .022076 .020352 .018711 .017189 .015820 

Y .124384 .174195 .224009 .273826 .348379 .446651 .541906 .632207 .715716 .790734 

Z .012499 .016839 .021147 .025424 .031635 .039765 .047704 .055283 .062339 .068716 

I,J 11 12 13 14 15 

1 X -.006658 -.006211 -.005868 -.005635 -.005517 

Y .855659 .909309 .950534 .978492 .992615 

Z .075132 .079866 .083498 .085959 .087201 

2 X .014632 .013650 .012896 .012384 .012126 Y .855734 .909396 .950627 .978589 .992714 

Z .074270 .078876 .082427 .084842 .086064 

0 

I 

~ 

N 
o 

I 

.... 

W 

COMPUTATIONAL METHODOLOGY ASSOCIATES *** LSWT VERSION 1.00 RELEASED JANUARY 1986 *** (PRELIMINARY RELEASE) 

POINT 8: ESI-54 *** CMA STALL MODEL *** 05 ROTOR PITCH (DEG) .0000 

WINO SPEED (M/SEC) 12.0000 

ROTOR AZIMUTH (DEG) .0000 

WORKING STATE AND WAKE RATE PARAMETERS 

WINDMILL BRAKE STATE 

REFERRED VELOCITIES 

AXIAL ONSET 3.0~276E+00 INDUCED -3.69991E-01 

REFERENCE WAKE PARAMETERS

CTRW 6.92691 E-6 3 

AKZo -8.3228oE-02 

ALAMO 3.32912E-01 

AKRO -4.000ooE+oO 

MODIFIED WAKE 

AKZW 

AKZI 

AKZ 

AKR 

A 

AKB 

PA~~~a~~~~~ol -1.75745E-02 

1.63261E-Ol 

2.03914E+00 

1.2200oE+00 

1.96161E+Oo 
COMPUTATIONAL METHODOLOGY ASSOCIATES *** LSWT VERSION 1.00 RELEASED MAY 1986 *** SERI IL-5-05105 --------------------------------------------------------------------------------------------------------------------------

POINT 8: ESI-54 *** CMA STALL MODEL *** 05 

ROTOR PITCH (DEG) .0000 

WIND SPEED (M/SEC) 12.0000 

ROTOR AZIMUTH (DEG) .0000 

BLADE 1 ELEMENT CHARACTERISTICS 

GEOMETRY 

ELEMENT NUMBER 

ELE CENTER STATION 

CHORD 

ELEMENT SPAN 

LEADING EDGE SWEEP 

AERODYNAMIC SWEEP 

ANGLES OF ATTACK 

GEOMETRIC PITCH 

ZERO LIFT LINE 

EFFECTIVE ANGLE 

WIND ANGLE 

INFLOW ANGLE 

INDUCED ANGLE 

VELOCITIES 

INDUCED VELOCITY 

RELATIVE VELOCITY 

REYNOLDS NUMBER 

RELATIVE Q 

AERODYNAMIC COEFFICIENTS 

ELE LIFT COEF 

ELE DRAG COEF 

ELE MOMENT COEF 

FORCE LOADING 

ELE X FORCE 

ELE IND X FORCE 

ELE PRO X FORCE 

ELE Z FORCE 

ELE IND Z FORCE 

ELE PRO Z FORCE 

TORQUE LOAD ING 

FT 

FT 

DEG 

DEG 

DEG 

DEG 

DEG 

DEG 

DEG 

DEG 

FT/SEC 

FT/SEC 

PSF 

LBS/FT 

LBS/FT 

LBS/FT 

LBS/FT 

LBS/FT 

LBS/FT 

1 

1.245E-01 

1.525E+00 

1.350E+00 

1.591 E+OO 

3.000E-01 

2 

1.743E-01 

1.675E+00 

1.350E+00 

1.591E+00 

6.256E-02 

3 

2.241E-01 

1.825E+00 

1.350E+00 

1.591 E+OO 

3.375E-01 

4 

2.740E-01 

1.975E+00 

1.350E+00 

1.591 E+OO 

5.439E-01 

5 

3.485E-01 

1.975E+00 

2.690E+00 

7.957E-01 

4.601E-01 

6 

4.467E-01 

1.827E+00 

2.635E+00 

7.957E-01 

2.121E-01 

7 

5.419E-01 

1.684E+00 

2.527E+00 

7.955E-01 

3.956E-02 

8 

6.322E-01 

1.548E+00 

2.367E+00 

7.960E-01 

7.913E-02 

-6.250E+00 -5.750E+00 -5.250E+00 -4.750E+00 -4.002E+00 -3.016E+00 -2.060E+00 -1.154E+00 

-1.238E+00 -1.238E+00 -1.238E+00 -1.238E+00 -1.238E+00 -1.238E+00 -1.238E+00 -1.238E+00 

4.678E+01 3.889E+01 3.247E+01 2.797E+01 2.254E+01 1.69SE+01 1.473E+01 1.366E+01 

S.556E+01 4.618E+01 3.904E+01 3.3S8E+01 2.7S6E+01 2.213E+01 1.8S2E+01 1.601E+01 

S.S64E+01 4.633E+01 3.881E+01 3.343E+01 2.689E+01 1.999E+01 1.668E+01 1.462E+01 

1.421E+00 1.373E+00 4.997E-01 4.740E-01 -3.677E-01 -2.0SSE+00 -1.7S9E+00 -1.320E+00 

3.796E-01 6.908E-01 9.374E-01 1.088E+00 1.229E+00 1.723E+00 1.667E+00 1.497E+00 

4.867E+01 S.S93E+01 6.380E+01 7.27SE+01 8.643E+01 1.0S3E+02 1.249E+02 1.438E+02 

4.746E+OS 5.990E+OS 7.44SE+OS 9.187E+OS 1.092E+06 1.231E+06 1.34SE+06 1.423E+06 

2.817E+00 3.719E+00 4.840E+OO 6.293E+00 8.881 E+OO 1.319E+01 1.85SE+01 2.4S8E+01 

S.9S9E-01 7.866E-01 9.061E-01 9.594E-01 1.06SE+OO 1.307E+OO 1.392E+OO 1.33SE+OO 

6.072E-01 S.777E-01 S.271E-01 3.468E-01 1.814E-01 6.7S7E-02 3.SS1E-02 2.908E-02 

.OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO 

-2.190E+02 -7.721E+02 -1.012E+03 -2.167E+03 -4.090E+03 -6.732E+03 -S.325E+03 -8.568E+03 

-1.292E+03 -2.584E+03 -3.6S7E+03 -4.789E+03 -6.1S9E+03 -7.848E+03 -9.100E+03 -9.348E+03 

1.073E+03 1.S12E+03 2.645E+03 2.622E+03 2.070E+03 1.116E+03 7. 746E+02 7.806E+02 

2.634E+03 4.348E+03 6.648E+03 8.9S1E+03 1.315E+04 2.189E+04 3.048E+04 3.S90E+04 

1.071E+03 2.4S7E+03 4.S29E+03 7.226E+03 1.210E+04 2.149E+04 3.02SE+04 3.S70E+04 

1.564E+03 1.890E+03 2.119E+03 1.72SE+03 1.046E+03 4.043E+02 2.312E+02 2.029E+02 

ELE PRO TORQUE FT-LBS/FT 1.34SE+04 1.133E+04 1.332E+04 3.607E+03 8.S27E+03 1.601E+04 1.939E+04 1.947E+04 

ELE FT-LBS/FT -4.344E+03 -1.216E+04 -2.213E+04 -3.S43E+04 -S.79SE+04 -9.465E+04 -1.332E+OS -1.S96E+OS IND TORQUE ELE TORQUE FT-LBS/FT -7.36SE+02 -3.634E+03 -6.12SE+03 -1.603E+04 -3.848E+04 -8.120E+04 -1.218E+OS -1.462E+OS 

PITCHING MOMENT LOADING (2D) 

ELE PITCH MOMENT FT-LBS/FT .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO 

LIFT SLOPE CONVERGENCE 

INPUT LI FT SLOPE IRAD 8.174E-01 1.2S4E+OO 1.682E+00 2.027E+OO 2.794E+OO 4.648E+00 S.460E+00 S.653E+00 

CL/ALPHAE IRAD 8.177E-01 1.253E+OO 1.688E+OO 2.046E+OO 2.778E+OO 4.483E+OO S.475E+OO 5.654E+OO 

CIRCULATION PARAMETERS 

CIRC SHAPE PARM 8.304E-01 8.400E-01 8.524E-01 8.594E-01 8.844E-01 9.478E-01 9.721E-01 9.771E-01 

BOUND CIRCULATION FT**2/SEC 2.210E+01 3.687E+01 5.256E+01 6.829E+01 9.143E+01 1.304E+02 1.460E+02 1.486E+02 
COMPUTATIONAL METHODOLOGY ASSOCIATES *** LSWT VERSION 1.00 RELEASED MAY 1986 *** SERI IL-5-05105 --------------------------------------------------------------------------------------------------------------------------

POINT 8: ESI-54 *** CMA STALL MODEL *** 05 ROTOR PITCH (DEG) .0000 

WIND SPEED (M/SEC) 12.0000 

ROTOR AZIMUTH (DEG) .0000 

BLADE 1 ELEMENT CHARACTERISTICS 

GEOMETRY 

ELEMENT NUMBER 9 10 11 12 13 14 15 

ELE CENTER STATION 7.157E-01 7.907E-01 8.S57E-01 9.093E-01 9.506E-01 9.785E-01 9.926E-01 

CHORD FT 1.422E+00 1.309E+00 1.212E+00 1.131E+00 1.069E+00 1.027E+OO 1.005E+OO 

ELEMENT SPAN FT 2.159E+00 1.907E+OO 1.616E+00 1.292E+00 9.424E-01 5.732E-01 1.924E-01 

LEADING EDGE SWEEP DEG 7.955E-01 7.957E-01 7.955E-01 7.955E-01 7.957E-01 7.957E-01 7.957E-01 

AERODYNAMIC SWEEP DEG 1.631E-01 2.247E-01 2.705E-01 3.033E-01 3.275E-01 3.443E-01 3.561E-01 

ANGLES OF ATTACK 

GEOMETRIC PITCH DEG -3.157E-01 4.371E-01 1.090E+OO 1.628E+00 2.042E+00 2.323E+00 2.464E+OO 

ZERO LIFT LINE DEG -1.238E+OO -1.238E+OO -1.238E+00 -1.238E+OO -1.238E+00 -1.238E+00 -1.238E+OO 

EFFECTIVE ANGLE DEG 1.297E+01 1.247E+01 1.206E+01 1.153E+01 1.056E+01 8.926E+00 5.676E+00 

WINO ANGLE DEG 1.422E+01 1.291E+01 1.195E+01 1.126E+01 1.078E+01 1.048E+01 1.033E+01 

INFLOW ANGLE DEG 1.305E+01 1.176E+01 1.067E+01 9.562E+00 8.111E+OO 6.096E+OO 2.504E+OO 

INDUCED ANGLE DEG -1.113E+OO -1.103E+00 -1.252E+00 -1.679E+00 -2.682E+OO -4.453E+OO -7.962E+OO 

0 

I VELOCITIES ..... 

<.TI INDUCED VELOCITY FT ISEC 1.384E+00 1.341E+OO 1.346E+OO 1.360E+OO 1.198E+00 3.384E-01 -1.497E+OO 

RELATIVE VELOCITY FT/SEC 1.614E+02 1.772E+02 1.909E+02 2.022E+02 2.103E+02 2.146E+02 2.148E+02 

REYNOLDS NUMBER 1.468E+06 1.484E+06 1.479E+06 1.462E+06 1.437E+06 1.409E+06 1.381 E+06 

RELATIVE Q PSF 3.096E+01 3. 734E+01 4.335E+01 4.859E+01 5.257E+01 5.476E+01 5.488E+01 

AERODYNAMIC COEFFICIENTS 

ELE LIFT COEF 1.283E+OO 1.248E+00 1.217E+00 1.174E+00 1.089E+00 8. 972E-01 5.794E-01 

ELE DRAG COEF 2.275E-02 2.122E-02 1.997E-02 1.834E-02 1.583E-02 1.327E-02 1.044E-02 

ELE MOMENT COEF .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO 

FORCE LOADING 

ELE X FORCE LBS/FT -8.587E+03 -8.329E+03 -7.877E+03 -7.088E+03 -S.6S0E+03 -3.364E+03 -S.985E+02 

ELE IND X FORCE LBS/FT -9.299E+03 -9.070E+03 -8.628E+03 -7.812E+03 -6.291E+03 -3.905E+03 -1.018E+03 

ELE PRO X FORCE LBS/FT 7.116E+02 7.405E+02 7.516E+02 7.245E+02 6.417E+02 S.406E+02 4.194E+02 

ELE Z FORCE LBS/FT 4.014E+04 4.355E+04 4.S78E+04 4.632E+04 4.407E+04 3.648E+04 2.321E+04 

ELE IND Z FORCE LBS/FT 3.998E+04 4. 340E+04 4.S64E+04 4.620E+04 4.398E+04 3.642E+04 2.319E+04 

ELE PRO Z FORCE LBS/FT 1.643E+02 1.S36E+02 1.410E+02 1.216E+02 9.111E+01 S.7S1E+01 1.827E+01 

TORQUE LOADING 

ELE PRO TORQUE FT-LBS/FT 1.37SE+04 1.S81E+04 1.736E+04 1.779E+04 1.647E+04 1.428E+04 1.124E+04 

ELE IND TORQUE FT-LBS/FT -1.797E+OS -1.936E+OS -1.993E+OS -1.918E+05 -1.615E+OS -1.032E+05 -2.728E+04 

ELE TORQUE FT-LBS/FT -1.659E+05 -1.778E+05 -1.820E+05 -1.740E+05 -1.450E+05 -8.888E+04 -1.604E+04 

PITCHING MOMENT LOADING (20) 

ELE PITCH MOMENT FT-LBS/FT .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO 

LIFT SLOPE CONVERGENCE 

INPUT LIFT SLOPE IRAD 5.716E+OO 5. 779E+OO 5.826E+OO 5.872E+OO 5.941E+OO 5.782E+OO 5.858E+OO 

CL/ALPHAE IRAD 5.716E+00 5.780E+OO 5.826E+00 5.872E+OO 5.942E+OO 5.782E+OO 5.858E+OO 

CIRCULATION PARAMETERS 

CIRC SHAPE PARM 9.793E-01 9.823E-01 9.854E-01 9.907E-01 1.005E+OO 1.039E+OO 1.161E+OO 

BOUND CIRCULATION FT**2/SEC 1.472E+02 1.448E+02 1.408E+02 1.342E+02 1.223E+02 9.883E+01 6.257E+01 
o 

I 

..... 

0'1 

COMPUTATIONAL METHODOLOGY ASSOCIATES *** LSWT VERSION 1.00 RELEASED MAY 1986 *** SERI IL-5-05105 

POINT 8: ESI-54 *** CMA STALL MODEL *** 05 

ROTOR PITCH (DEG) .0000 

WIND SPEED (M/SEC) 12.0000 

ROTOR AZIMUTH (DEG) .0000 

ROTOR PERFORMANCE 

THRUST LBS 1.7996E+03 

CT ROTOR 6.9716E-03 CT WT 4. 2638E-01 

TORQUE FT-LBS -6.6231E+03 

CQ ROTOR -9.5026E-04 CP WT -3. 2138E-01 

POIIER (ROTOR) KW -7.2407E+01 

POWER (PROFILE) KW 1.0465E+01 

POWER (INFLOW) KW -8.2873E+01 
COMPUTATIONAL METHODOLOGY ASSOCIATES *** LSWT VERSION 1.00 RELEASED MAY 1986 *** SERI IL-5-05105 

RECORD IMAGE OF INPUT FILE --------------------------

CARTER 25 *** CMA STALL MODEL *** 05 3.0 0.0 

1.0 2.0 0.0 2.0 2.0 0.0 

0.0 0.0 0.0 

0.0 0.0 0.0 0.0 0.0 124.0 1.0 1.0 5.0 1.0 18.0 1.0 0.0 1.0 1.0 300.0 2.0 2.0 2.0 16.0 2.0 12.0 0.0 180.0 

0.0 0.0 1.0 14.0 

30.0 1.0 

15.0 17.0 

9.0 3.0 0.25 1.280 

0.0 0.0 0.0 6.0 

10.40 

0.0 0.0 

8.0 

0.0 

10.40 

0.80 2.40 4.00 ·5.60 7.20 8.80 

3.6480 

1.0880 

3.6480 3.0080 2.400 1.9040 1.4400 1.1520 

8.0 

0.0 0.80 2.40 4.00 5.60 7.20 8.80 

10.40 

0 -41.00 

- 34.00 -20.00 -11.00 -5.00 -1.200 0.60 I 1.00 - 2.0 -...J 0.0 16.0 

0.0 0.0 

1.0 

120.0 0.0 16.0 

6.0 4.0 0.25 10.40 16.0 

0.0 0.0 

2.0 

0.0 6.0 0.0 0.0 

10.40 16.0 

1.0880 1.0880 

2.0 

10.40 16.0 

1.00 1.00 

2.0 

0.0 16.0 

0.0 0.0 

1.0 

120.0 0.0 16.0 

1.0 3.0 
120.0 NACA 23012 *** VDT1167 TR586 *** CMA STALL MODEL 

8.0 14.0 8.0 14.0 1.0 2.0 

0.12 32.0 1.0 1.0 0.0 2.0 0.5960 

0.0424 0.0842 0.1700 0.3350 0.6650 1.2860 

2.3000 3.0900 

-2.0 -0.030 -0.030 -0.080 -0.080 -0.080 -0.080 

-0.080 -0.080 

0.0 0.1600 0.1400 0.1300 0.1300 0.1300 0.1300 

0.1300 0.1300 

2.0 0.4000 0.4000 0.3800 0.3300 0.3300 0.3300 

0.3300 0.3300 

4.0 0.5800 0.5800 0.5400 0.5400 0.5400 0.5400 

0.5400 0.5400 

6.0 0.7400 0.7400 0.7200 0.7200 0.7200 0.7200 

0.7200 0.7200 

8.0 0.8600 0.9000 0.9000 0.9000 0.9300 0.9300 

0.9300 0.9300 

9.0 0.9250 0.9800 0.9600 0.9800 1.0500 1.0600 

1.0600 1.0600 

10.0 0.9000 1.0200 1.0600 1.0800 1.1100 1.1500 

1.1500 1.1500 

11.0 0.8600 1.0800 1.0900 1.1500 1.1900 1.2300 

1.2400 1.2400 

12.0 0.8400 0.9900 1.1000 1.1800 1.2500 1.3000 

1.3100 1.3200 

13.0 0.8200 0.9400 1.1000 1.2000 1.3000 1.3800 

1.3900 1.4100 

14.0 0.8000 0.9000 1.0300 1.1900 1.3000 1.4000 

0 1.4700 1.4900 I 15.0 0.7900 0.8800 0.9750 1.1200 1.2700 1.4200 ..... 1.5400 1.5700 ex> 16.0 0.7800 0.8600 0.9400 1.0800 1.2200 1.2700 

1.5600 1.6000 

0.0424 0.0842 0.1700 0.3350 0.6650 1.2860 

2.3000 3.0900 

-2.0 0.0265 0.0258 0.0125 0.0120 0.0120 0.0100 

0.0100 0.0090 

0.0 0.0220 0.0215 0.0125 0.0115 0.0115 0.0100 

0.0100 0.0085 

2.0 0.0225 0.0210 0.0125 0.0115 0.0115 0.0100 

0.0100 0.0080 

4.0 0.0230 0.0215 0.0135 0.0120 0.0200 0.0100 

0.0100 0.0085 

6.0 0.0270 0.0250 0.0170 0.0140 0.0140 0.0120 

0.0120 0.0105 

8.0 0.0335 0.0313 0.0200 0.0170 0.0165 0.0135 

0.0135 0.0120 

9.0 0.0424 0.0350 0.0225 0.0190 0.0180 0.0150 

0.0155 0.0140 

10.0 0.0539 0.0400 0.0280 0.0230 0.0195 0.0175 

0.0170 0.0155 

11.0 0.0666 0.0500 0.0400 0.0290 0.0240 0.0210 

0.0185 0.0175 

12.0 0.0804 0.0643 0.0530 0.0350 0.0290 0.0240 

0.0215 0.0215 

13.0 0.0954 0.0797 0.0688 0.0480 0.0400 0.0385 

0.0245 0.0235 

14.0 0.1114 0.0963 0.0858 0.0657 0.0579 0.0335 

0.0295 0.0275 

15.0 0.1286 0.1140 0.1039 0.0845 0.0771 0.0500 

0.0400 0.0333 

16.0 0.1468 0.1326 0.1231 0.1046 0.0975 0.0715 

0.0619 0.0500 

0.0 

-180.0 0.0 

180.0 0.0 
COMPUTATIONAL METHODOLOGY ASSOCIATES *** LSWT VERSION 1.00 RELEASED MAY 1986 *** SERI IL-5-05105 --------------------------------------------------------------------------------------------------------------------------

CARTER 25 *** CMA STALL MODEL *** 05 

REFERENCE BLADE SURFACE PANEL COORDINATES -----------------------------------------

I,J 2 3 4 5 6 7 8 9 10 11 

1 X -.047428 -.047195 -.046281 -.044077 -.039921 -.034577 -.028618 -.022273 -.017980 -.016987 -.016987 

Y .082260 .090725 .115877 .157023 .213154 .282549 .363167 .452551 .547942 .646370 .646370 

Z -.017314 -.015009 -.008296 .001942 .013092 .024969 .036566 .047615 .058173 .068604 .068604 

2 X .008137 .008097 .007941 .007562 .006849 .005932 .004910 .003821 .003085 .002915 .002915 

Y .079099 .087736 .113383 .155249 .212020 .281973 .362972 .452557 .548012 .646451 .646451 

Z .012768 .013433 .015430 .018816 .023882 .030448 .038425 .047557 .057499 .067830 .067830 

3 X .142285 .141584 .138842 .132231 .119764 .103730 .085854 .066818 .053941 .050961 .050961 

Y .071466 .080519 .107363 .150968 .209282 .280583 .362500 .452571 .548183 .646647 .646647 

Z .085391 .082098 .072710 .059553 .049931 .043676 .042914 .047416 .055872 .065963 .065963 

I,J 12 13 14 15 16 17 

1 X -.016987 -.016987 -.016987 -.016987 -.016987 -.016987 

Y .736460 .820411 .892501 .947818 .982592 .994453 

Z .078073 .086896 .094473 .100287 .103942 .105189 

0 2 X .002915 .002915 .002915 .002915 .002915 .002915 I Y .736542 .820492 .892583 .947900 .982673 .994534 ...... Z .077299 .086123 .093700 .099514 .103169 .104415 

1.0 

3 X .050961 .050961 .050961 .050961 .050961 .050961 

Y .736738 .820689 • 892779 .948096 .982869 .994730 . Z .075431 .084255 .091832 .097646 .101301 .102548 
COMPUTATIONAL METHODOLOGY ASSOCIATES *** LSWT VERSION 1.00 RELEASED MAY 1986 *** SERI IL-5-05105 

CARTER 25 *** CMA STALL MODEL *** 05 

REFERENCE BLADE COLLOCATION POINT COORDINATES ---------------------------------------------

I,J 2 3 4 5 6 7 8 9 10 

1 X -.028103 -.027784 -.026907 -.024990 -.022026 -.018772 -.015080 -.011944 -.010384 -.010089 

Y .085427 .102350 .135698 .184578 .247523 .322711 .407819 .500257 .597182 .691443 

Z -.006018 -.002597 .003980 .012373 .022151 .032166 .042472 .052787 .063138 .073070 

2 X .061765 .061062 .059134 .054921 .048407 .041256 .033143 .026251 .022823 .022174 

Y .080441 .097910 .132280 .182242 .246239 .322129 .407689 .500326 .597306 .691575 

Z .041415 .039641 .036502 .034598 .034374 .037708 .043711 .052129 .061962 .071816 

I,J 11 12 13 14 15 

1 X -.010089 -.010089 -.010089 -.010089 -.010089 

Y .778464 .856484 .920188 .965233 .988550 

Z .082216 .090417 .097112 .101847 .104297 

2 X .022174 .022174 .022174 .022174 .022174 

Y .778596 .856616 .920320 .965365 .988682 

Z .080962 .089163 .095858 .100593 .103043 

0 

I 

N 

0 
o 

I 

N 

..... 

COMPUTATIONAL METHODOLOGY ASSOCIATES *** LSWT VERSION 1.00 RELEASED MAY 1986 *** SERI IL-5-05105 

POINT 8: CARTER 25 *** CMA STALL MODEL *** 05 

ROTOR PITCH (DEG) .0000 

WIND SPEED (III/SEC) 12.0000 

ROTOR AZIMUTH (DEG) .0000 

WORKING STATE AND WAKE RATE PARAMETERS 

WINDMILL BRAKE STATE 

REFERRED VELOCITIES 

AXIAL ONSET 2.7~829E+00 INDUCED -4.33967E-01 

RE~f~SNCE WAKE P~~~~~j§~~63 

AKZO -9.78660E-02 

ALAMO 3.91464E-01 

AKRO -4.00000E+00 

MODIFIED WAKE 

AKZW 

AKZI 

AKZ 

AKR 

A 

AKB 

PARAMETERS, 1.89494E-01 

-2.39673E-02 

1.65527E-01 

2.36496E+00 

1.22000E+00 

1.69136E+00 
COMPUTATIONAL METHODOLOGY ASSOCIATES *** LSWT VERSION 1.00 RELEASED MAY 1986 *** SERI IL-5-05105 

POINT 8: CARTER 25 *** CMA STALL MODEL *** 05 

ROTOR PITCH (DEG) .0000 

WINO SPEED (M/SEC) 12.0000 

ROTOR AZIMUTH (DEG) .0000 

BLADE 1 ELEMENT CHARACTERISTICS 

GEOMETRY 

ELEMENT NUMBER 1 2 3 4 5 6 7 8 

ELE CENTER STATION 8.387E-02 1.010E-g1 1.346E-01 CHORD FT 3.428E+00 3.318E+ 0 3.102E+00 1.838E-01 2.796E+00 2.471E-01 2.409E+00 ~.225E-g1 .031E+ 0 4.0~8E-g1 1.6 5E+ 0 5.~0'E-g1 1. 8 E+ 0 

ELEMENT SPAN FT 1.386E-01 4.114E-01 6.718E-01 9.118E-01 1.124E+00 1.302E+OO 1.441E+00 1.S36E+00 

LEADING EDGE SWEEP DEG S.662E+00 5.663E+00 5.608E+00 5.409E+00 4.914E+00 4.368E+00 4.056E+00 2.555E+00 

AERODYNAMIC SWEEP DEG 9.369E+00 8. 591 HOO 7.220E+00 5.088E+00 3.358E+00 1.970E+00 8.18SE-01 1.06SE-01 

ANGLES OF ATTACK 

GEOMETRIC PITCH DEG -2.919E+01 -2.679E+Ol -2.20SE+Ol -1.686E+01 -1.114E+01 -6.542E+00 -2.719E+00 -2.454E-01 ZERO LIFT LINE DEG -1.238E+00 -1.238E+00 -1.238E+00 -1.238E+00 -1.238E+00 -1.238E+00 -1.238E+00 -1.238E+00 

EF FECTIVE ANGLE DEG 6.913E+00 1.090E+Ol 1.46SE+01 2.449E+Ol 2.342E+Ol 2.006E+01 2.006E+01 1.976E+Ol 

WINO ANGLE DEG 6.726E+01 6.302E+01 5.S53E+01 4.660E+01 3.800E+01 3.078E+01 2.513E+Ol 2.086E+Ol 

INFLOW ANGLE DEG 3.554E+01 3.747E+Ol 3.670E+01 4.182E+01 3.49SE+01 2.679E+01 2.297E+01 2.017E+01 

INDUCED ANGLE DEG -3.224E+01 -2.749E+Ol -2.091E+01 -4.342E+00 -2.419E+00 -3.858E+00 -1.935E+00 -4.413E-Ol 

0 VELOCITIES I 

N 

N INDUCED VELOCITY FT ISEC 1.30SE+Ol 1.078E+Ol 8.059E+00 3.384E+00 2.76SE+00 2.707E+00 2.112E+00 1.671E+00 

RELATIVE VELOCITY FT/SEC 3.725E+01 3.982E+Ol 4.481 E+Ol S.566E+01 6.595E+01 7.807E+Ol 9.430E+01 1.125E+02 

REYNOLDS NUMBER 8.166E+05 8.449E+05 8.886E+05 9.951E+05 1.016E+06 1.014E+06 9.802H05 9.261E+05 

RELATIVE Q PSF 1.650E+00 1.88SHOO 2.387E+00 3.684E+00 5.171 E+OO 7.248E+00 1.057E+01 1.505E+01 

AERODYNAMIC COEFFICIENTS 

ELE LIFT COEF 6.724E-01 1.074E+00 1.311E+00 1.010E+00 1.038E+00 1.131 E+OO 1.131E+00 1.138E+00 

ELE DRAG COEF 1.385E-02 1.791 E-02 4.2S7E-02 2.326E-01 2.050E-01 1.299E-01 1.314E-01 1.278E-01 

ELE MOMENT COEF .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO 

FORCE LOADING 

ELE X FORCE LBS/FT -4.390E+02 -1.024E+03 -1.420E+03 -1.319E+03 -1.360E+03 -1.48SE+03 -1.409E+03 -1.351E+03 

ELE IND X FORCE LBS/FT -4.553E+02 -1.047E+03 -1.485E+03 -1.776E+03 -1.896E+03 -1.922E+03 -1.941E+03 -1.946E+03 

ELE PRO X FORCE LBS/FT 1.632E+Ol 2.277E+Ol 6.470E+01 4.570E+02 5.358E+02 4.371E+02 5.323E+02 5.950E+02 

ELE Z FORCE LBS/FT 8.S81E+02 1.37SE+03 2.029E+03 2.381E+03 3.070E+03 4.00SE+03 4.779E+03 S.486E+03 

ELE IND Z FORCE LBS/FT 8.46SE+02 1.358E+03 1.981 E+03 1.974E+03 2. 698E+03 3.786E+03 4.555E+03 S.269E+03 

ELE PRO Z FORCE LBS/FT 1.1S9E+01 1.736E+01 4.796E+Ol 4.067E+02 3.724E+02 2.195E+02 2.243E+02 2.173E+02 

TORQUE LOADING 

ELE PRO TORQUE FT-LBS/FT 2.189E+01 3.678E+01 1.394E+02 1.344E+03 2.119E+03 2.256E+03 3.473E+03 4.762E+03 

ELE IND TORQUE ELE TORQUE FT-LBS/FT -6.109E+02 -1.691E+03 -3.198E+03 -5.22SE+03 -7.495E+03 -9.920E+03 -1.26~E+04 -1.S58E+04 FT-LBS/FT -5.890E+02 -1.6S4E+03 -3.059E+03 -3.881E+03 -5.377E+03 -7.664E+03 -9.19 E+03 -1.081E+04 

PITCHING MOMENT LOADING (20) 

ELE PITCH MOMENT FT-LBS/FT .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOHOO .OOOE+OO .OOOE+OO 

LIFT SLOPE CONVERGENCE 

INPUT LIFT SLOPE IRAD 5.S68E+OO S.627E+OO S.038E+OO 2.630E+00 2.74SE+OO 3.44SE+00 3.411E+00 3.466E+OO 

CLIALPHAE IRAD S.S87E+00 S.678E+00 S.182E+00 2.437E+00 2.610E+OO 3.299E+00 3.296E+00 3.366E+00 

CIRCULATION PARAMETERS 

CIRC SHAPE PARM 1.196E+00 1.147E+00 1.049E+OO 8.703E-01 8.722E-01 9.044E-01 9.03SE-01 9.029E-01 

BOUND CIRCULATION FT**2!SEC 4.223E+Ol 6.9SSE+Ol 8.786E+01 8.4S0E+01 8.6S6E+01 9.365E+C1 8.966E+01 8.48SE+01 
COMPUTATIONAL METHODOLOGY ASSOCIATES *** LSWT VERSION 1.00 RELEASED MAY 1986 *** SERI IL-5-05105 --------------------------------------------------------------------------------------------------------------------------

POINT 8: CARTER 25 *** CMA STALL MODEL *** 05 

ROTOR PITCH (DEG) .0000 

WIND SPEED (M/SEC) 12.0000 

ROTOR AZIMUTH (DEG) .0000 

BLADE 1 ELEMENT CHARACTERISTICS 

GEOMETRY 

ELEMENT NUMBER 9 10 11 12 13 14 15 

ELE CENTER STATION 5.972E-01 6.915E-01 7.785E-01 8.565E-01 9.202E-01 9.653E-01 9.886E-01 

CHORD FT 1.120E+00 1.088E+00 1.088E+00 1.088E+00 1.088E+00 1.088E+00 1.088E+00 

ELEMENT SPAN FT 1.584E+00 1.449E+00 1.351E+00 1.160E+00 8.899E-01 5.594E-01 1.908E-01 

LEADING EDGE SWEEP DEG 5.730E-01 .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO 

AERODYNAMIC SWEEP DEG 1.558E-01 1.758E-01 1.595E-01 1.440E-01 1.356E-01 1.297E-01 1.282E-01 

ANGLES OF ATTACK 

GEOMETRIC PITCH DEG 8.020E-01 1.000E+00 1.000E+00 1.000E+00 1.000E+00 1.000E+00 1.000E+00 

ZERO LIFT LINE DEG -1.238E+00 -1.238E+00 -1.238E+00 -1.238E+00 -1.238E+00 -1.238E+00 -1.238E+00 

EFFECTIVE ANGLE DEG 1.699E+01 1.449E+01 1.285E+01 1.132E+01 9.783E+00 7.860E+00 4.768E+00 

WIND ANGLE DEG 1.768E+01 1.539E+01 1.374E+01 1.253E+01 1.168E+01 1.115E+01 1.090E+01 

INFLOW ANGLE DEG 1.621E+01 1.336E+01 1.160E+01 9.960E+00 8.314E+00 6.266E+00 2.977E+00 

INDUCED ANGLE DEG -1.356E+00 -1.968E+00 -2.092E+00 -2.544E+00 -3.378E+00 -4.945E+00 -8.014E+00 

0 VELOCITIES I 

N INDUCED VELOCITY FT/SEC 1.721E+00 1.789E+00 1.761EtOO 1.713E+00 1.508EtOO 8.322E-01 -3.257E-01 w RELATIVE VELOCITY FT ISEC 1.310E+02 1.495E+02 1.669E+02 1.824E+02 1.948E+02 2.026E+02 2.054E+02 

REYNOLDS NUMBER 9.381E+05 1.040E+06 1.161 E+06 1.269E+06 1.355E+06 1.410E+06 1.429E+06 

RELATIVE Q PSF 2.041E+01 2.658E+01 3.313E+01 3.957E+01 4.510E+01 4.881E+01 5.014E+01 

AERODYNAMIC COEFFICIENTS 

ELE LI FT COEF 1.265E+00 1.351E+00 1.264E+00 1.155E+00 1.001E+00 7.852E-01 4.906E-01 

ELE DRAG COEF 8.088E-02 4.011E-02 2.368E-02 1.784E-02 1.434E-02 1.247E-02 1.000E-02 

ELE MOMENT COEF .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO 

FORCE LOADING 

ELE X FORCE LBS/FT -1.612E+03 -2.022E+03 -2.130E+03 -2.009E+03 -1.640E+03 -9.967E+02 -2.163E+02 

ELE IND X FORCE LBS/FT -2.066E+03 -2.311E+03 -2.345E+03 -2.203E+03 -1.818E+03 -1.165E+03 -3.558E+02 

ELE PRO X FORCE LBS/FT 4.544E+02 2.889E+02 2.141E+02 1.937E+02 1.782E+02 1.685E+02 1.395E+82 

ELE Z FORCE LBS/FT 7.201E+03 9.749E+03 1.140E+04 1.251E+04 1.240E+04 1.057E+04 6.812E+ 3 

ELE IND Z FORCE LBS/FT 7.070E+03 9.680E+03 1.136E+04 1.247E+04 1.237E+04 1.055E+04 6.805E+03 

ELE PRO Z FORCE LBS/FT 1.314E+02 6.823E+01 4.370E+01 3.383E+01 2. 590E+01 1.840E+01 7.213E+00 

TORQUE LOADING 

ELE PRO TORQUE FT-LBS/FT 4.342E+03 3.197E+03 2.667E+03 2.655E+03 2.624E+03 2.602E+03 2.206E+03 

ELE IND TORQUE FT-LBS/FT -1.975E+04 -2.557E+04 -2.920E+04 -3.019E+04 -2.677E+04 -1.800E+04 -5.628E+03 

ELE TORQUE FT-LBS/FT -1.540E+04 -2.237E+04 -2.654E+04 -2.753E+04 -2.414E+04 -1.539E+04 -3.421E+03 

PITCHING MOMENT LOADING (20) 

ELE PITCH MOMENT FT-LBS/FT .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO 

LIFT SLOPE CONVERGENCE 

INPUT LIFT SLOPE IRAD 4.522E+00 5.388E+00 5.683E+OO 5.888E+OO 5.913EtOO 5.743E+00 5.902E+00 

CL/ALPHAE IRAD 4.330E+00 5. 401 E+OO 5.681 E+OO 5.886E+00 5.890E+OO 5.742E+00 5.902E+OO 

CIRCULATION PARAMETERS 

CIRC SHAPE PARM 9.405E-01 9.701E-01 9.799E-01 9.906E-01 1.004E+00 1.042E+00 1.167E+00 

BOUND CIRCULATION FT**2/SEC 9.692E+01 1.097E+02 1.148E+02 1.147E+02 1.065E+02 8.655E+01 5.480E+01 
COMPUTATIONAL METHODOLOGY ASSOCIATES *** LSWT VERSION 1.00 RELEASED MAY 1986 *** SERI IL-5-05105 

POINT 8: CARTER 25 *** CMA STALL MODEL *** 05 

ROTOR PITCH (DEG) .0000 

WIND SPEED (M/SEC) 12.0000 

ROTOR AZIMUTH (DEG) .0000 

ROTOR PERFORMANCE 

THRUST LBS 7.9598E+02 

CT ROTOR 9.6418E-03 

CT WT 5. 3703E-01 

TORQUE FT-LBS -1.6217E+03 CQ ROTOR -1.2277E-03 

CP WT -3.6086E-01 

POWER (ROTOR) KW -2.8551E+01 

POWER (PROFILE) KW 5.6907E+00 

POWER (INFLOW) KW -3.4241E+01 
COMPUTATIONAL METHODOLOGY ASSOCIATES *** LSWT VERSION 1.00 RELEASED MAY 1986 *** SERI IL-5-05105 

RECORD IMAGE OF INPUT FILE --------------------------

ENERTECH 1500 *** CMA STALL MODEL *** 05 

3.0 0.0 2.0 0.0 2.0 1.0 2.0 0.0 

0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 170.0 1.0 1.0 4.0 1.0 15.0 1.0 0.0 0.0 1.0 400.0 

3.0 2.0 2.0 6.560 

1.3333 12.0 0.0 180.0 30.0 1.0 0.0 0.0 1.0 14.0 15.0 17.0 10.0 1.0 0.25 0.840 5.057760 0.0 0.0 0.0 0.0 0.0 0.0 2.0 

0.0 5.057760 

0.58333 0.58333 2.0 

0.0 6.560 

-5.7294 0.0 2.0 

0 0.0 6.560 I 0.0 0.0 

N 1.0 

U'I 130.0 0.0 6.560 

5.0 4.0 0.25 5.057760 6.560 0.0 0.0 0.0 0.0 0.0 0.0 2.0 

5.057760 6.560 

0.58333 0.541667 

2.0 

0.0 6.560 

-5.7294 

2.0 

0.0 

0.0 6.560 

0.0 

1.0 0.0 

130.0 0.0 6.560 1.0 3.0 
130.0 

5.0 

0.15 

-6.0 

-4.0 

-2.0 

0.0 

2.0 

4.0 

6.0 

8.0 

9.0 

10.0 

11.0 

12.0 

13.0 

14.0 

15.0 

-6.0 

-4.0 

-2.0 

0.0 

2.0 

4.0 

6.0 

8.0 

9.0 

10.0 

11.0 

12.0 

13.0 

14.0 

-180.0 

180.0 

NACA 4415 *** VDT 1163 TR 586 *** CMA STALL MODEL 15.0 5.0 14.0 1.0 2.0 

32.0 1.0 1.0 0.0 2.0 0.5960 

0.0417 0.0830 0.1630 0.3340 0.6540 

-0.375 -0.175 -0.175 -0.200 -0.200 

-0.120 0.0100 0.0100 0.0100 0.0100 

0.1100 0.2100 0.2100 0.2100 0.2100 

0.3300 0.4000 0.4000 0.4000 0.4000 

0.5750 0.6000 0.6000 0.6000 0.6000 

0.7500 0.7800 0.8100 0.8100 0.8100 

0.9100 0.9400 0.9800 1.0000 1.0000 

1.0800 1.0800 1.0800 1.1400 1.1400 

1.1250 1.1250 1.1250 1.1750 1.1900 

1.1900 1.1900 1.2000 1.2000 1.2500 

1.2200 1.2200 1.2200 1.2500 1.3000 

1.2450 1.2450 1.2450 1.2900 1.3400 

1.1850 1.2500 1.2500 1.3050 1.3750 

1.0950 1.2350 1.2600 1.3200 1.3800 

1.0150 1.1900 1.2600 1.3200 1.3900 

0.0417 0.0830 0.1630 0.3340 0.6540 

0.0460 0.0330 0.0215 .0.0160 0.0145 

0.0380 0.0265 0.0170 0.0130 0.0120 

0.0340 0.0250 0.0160 0.0125 0.0120 

0.0320 0.0230 0.0150 0.0125 0.0115 

0.0305 0.0230 0.0155 0.0135 0.0115 

0.0305 0.0240 0.0180 0.0155 0.0140 

0.0320 0.0275 0.0220 0.0190 0.0165 

0.0375 0.0335 0.0270 0.0230 0.0210 

0.0415 0.0375 0.0315 0.0255 0.0240 

0.0495 0.0445 0.0390 0.0270 0.0275 

0.0575 0.0520 0.0425 0.0330 0.0355 

0.0716 0.0662 0.0490 0.0475 0.0475 

0.0868 0.0816 0.0650 0.0650 0.0640 

0.1031 0.0981 0.0821 0.0821 0.0811 

0.0 

0.0 

0.0 
COMPUTATIONAL METHODOLOGY ASSOCIATES *** LSWT VERSION 1.00 RELEASED MAY 1986 *** SERI IL-5-05105 --------------------------------------------------------------------------------------------------------------------------

ENERTECH 1500 *** CMA STALL MODEL *** 05 

REFERENCE BLADE SURFACE PANEL COORDINATES -----------------------------------------

I,J 2 3 4 5 6 7 8 9 10 11 

1 X -.022226 -.022230 -.022230 -.022230 -.022229 -.022227 -.022225 -.022221 -.022216 -.022211 -.022204 Y .128049 .192344 .256639 .320934 .385229 .449524 .513820 .578115 .642410 .706705 .771000 

Z -.000453 -.000202 -.000059 .000084 .000227 .000369 .000511 .000653 .000796 .000938 .001080 

2 X .003813 .003814 .003814 .003814 .003814 .003814 .003813 .003813 .003812 .003811 .003810 

Y .128049 .192344 .256639 .320934 .385229 .449524 .513820 .578115 .642410 .706705 .771000 

Z .000078 .000035 .000010 -.000014 -.000039 -.000063 -.000088 -.000112 -.000136 -.000161 -.000185 

3 X .066678 .066689 .066691 .066691 .066688 .066682 .066674 .066663 .066649 .066632 .066613 

Y .128049 .192344 .256639 .320934 .385229 .449524 .513820 .578115 .64?410 .706705 .771000 

Z .001359 .000605 .000176 -.000252 -.000681 -.001108 -.001534 -.001960 -.002387 -.002813 -.003239 

I,J 12 13 14 15 16 17 

1 X -.022204 -.021706 -.021256 -.020899 -.020669 -.020590 

Y .771000 .841765 .905603 .956265 .988792 1.000000 

Z .001080 .001209 .001321 .001405 .001457 .001474 

0 2 X .003810 .003724 .003647 .003586 .003546 .003533 I Y .771000 .841765 .905603 .956265 .988792 1.000000 N Z -.000185 -.000208 -.000227 -.000241 -.000250 -.000253 ...... 3 X .066613 .065119 .063769 .062697 .062008 .061770 

Y .771000 .841765 .905603 .956265 .988792 1.000000 

Z -.003239 -.003628 -.003962 -.004214 -.004370 -.004423 
COMPUTATIONAL METHODOLOGY ASSOCIATES *** LSWT VERSION 1.00 RELEASED MAY 1986 *** SERI IL-5-05105 

ENERTECH 1500 *** CMA STALL MODEL *** 05 

REFERENCE BLADE COLLOCATION POINT COORDINATES ---------------------------------------------

I,J 2 3 4 5 6 7 8 9 , 10 

X -.013203 -.013204 -.013204 -.013203 -.013203 -.013201 -.013199 -.013197 -.013194 -.013190 

Y .160196 .224491 .288787 .353082 .417377 .481672 .545967 .610262 .674557 .738852 

Z -.000162 -.000077 .000008 .000092 .000177 .000261 .000346 .000430 .000514 .000599 

2 X .029017 .029018 .029019 .029018 .029016 .029013 .029009 .029003 .028997 .028989 

Y .160196 .224491 .288787 .353082 .417377 .481672 .545967 .610262 .674557 .738852 

Z .000357 .000170 -.000017 -.000203 -.000389 -.000574 -.000760 -.000945 -.001131 -.001316 

I,J 11 12 13 14 15 

1 X -.013040 -.012759 -.012519 -.012345 -.012253 

Y .806382 .873684 .930934 .972528 .994396 

Z .000680 .000752 .000810 .000850 .000870 

2 X .028660 .028041 .027514 .027131 .026929 Y .806382 .873684 .930934 .972528 .994396 z -.001495 -.001652 -.001779 -.001868 -.001913 

0 

I 

N 

00 
o 

I 

N 

\.0 

COMPUTATIONAL METHODOLOGY ASSOCIATES *** LSWT VERSION 1.00 RELEASED MAY 1986 *** SERI IL-5-05105 

POINT 7: ENERTECH 1500 *** CMA STALL MODEL *** 05 ROTOR PITCH (DEG) .0000 

WIND SPEED (M/SEC) 10.0000 

ROTOR AZIMUTH (DEG) .0000 

WORKING STATE AND WAKE RATE PARAMETERS 

WINDMILL BRAKE STATE 

REFERRED VELOCITIES 

AXIAL ONSET 2.96268E+00 

INDUCED -3.99491E-01 

REFERENCE WAKE PARAMETERS~ 

CTRW 1.87344E-u2 

AKZO -1.36874E-01 

ALAMO 5.47495E-01 

AKRO -4.00000E+00 

MODIFIED WAKE 

AKZW 

AKZI 

AKZ 

AKR 

A 

AKB 

PARAMETERS, 2.80934E-01 

-3.10553E-02 

2.49878E-01 

2.19105E+00 

1.22000E+00 

1.82561E+00 
o 

I 

W 

o 

COMPUTATIONAL METHODOLOGY ASSOCIATES *** LSWT VERSION 1.00 RELEASED MAY 1986 *** SERI IL-5-05105 

POINT 7: ENERTECH 1500 *** CMA STALL MODEL *** 05 ROTOR PITCH (DEG) .0000 

WIND SPEED (M/SEC) 10.0000 

ROTOR AZIMUTH (DEG) .0000 

BLADE 1 ELEMENT CHARACTERISTICS 

GEOMETRY 

ELEMENT NUMBER 

ELE CENTER STATION 

CHORD 

ELEMENT SPAN 

LEADING EDGE SWEEP 

AERODYNAMIC SWEEP 

ANGLES OF ATTACK 

GEOMETRIC PITCH 

ZERO LIFT LINE 

EFFECTIVE ANGLE 

WIND ANGLE 

INFLOW ANGLE 

INDUCED ANGLE 

VELOCITIES 

INDUCED VELOCITY 

RELATIVE VELOCITY 

REYNOLDS NUMBER 

RELATIVE Q 

AERODYNAMIC COEFFICIENTS 

ELE LIFT COEF 

ELE DRAG COEF 

ELE MO~lENT COEF 

FORCE LOADING 

ELE X FORCE 

ELE IND X FORCE 

ELE PRO X FORCE 

ELE Z FORCE 

ELE IND Z FORCE 

ELE PRO Z FORCE 

TORQUE LOADING 

ELE PRO TORQUE ELE IND TORQUE ELE TORQUE 

PITCHING MOMENT LOADING 

ELE PITCH MOMENT 

LIFT SLOPE CONVERGENCE 

INPUT LIFT SLOPE 

CLIALPHAE 

CIRCULATION PARAMETERS 

CIRC SHAPE PARM 

BOUND CIRCULATION 

FT 

FT 

DEG 

DEG 

DEG 

DEG 

DEG 

DEG 

DEG 

DEG 

FT/SEC 

FT ISEC 

PSF 

LBS/FT 

LBS/FT 

LBS/FT 

LBS/FT 

LBS/FT 

LBS/FT 

1 

1.602E-01 

5.833E-01 

4.218E-01 

.OOOE+OO 

4.120E+00 

2 

2.245E-01 

5.833E-01 

4.218E-01 

.OOOE+OO 

3.600E+OO 

3 

2.888E-01 

5.833E-01 

4.218E-01 

1.978E-02 

3.2S1E+00 

4 

3.531E-01 

5.833E-01 

4.218E-01 

.OOOE+OO 

2.904E+00 

5 

4.174E-01 

5.833E-01 

4.218E-01 

.OOOE+OO 

2.603E+00 

6 

4.817E-01 

5.833E-01 

4.218E-01 

1.978E-02 2.348E+00 

7 

5.460E-01 

5.833E-01 

4.218E-01 

.OOOE+OO 

2.140E+00 

8 

6. 1 03E-01 

5.833E-01 

4.218E-01 

.OOOE+OO 

1.960E+00 

-4.812E+00 -4.443E+00 -4.075E+00 -3.706E+00 -3.338E+00 -2.970E+00 -2.601E+00 -2.233E+00 

-4.107E+00 -4.107E+00 -4.107E+00 -4.105E+00 -4.104E+00 -4.102E+00 -4.100E+00 -4.098E+00 

5.284E+01 4.649E+01 3.983E+01 3.501E+01 3.132E+01 2.832E+01 2.536E+01 2.288E+01 

6.031E+01 5.137E+01 4.421E+01 3.851E+01 3.394E+01 3.025E+01 2.723E+01 2.472E+01 

5.856E+01 5.071E+01 4.288E+01 3.721E+01 3.282E+01 2.921E+01 2.568E+01 2.267E+01 

-2.321E+00 9.238E-01 -6.8B4E-01 -7.851E-01 -6.653E-01 -6.378E-01 -1.291E+00 -1.B78E+00 

8.619E-01 9.886E-01 1.150E+00 1.205E+00 1.225E+00 1.283E+00 1.414E+00 1.570E+00 

3.762E+01 4.304E+01 4.767E+01 5.336E+01 5.952E+01 6.597E+01 7.237E+01 7.B98E+01 

1.403E+05 1.606E+05 1.778E+05 1.990E+05 2.220E+05 2.461E+05 2.699E+05 2.946E+05 

1.683E+OO 2.203E+OO 2.702E+OO 3.385E+OO 4.212E+OO 5.175E+OO 6.227E+00 7.417E+OO 

5.879E-01 6.664E-01 

6.683E-01 5.865E-01 

.OOOE+OO .OOOE+OO 

8.259E-01 

5.696E-01 

.OOOE+OO 

9.068E-01 

5.123E-01 

.OOOE+OO 

-3.000E+00 -7.981E+00 -9.B14E+00 -1.193E+01 

-1.772E+01 -2.852E+01 -3.812E+01 -4.660E+01 

1.472E+01 2.054E+01 2.831E+01 3.467E+01 

3.70BE+01 4.844E+01 6.734E+01 8.769E+01 

1.299E+01 2.334E+01 4.105E+01 6.137E+01 

2.409E+01 2.510E+01 2.629E+01 2.633E+01 

9.487E-01 9.952E-01 

3.710E-01 2.765E-01 

.OOOE+OO .OOOE+OO 

1.059E+00 1.135E+OO 

2.009E-01 1.501E-01 

.OOOE+OO .OOOE+OO 

-2.141E+01 -3.174E+01 -4.344E+01 -5.569E+01 

-5.437E+01 -6.309E+01 -7.174E+01 -B.148E+01 

3. 297E+01 3.135E+01 2.830E+01 2.578E+01 

1.056E+02 1.304E+02 1.628E+02 2.059E+02 

B.430E+01 1.128E+02 1.492E+02 1.951E+02 

2. 126E+01 1.753E+01 1.361E+01 1.077E+01 

FT-LBS/FT 1.547E+01 3.025E+01 

FT-LBS/FT -1.862E+01 -4.200E+01 

FT-LBS/FT -3.152E+00 -1.175E+01 

5.363E+01 8.030E+01 9.026E+01 9.906E+01 1.013E+02 1.032E+02 

-7.222E+01 -1.079E+02 -1.489E+02 -1.993E+02 -2.569E+02 -3.262E+02 

-1.859E+01 -2.764E+01 -5.861E+01 -1.003E+02 -1.556E+02 -2.230E+02 

(20) 

FT-LBS/FT .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO 

IRAD 

IRAD 

7. 349E-01 9.375E-01 1.301E+OO 1.579E+OO 1.828E+00 2.117E+00 2.570E+OO 3.083E+OO 

7.377E-01 9.189E-01 1.289E+OO 1.5BOE+00 1.825E+00 2.098E+OO 2.472E+00 2.921E+OO 

8.377E-01 8.357E-01 8.490E-01 8.568E-01 B.632E-01 8.707E-01 8.859E-01 9.028E-01 

FT**2/SEC 6.415E+00 8.524E+OO 1.157E+01 1.409E+01 1.648E+01 1.931E+01 2.322E+01 2.760E+01 
o 

I 

W 

..... 

COMPUTATIONAL METHODOLOGY ASSOCIATES *** LSWT VERSION 1.00 RELEASED MAY 1986 *** SERI IL-5-05105 --------------------------------------------------------------------------------------------------------------------------

POINT 7: ENERTECH 1500 *** CMA STALL MODEL *** 05 

ROTOR PITCH (DEG) .0000 

WIND SPEED (M/SEC) 10.0000 

ROTOR AZIMUTH (DEG) .0000 

BLADE 1 ELEMENT CHARACTERISTICS 

GEOMETRY 

ELEMENT NUMBER 

ELE CENTER STATION 

CHORD 

ELEMENT SPAN 

LEADING EDGE SWEEP 

AERODYNAMIC SWEEP 

ANGLES OF ATTACK 

GEOMETRIC PITCH 

ZERO LIFT LINE 

EFFECTIVE ANGLE 

WIND ANGLE 

INFLOW ANGLE 

INDUCED ANGLE 

VELOCITIES 

INDUCED VELOCITY 

RELATIVE VELOCITY 

REYNOLDS NUMBER 

RELATIVE Q 

AERODYNAMIC COEFFICIENTS 

ELE LIFT COEF 

ELE DRAG COEF 

ELE MOMENT COEF 

FORCE LOADING 

ELE X FORCE 

ELE IND X FORCE 

ELE PRO X FORCE 

ELE Z FORCE 

ELE IND Z FORCE 

ELE PRO Z FORCE 

FT 

FT 

DEG 

DEG 

DEG 

DEG 

DEG 

DEG 

DEG 

DEG 

FT/SEC 

FT/SEC 

PSF 

LBS/FT 

LBS/FT 

LBS/FT 

LBS/FT 

LBS/FT 

LBS/FT 

9 

6.746E-01 

5.833E-01 

4.218E-01 

1.978E-02 

1.809E+00 

10 

7.389E-01 

5.833E-01 

4.218E-01 

.OOOE+OO 

1.674E+00 

11 

8.064E-01 

5.769E-01 

4.642E-01 

3.976E-01 

1.534E+00 

12 

8.737E-01 

5.646E-01 

4.188E-01 

3.971E-01 

1.400E+00 

13 

9.309E-01 

5.542E-01 

3.323E-01 

3.971E-01 

1.309E+00 

14 

9.725E-01 

5.467E-01 

2.134E-01 

3.971 E-01 

1.261E+OO 

15 

9.944E-01 

5.427E-01 

7.352E-02 

3.976E-01 

1.247E+OO 

-1.865E+00 -1.496E+00 -1.109E+00 -7.237E-01 -3.957E-01 -1.574E-01 -3.211E-02 

-4.096E+00 -4.096E+00 -4.096E+00 -4.096E+00 -4.096E+OO -4.096E+OO -4.096E+00 

2.051E+01 1.874E+01 1.736E+01 1.580E+01 1.346E+01 1.007E+01 6.336E+OO 

2.261E+01 2.082E+01 1.921E+01 1.783E+01 1.679E+01 1.611E+01 1.578E+01 

1.979E+01 1.614E+01 1.437E+01 1.243E+01 9.756E+00 6.130E+OO 2.272E+OO 

-2.734E+00 -4.678E+00 -4.834E+00 -5.399E+00 -7.036E+00 -9.983E+OO -1.350E+01 

1. 715E+00 1.808E+00 1.846E+00 1.812E+00 1.497E+00 4.092E-01 -1.043E+00 

8.559E+01 9.243E+01 9.976E+01 1.069E+02 1.122E+02 1.149E+02 1.153E+02 

3.192E+05 3.447E+05 3.680E+05 3.859E+05 3.978E+05 4.015E+05 4.000E+05 

8.710E+00 1.016E+01 1.183E+01 1.358E+01 1.498E+01 1.569E+01 1.580E+01 

1.238E+00 1.321E+00 1.315E+00 1.285E+00 1.189E+00 9.969E-01 6.249E-01 

1.118E-01 8.905E-02 6.935E-02 4.327E-02 2.587E-02 1.842E-02 1.334E-02 

.OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO 

-6.863E+01 -6.356E+01 -6.840E+01 -7.164E+01 -6.351E+01 -4.381E+01 -1.497E+01 

-9.163E+01 -B.537E+01 -B.813E+01 -8.559E+01 -7.262E+01 -5.057E+01 -1.989E+01 

2.300E+01 2.1B1E+01 1.974E+01 1.395E+01 9.109E+00 6.759E+OO 4.915E+00 

2.629E+02 3.295E+02 3.789E+02 4.171E+02 4.202E+02 3.673E+02 2.313E+02 

2.546E+02 3.232E+02 3.739E+02 4.140E+02 4.186E+02 3.666E+02 2.311E+02 

8.277E+00 6.312E+OO 5.058E+00 3.074E+00 1.566E+OO 7.258E-01 1.950E-01 

TORQUE LOADING 

ELE PRO TORQUE ELE IND TORQUE ELE TORQUE 

FT-LBS/FT 1.018E+02 1.057E+02 1.044E+02 7.995E+01 5.563E+01 4.312E+01 3.206E+01 

FT-LBS/FT -4.055E+02 -4.138E+02 -4.662E+02 -4.906E+02 -4.435E+02 -3.226E+02 -1.297E+02 

FT-LBS/FT -3.037E+02 -3.081E+02 -3.618E+02 -4.106E+02 -3.878E+02 -2.795E+02 -9.767E+01 

PITCHING MOMENT LOADING (2D) 

ELE PITCH MOMENT FT-LBS/FT .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO .OOOE+OO 

LIFT SLOPE CONVERGENCE 

INPUT LIFT SLOPE IRAD 3.685E+OO 4.143E+00 4.441E+00 4.731E+00 5.166E+00 5.687E+OO 5.670E+00 

CL/ALPHAE IRAD 3. 532E+00 4.112E+00 4.408E+00 4.722E+00 5.109E+00 5.702E+OO 5.663E+00 

CIRCULATION PARAMETERS 

CIRC SHAPE PARM 9.245E-01 9.406E-01 9.513E-01 9.666E-01 1.004E+00 1.093E+OO 1.212E+00 

BOUND CIRCULATION FT**2/SEC 3.222E+01 3.587E+01 3.812E+01 3.886E+01 3.738E+01 3.121E+01 1.957E+01 
o 

I 

W 

N 

COMPUTATIONAL METHODOLOGY ASSOCIATES *** LSWT VERSION 1.00 RELEASED MAY 1986 *** SERI IL-S-OS10S 

POINT 7: ENERTECH 1500 *** CMA STALL MODEL *** 05 ROTOR PITCH (DEG) .0000 

WIND SPEED (M/SEC) 10.0000 

ROTOR AZIMUTH (DEG) .0000 

ROTOR PERFORMANCE 

THRUST LBS 8.3094E+01 CT ROTOR 1.8951E-02 CT WT 4.8024E-01 

TORQUE FT-LBS -7. 2929E+01 CQ ROTOR -2.5355E-03 CP WT -2.2871E-01 

POWER (ROTOR) KW -1.7603E+00 POWER (PROFILE) KW 7 .• 4273E-01 POWER (INFLOW) KW -2.5030E+00 
Document Control 11. SERI Report No. I <::. Nil;:) foIcce551Urt 

IU. 

Page SF.RT ISTR-217-3l63 

4. Title and Subtitle 

Lifting Surface Performance Analysis 

for Horizontal Axis Wind Turbines 

7. Author(s) 

D. Kocurek 

9. Performing Organization Name and Address 

Computational Methodology Associates 

2900 Steve Drive 

Hurst, Texas 76054 

12. Sponsoring Organization Name and Address 

Solar Energy Research Institute 

A Division mf Midwest Research Institute 

1617 Cole Blvd. 

Golcll"n C:olorado ROt..Ol ·3391 

15. Supplementary Notes 

Technical Monitor: James TangIer 

5. Publication Date 

June 1987 

6. 

8. Performing Organization Rept. No. 

10. Project/Task/Work Unit No. 

4845.10 

11. Contract (C) or Grant (G) No. 

(e) IL-5-05105-1 

(G) 

13. Type of Report & Period Covered 

Technical Report 

14. 

16. Abstract (Limit: 200 words) This report describes how numerical lifting-surface 

theory is applied to the calculation of a horizontal-axis wind turbine's aerodynamic characteristics and performance. The report also describes how such an 

application is implemented as a computer program. The method evolved from 

rotary-wing and helicopter applications and features a detailed, prescribed wake. 

The wake model extends from a hovering-rotor experimental generalization to 

include the effect of the windmill brake state on the radial and axial displacement rates of the trailing vortex system. Performance calculations are made by 

coupling the lifting-surface circulation solution to a blade-element analysis 

that incorporates two-dimensional airfoil characteristics as functions of angle 

of attack and Reynolds number. Several analytical stall models are also provided 

to extend the airfoil characteristics beyond the limits of available data. 

Although this work focuses on the steady-performance problem, the method includes 

ways to investigate the effects of wind-shear profile, tower shadow, and off-axis 

shaft alignment. Correlating the method to measured wind-turbine performance, 

and comparing it to blade-element momentum theory calculations, validate and 

highlight the extreme sensitivity of predictions to the quality of early poststall airfoil bahavior. 

17. Document Analysis 

a. Descriptors Wind Energy ; \Und Turbine ; Performance Analysis ; 

Simulation ; Numerical Theory ; Aerodynamic Characteristics 

b. Identifiers/Open-Ended Terms 

c. UC Categories 

18. Availability Statement 

National Technical Information Service 

U.S. Department of Commerce 

5285 Port Royal Road 

Springfield, Virginia 22161 

Form No. 0069 (3-25-82) 

19. No. of Pages 

319 

20. Price 

A14