# JavaFoil — Analysis of Airfoils

 JavaFoil is a new implementation of my older CalcFoil program. Like SimProp, CalcFoil was written solely for my web pages using the "C" language.  After rewriting SimProp using the "Java" language, I started to write JavaFoil for the same reasons (see my JavaProp pages).

## Theoretical Background

JavaFoil is a relatively simple program, which uses several traditional methods for airfoil analysis. The following two methods build the backbone of the program:

• The potential flow analysis is done with a higher order panel method (linear varying vorticity distribution). Taking a set of airfoil coordinates, it calculates the local, inviscid flow velocity along the surface of the airfoil for any desired angle of attack.
• The boundary layer analysis module steps along the upper and the lower surfaces of the airfoil, starting at the stagnation point. It solves a set of differential equations to find the various boundary layer parameters. It is a so called integral method. The equations and criteria for transition and separation are based on the procedures described by Eppler [13, 14, 15].

A standard compressibility correction according to Karman and Tsien has been implemented to take mild Mach number effects into account. As long as the flow stays subsonic (V below V* in the Velocity diagram), the results should be fairly accurate. Usually this means Mach numbers between zero and 0.5. You cannot analyze airfoils in transonic or fully supersonic flow with the methods in JavaFoil.

Some additional tools for creation and modification of airfoils have been added to fill the toolbox.

If supplied with the right food, the computer code will examine your airfoil. First it will calculate the distribution of the velocity on the airfoil surface which can be integrated to obtain the lift and the pitching moment. Then it will calculate the behavior of the flow close to the airfoil surface (the boundary layer). The boundary layer data can be used to calculate the friction drag of the airfoil as well as the pressure drag. Because the drag integration would be rather inaccurate, the total drag is obtained from the boundary layer parameters at the trailing edge, using the "Squire-Young" approximation. Both steps (potential flow and boundary layer analysis) are repeated for the given range of angle of attacks, which yields a complete polar of the airfoil for one fixed Reynolds number.
Note that the calculations are performed by a computer code of my own, not by the Eppler or the XFOIL program. Only the boundary layer module was directly based on the method which is also found in the initial version of the Eppler program. Additions include new stall and transition models.

## Limitations

As said above, JavaFoil is a relatively simple program, with limitations. As with all engineering computer codes, it is up to the user to judge and to decide how far he wants to trust a program. Because JavaFoil does not model laminar separation bubbles and turbulent flow separation, the results will be incorrect if larger areas of flow separation are present. Massive separation, as it occurs at stall, is modeled to some extent by empirical corrections, so that maximum lift can be predicted approximately for "conventional" airfoils. If you analyze an airfoil beyond stall, the results will be quite inaccurate. It is questionable, whether any two dimensional analysis method can be used at all in this regime, as the flow field beyond stall is fully three dimensional with spanwise flow and possibly strong three dimensional vortices.

Please read all (yes, if I say all, I really do mean all!) the comments, instructions and tips - this may spare you time and trouble and lead to more realistic results. You might want to print out some pages for easier reading. There is also a short User's Manual in PDF format available.

Due to the increasing amount of SPAM mail, I have to change this e-Mail address regularly. You will always find the latest version in the footer of all my pages.

It might take some time until you receive an answer and in some cases you may even receive no answer at all. I apologize for this, but my spare time is limited. If you have not lost patience, you might want to send me a copy of your e-mail after a month or so.
This is a privately owned, non-profit page of purely educational purpose. Any statements may be incorrect and unsuitable for practical usage. I cannot take any responsibility for actions you perform based on data, assumptions, calculations etc. taken from this web page.