About Me
- Charles O'Neill, PhD
- I am an Aerospace Engineer with specialties in flutter, fluid structure interactions, and the use of CFD in a production environment. My dissertation shows how to improve the state-of-the-art unsteady CFD performance by 2 orders of magnitude. I am an engineer, a pilot, a marksman, a husband, and a dad.
Thursday, July 31, 2014
Wednesday, April 30, 2014
Hoerner's Fluid Dynamics
Sighard Hoerner's Fluid Dynamic Drag and Fluid Dynamic Lift are classic references in aerospace engineering and fluid dynamics. These books are wonderful for rapid design and analysis work; I adore my copies.
The books remain under copyright until 2045.
I have received multiple requests for purchasing information. Unfortunately (as of 2014), the copyright holder does not have a website or publicly visible contact information. After some due diligence, I found their information:
Distributor of Hoerner Fluid Dynamics
9815 Bourbon Rose Court
Bakersfield, CA 93311
(661) 965-3901
You can also reach them via email at:9815 Bourbon Rose Court
Bakersfield, CA 93311
(661) 965-3901
hoernerfdy@sbcglobal.net
The books (April 2014) are \$100 each plus \$7 to \$9 shipping.
Lift ISBN: 978-9998831636
Drag ISBN: 978-9991194448
Labels:
airfoil,
Fluid Dynamic Drag,
Fluid Dynamic Lift,
Hoerner,
reference book,
wing
Wednesday, April 9, 2014
Hydraulic Jump at Lake Tuscaloosa
Recently, Tuscaloosa received a sustained storm with significant
rainfall. The video shows a hydraulic jump (shock) at Lake Tuscaloosa's
spillway (channel flow).
The depth ratio is relatively small. We can compute the Froude number (and the velocity) based on this ratio of depth before and after the jump.
$$\frac{y_2}{y_1} = \frac{-1}{2} + \frac{\sqrt{1+8 Fr_1^2}}{2}$$
For a 10 foot depth before the jump and a 11 foot depth after (generous), the Froude number $Fr = \frac{v_1}{\sqrt{g y_1}} $ is approximately 1.1. This gives a pre-jump velocity of 20 ft/s. Reasonable based on my video.
Thursday, February 6, 2014
L Squared Error for a Fourier Sine Series
How close is my Fourier Sine series to a function f(x)?
Answer: $L_2(N) = -\frac{1}{2} a_n^2 + \int_\Omega f^2(x) dx$
This question came up recently while discussing PDE (partial differential equations) solution techniques. The final result is quite interesting.
Our sine series approximates the function f(x) over the domain $\Omega$ as $$f(x) \approx \sum {{a_n}\sin (n\pi x)}$$ You can determine the coefficients with the formula. $$ a_n = 2\int_\Omega f(x) sin(n\pi x) dx$$
One good measure of the error between the sine series and the function is the $L_2$, pronounced "el squared", error. $$ L_2 = \int_{\Omega} \left( u(x) - f(x) \right)^2 dx $$
Substitute for the sine series to obtain. $$ L_2 = \int_{\Omega} \left({{a_n}\sin (n\pi x)}- f(x) \right)^2 dx $$
Expand the terms to obtain $$ L_2 = \int_{\Omega} a_n^2 \sin^2(n\pi x) dx -2\int_{\Omega} a_n f(x) \sin(n \pi x) dx + \int_{\Omega} f^2(x) dx $$
Now, these integrals are particularly interesting. The first integral is a constant $0.5 a_n^2$. The second contains the definition of $a_n$. The third only contains the function $f^2(x)$. This simplifies to $$L_2(N) = -\frac{1}{2} a_n^2 + \int_\Omega f^2(x) dx$$
Interestingly, if we let the error become zero, the following is an identity $$ a_n^2 = 2 \int_\Omega f^2(x) dx$$ Knowledge of this identity will allow you to quickly compute integrals of squared trig functions.
Neat! Do you have any interesting Fourier results? Let me know in the comments.
Answer: $L_2(N) = -\frac{1}{2} a_n^2 + \int_\Omega f^2(x) dx$
This question came up recently while discussing PDE (partial differential equations) solution techniques. The final result is quite interesting.
Our sine series approximates the function f(x) over the domain $\Omega$ as $$f(x) \approx \sum {{a_n}\sin (n\pi x)}$$ You can determine the coefficients with the formula. $$ a_n = 2\int_\Omega f(x) sin(n\pi x) dx$$
One good measure of the error between the sine series and the function is the $L_2$, pronounced "el squared", error. $$ L_2 = \int_{\Omega} \left( u(x) - f(x) \right)^2 dx $$
Substitute for the sine series to obtain. $$ L_2 = \int_{\Omega} \left({{a_n}\sin (n\pi x)}- f(x) \right)^2 dx $$
Expand the terms to obtain $$ L_2 = \int_{\Omega} a_n^2 \sin^2(n\pi x) dx -2\int_{\Omega} a_n f(x) \sin(n \pi x) dx + \int_{\Omega} f^2(x) dx $$
Now, these integrals are particularly interesting. The first integral is a constant $0.5 a_n^2$. The second contains the definition of $a_n$. The third only contains the function $f^2(x)$. This simplifies to $$L_2(N) = -\frac{1}{2} a_n^2 + \int_\Omega f^2(x) dx$$
Interestingly, if we let the error become zero, the following is an identity $$ a_n^2 = 2 \int_\Omega f^2(x) dx$$ Knowledge of this identity will allow you to quickly compute integrals of squared trig functions.
Neat! Do you have any interesting Fourier results? Let me know in the comments.
Labels:
coefficients,
error,
Fourier,
integral,
interesting,
l squared,
L2,
sine series
Wednesday, December 4, 2013
Aero-engineer: Off the ground
How can I get my aerospace engineering interest off the ground?
Recently, a mechanical engineering student asked this question in response to an advertisement at http://aerofluids.com/ARPL/. He wants to make a career shift right out of undergraduate engineering school. This student needs to become proficient in aircraft design in 2 years. He must formulate a plan and stick to it religiously.
Time and Money: Your time is far more valuable than you think. Since the timeline is 2 years, you must obtain the fundamentals fast; your training will be steep and expensive. Your competitors may have spent the last 10 years studying, building, flying and discussing aircraft. Their experiences will initially help them find better solutions faster. Your primary advantage is dedication and more efficient learning. If you can trade money for time, take it.
Reference Books: You must understand and recall considerable technical information. The fundamentals are contained in textbooks and reference books. You don't need to buy the newest editions. Solve the problems. Start with these:
Technical Journals: The aerospace journals contain practical and theoretical design cases. Set aside a couple of hours per week to systematically read journals. Look up the unfamiliar concepts in an aerodynamics book (e.g. Anderson). Start with these journals:
Projects: Work on projects continuously. Write-up your projects and publish the results on your professional blog.
Naturally, accepting a position in a design lab would accelerate this process.
Recently, a mechanical engineering student asked this question in response to an advertisement at http://aerofluids.com/ARPL/. He wants to make a career shift right out of undergraduate engineering school. This student needs to become proficient in aircraft design in 2 years. He must formulate a plan and stick to it religiously.
Time and Money: Your time is far more valuable than you think. Since the timeline is 2 years, you must obtain the fundamentals fast; your training will be steep and expensive. Your competitors may have spent the last 10 years studying, building, flying and discussing aircraft. Their experiences will initially help them find better solutions faster. Your primary advantage is dedication and more efficient learning. If you can trade money for time, take it.
Reference Books: You must understand and recall considerable technical information. The fundamentals are contained in textbooks and reference books. You don't need to buy the newest editions. Solve the problems. Start with these:
- Funamentals of Aerodynamics, Anderson
- Hoerners Lift and Drag
- Theory of Wing Sections, Abott and von Doenhoff
- Aircraft Design, Raymer
- Any flight dynamics book by Roskam
- Boundary Layer Theory, Schlichting (older/used editions are ok)
Technical Journals: The aerospace journals contain practical and theoretical design cases. Set aside a couple of hours per week to systematically read journals. Look up the unfamiliar concepts in an aerodynamics book (e.g. Anderson). Start with these journals:
- AIAA Journal of Aircraft (ISSN 1533-3868, FREE e-copy at UA library)
- Annual Review of Fluid Mechanics
- AIAA Journal
Projects: Work on projects continuously. Write-up your projects and publish the results on your professional blog.
Naturally, accepting a position in a design lab would accelerate this process.
Wednesday, July 31, 2013
Structure and Interpretation of Surface Flows
![]() |
| J Green 1969 |
In the wind tunnel and production CFD environments, visualization of the fully 3D flow is a luxury rarely granted. For wind tunnels, even a 2D surface flow visualization is an expensive, messy, and incomplete tool. Learning to interpret and mentally visualize the flow structure is a critical skill.
So, in the spirit of a great book, SICP, the following documents from ONERA provide a wonderful explanation of the Structure and Interpretation of Surface Flows. After reading through these, you should be able to mentally visualize the 3D flow corresponding to the above image.
Document (5 parts):
1a
1b
2
3
4
Labels:
aerospace,
cfd,
fluid flow,
shock,
streamlines,
visualization,
wind tunnel
Thursday, July 4, 2013
Divergent Trailing Edge
"Why does a divergent trailing edge airfoil work? Wouldn't this increase drag?" A colleague recently asked this question. Good question!
First, we need understand the philosophy of use (application) for this type of airfoil: high subsonic and transonic aircraft designed for low drag about a specified lift coefficient: think long-range transport aircraft from the Boeing or Airbus families. Traditionally (since the 1960s), this application was served by supercritical airfoils such as the NASA SC(2) family.
Here's a quick discussion of three major reasons the concept works.
![]() |
| Divergent Trailing Edge Airfoil (Image from Patent US4858852 Fig.2) |
Here's a quick discussion of three major reasons the concept works.
- The divergent angles allows for an optimized lower-surface trailing-edge cusp to fill out the pressure profile without cusp separation bubbles. Result: lower Cd
- The divergent trailing edge tends to decrease the blunt trailing edge pressure. This decrease tends to promote less upper-surface boundary layer separation. Result: better Cdc, likely less AC shift
- The mid-chord (say 60% to 80% chord) tends to be significantly thicker. This allows for more flexibility in flap geometry. Result: better low speed performance
Labels:
airfoil,
design,
patent,
supercritical
Monday, February 18, 2013
Auscio Project
Auscio Project
Charles O'Neill
The financial panic of 2008 led to an interest in the relationship between metal prices and the US dollar. As a project, I created a free tracking program for Windows. You can see more at auscio.com.
This was an interesting project as it was my first exposure to Windows graphical programs. In particular, it required several modules:
- Gather prices from the web
- Store limit prices
- Timers
- Graphical Windows Buttons, Data Fields, etc
- Playing Sounds
Monday, May 7, 2012
Solo Photos
I soloed an airplane on the first day legally possible, my 16th birthday. So let's step back to a bright summer day in Weatherford OK in 1994.
The first stop is not the airport. No, the first step to flying an airplane is sitting in a doctor's office for a physical exam. When the weight of the paperwork equals the weight of the airplane, the airplane is said to be airworthy. With the medical certificate in hand, I'm off to the airport.
The airplane is a Cessna 152 with registration N64849. Looking at the FAA registration, she is a 1981 model and lives in LA nowadays. My flight instructor was Jack Sauer. I have no idea where he is now. He was initially quite skeptical of training a kid until a pre-preflight walk-around where I started naming aircraft parts and functions. Lesson learned: Know your stuff and doors open.
Afterwords, the traditional shirt-tail-cutting was performed.
Thanks to my parents for finding these long-lost photos.
![]() |
| CFI Jack Sauer, Airplane C-152 N64849, and Student Pilot Charles O'Neill in 1994 |
The first stop is not the airport. No, the first step to flying an airplane is sitting in a doctor's office for a physical exam. When the weight of the paperwork equals the weight of the airplane, the airplane is said to be airworthy. With the medical certificate in hand, I'm off to the airport.
Afterwords, the traditional shirt-tail-cutting was performed.
Labels:
first solo,
N64849,
solo
Monday, April 16, 2012
Fortran Array Reordering Utility (Freo)
Fortran and C order their arrays differently. Fortran is column major; C is row major. There are performance implications to using the wrong order.
What do you do when you inherit a 10k+ line Fortran code written in C order? Regular expressions are not reliable. By-hand conversion takes too long and is fraught with human errors. So, I wrote the freo program in Scheme to flip the indicies of a specified function. Freo transposes Fortran indicies. It correctly converted the entire 12k line code in 54 files without human help in a few seconds.
Download exe file at: freo.exe and .scm code at: freo.scm. The code is not pretty and not optimal, but it does exist and does work. The code is compiled to a windows exe with Chicken Scheme.
Labels:
arrays,
c,
chicken scheme,
column major,
Fortran,
indicies,
row major,
scheme,
transpose
Photos from Dryden 2003
Photos from Dryden in 2003.
The first photo is from a small museum.
The second photo captures an interesting aircraft.
Sunday, April 8, 2012
Project: C Functions and Programs on the PIC 16F876
C Functions and Programs on the PIC 16F876
Charles O'Neill
September 2004
This project’s purpose is to become familiar with C programming on the PIC 16F876 micro-controller. Each of the four programs demonstrates a particular aspect of micro-controller C programming: mathematical operations, functions, simple data input, and pointers.
The micro-controller is a 28 pin DIP PIC16F876 manufactured by Microchip. The PIC voltage input is +5 volts DC via a µA7805 dc/dc voltage regulator. The compiler is the CCS C compiler (v. 3.207) for 14 bit PIC chips. C compilation occurs on a x86 based PC. Data transfer between the PIC and the PC is through a 9 pin serial cable.
The full project is available here.
Labels:
c,
PIC,
PIC 16F876
Presentation: Aircraft Flight Dynamics with a Non-Inertial CFD Code
Aircraft Flight Dynamics with a Non-Inertial CFD Code
AIAA 2005-0230
Charles O'Neill
Jan 2005
Reno, NV
This project was presented as AIAA 2005-0230 and concerns coupling a non-inertial CFD code with a 6 DOF (degree of freedom) rigid body dynamics simulator. Quaternions are used for attitude orientation. The result is a computational aircraft flight dynamics simulation. The paper shows flight maneuvers such as rolls, loops, and thin-strip Magnus lift production.
![]() |
| Navion Roll with Rudder Deflection |
Friday, March 30, 2012
Note: Step Response of Second Order Systems
Step Responses of Second Order Systems
Charles O'Neill
ca. 1998
Second order systems are fundamental to the analysis of systems with mass, stiffness and damping. This one-page note starts with the 2nd order characteristic equation and discusses three possible responses: over damped, critically damped, and under damped. The responses are given in the time domain.
The one-page summary is available here.
Report: Low Reynolds Number Airfoils
Low Reynolds Number Airfoils
Charles O’Neill
November 30, 2001
Low Reynolds number flows concern flows with a small ratio of inertial to viscous forces. Laminar flow dominates this flow region. Low Reynolds number flight is the most common (birds, insects...) yet it proves difficult and inefficient in human controlled flight. This paper discusses and shows some characteristics of low Reynolds number flows.
![]() |
| Laminar Separation Bubble: From Reference 5 |
The short paper is available here.
Simpson Integration Rules Fast Derivation with B-Splines
Simpson Integration Rules
Fast Derivation with B-Splines
(including partial integrals)
Charles O'Neill
29 October 2010
The 3 and 4 point Simpson rules numerically integrate equally-spaced discrete data values. The 4 point rule is typically named Simpson's 3/8 rule. This short note describes an interesting and fast derivation of Simpson's rules including the associated partial integrals. Non-multiple data point integration is discussed in a surprising finale to Simpson's 3/8ths rule.
The full derivation is available here.
Labels:
b-splines,
knapsack,
numerical integration,
simpson integration,
splines
Tuesday, March 27, 2012
Project: Stepping Motor Control
Stepping Motor Control
Charles O’Neill
19 November 2004
This project’s objective is to describe and control a DC stepping motor. Qualitative stepper motor theory is presented. An example driver with schematic using the PIC16F876 programmed in C is included.
The mini-project is available here.
Labels:
16F876,
c,
driver,
PIC,
PIC 16F876,
pic16f876,
schematic,
stepping motor
Project: Helicopter Rotor Unsteady Aerodynamics
Helicopter Rotor Unsteady Aerodynamics
Charles O’Neill
April 26, 2002
Helicopters can’t fly; they’re just so ugly the earth repels them.
-- Anonymous
![]() |
| From: A. R. S. Bramwell, Helicopter Dynamics. New York: John Wiley & Sons, 1976 |
The helicopter rotor is a fundamentally unsteady aerodynamic process. Rotor analysis goes from simple 1D shed vorticity models to fully 3D transient turbulent experiments. While the fundamentals of unsteady rotor ?ow are known, an overall theory with a closed form solution is clearly impossible. Further developments in unsteady helicopter aerodynamics will continue as long as the helicopter is a viable transportation vehicle.
The full paper is available here.
Labels:
aerodynamics,
helicopter,
theodorsen,
unsteady
Thursday, March 8, 2012
Capstone Senior Design Project AIAA 2001 Design-Build-Fly UAV “Shamu
Capstone Senior Design Project:
AIAA 2001 Design-Build-Fly UAV “Shamu"
A capstone senior design project completes a formal undergraduate engineering program. Thus, much like the architectural capstone, the engineering capstone course proves, finalizes and protects the underlying structure. My aerospace engineering senior design course at Oklahoma State University followed this tradition by being a semester long, high pressure, team oriented, and successful UAV (Unmanned Aerial Vehicle). Starting from nothing, we designed, built, and flew a competition winning UAV in 4 months.![]() |
| On runway just before a testflight |
Vehicle, Mission, and Competition
The AIAA Design-Build-Fly (DBF) contest provides a yearly international competitive environment for university aerospace engineering students when given a specified mission profile and physical constraints. For 2001, the DBF contest tasked teams with flying two payloads, low density tennis balls and high density steel, around a given flight pattern with a time limit. Score depended on ball volume, steel weight, flight laps, and written project proposal and test-flight reports. The contest was held at NAS Patuxent River, Maryland in April 2001.
Our final vehicle was a low wing, conventional configuration aircraft with a 10 ft wingspan, 1500 Watt motor, and a 16 pound maximum payload. Takeoff at the 35 pound gross weight required 200 ft. The primary structure consisted of carbon fiber skin with a foam core. The untapered, unswept, polyhedral wing consisted of a carbon fiber skin with a foam core; the spar was built-up of both a carbon fiber shear web and a wood spar cap. Configuration details and photos are available at http://bit.ly/Shamu2001. A large horizontal was required for short-field takeoff rotation, so we named the aircraft after a famous killer whale, Shamu. With this aircraft, our team won 1st place among 27 teams. An official AIAA write-up is available at http://bit.ly/Shamu2001-AIAA.
My Role
My role in the Aerodynamics Group was critical for the aircraft's performance and the team's success. My primary responsibility consisted of aircraft performance and contest score optimization. I converted the DBF contest's written “request for proposal” (i.e. rules) into a computational aircraft flight simulation in MathCad for tracking the aircraft's energy budget throughout the missions. A global optimization routine allowed for optimizing and selecting the plane, motor, and batteries simultaneously. Coordination of detailed performance data and interactions between the Structures and Propulsion groups became increasingly critical as aerodynamics performance, structural weight, and propulsion models developed from conceptual to final design tolerances. As the design process wound down, my responsibilities shifted to construction and then to flight testing. I constructed the wing spars and the carbon-fiber wing skins; the low Re airfoil necessitated smooth skins. Flight test data allowed for performance and simulation tuning, which allowed further score optimization.
Flight test clips of the prototype and final aircraft are at http://bit.ly/ShamuFlightTest.
Challenges
Challenges always exist in a complex project.
Weather uncertainties were amplified by the 200 foot takeoff constraint. Headwind determined the gross weight. This challenge forced a statistical optimization based on the plane and historical weather. Better yet, solving the challenge allowed real-time performance envelope and mission loading data for the flight crew.
During the prototype's flight tests, the cruise speed was significantly less than predicted. Working with experimental propeller, and motor curves, we identified that the motor winding was customized and differed from the motor's specification. A correctly wound motor fixed the cruise speed problem.
Airfoil selection was strongly constrained to low Re and high CL. Most airfoils meeting those criteria had strong maximum surface curvature with delicate trailing edges. After browsing experimental wind tunnel data and airfoil profiles, I selected a set of candidates, parameterized their CL, CD, and polar curves, and then simulated the competition score. The Eppler 423 was selected.
I enjoyed my senior design project and the challenges it presented.
Labels:
2001,
aerodynamics,
aiaa dbf,
dbf 2001,
matlab,
oklahoma state university,
patuxent,
shamu
Tuesday, March 6, 2012
Cold Gas Thruster Lab Experiment
Aerospace Engineering Laboratory:
Cold Gas Thruster:
Charles O'Neill
1st March 2001
A compressible flow supersonic nozzle using Nitrogen is experimentally tested. A
shadowgraph visualization system is setup. Specific impulse calculations are performed
from theoretical and experimental data. Compressible flow equations are reviewed.
Includes shadowgraph photos of Prandtl-Meyer fans aft of a nozzle.
![]() |
| Supersonic Nozzle Operating Above Design Pressure (250psi) with P-M waves |
The document is available here. This was an undergraduate laboratory experiment.
Labels:
choked,
compressible flow,
fan,
nozzle,
prandtl meyer,
prandtl-meyer,
specific impulse,
supersonic
Subscribe to:
Posts (Atom)











