Sunday, September 11, 2011

List of Aerospace Texts

Here's a list of text books that roughly fit an aerospace engineering undergraduate degree. I left off the soft courses. I'd appreciate feedback and suggestions, please. I'm particularly lacking on the space side, I think.

Number on left indicates roughly which semester (2 to 3 semesters a year) you might encounter the material. So higher numbers correspond to (in theory) more difficult material. Pure graduate level material is listed as G.




1-4) Calculus, Stewart -- This is a very common book and I felt it was ok, but there's mixed opinions about it. Try to get a cheap, used copy.

1-4) Calculus, A New Horizon, Anton -- This is highly valued by many people, but I haven't read it.

1-4) Essential Calculus With Applications, Silverman -- Dover book.

More discussion in this reddit thread.

Linear Algebra

3) Linear Algebra and Its Applications,Lay -- I had this one in school. I think it was decent.

3) Linear Algebra, Shilov -- Dover book.

Differential Equations

4) An Introduction to Ordinary Differential Equations, Coddington -- Dover book, highly reviewed on Amazon.

G) Partial Differential Equations, Evans

G) Partial Differential Equations For Scientists and Engineers, Farlow

More discussion here.

Numerical Analysis

5) Numerical Analysis, Burden and Faires


1) General Chemistry, Pauling is a good, low cost choice. I'm not sure what we used in school.


2-4) Physics, Cutnel -- This was highly recommended, but I've not read it.


Introductory Programming

Programming is becoming unavoidable as an engineering skill. I think Python is a strong introductory language that's got a lot of uses in industry.

1) Learning Python, Lutz

1) Learn Python the Hard Way, Shaw -- Gaining popularity, also free online.

Core Curriculum:


1) Introduction to Flight, Anderson


3) Introduction to Fluid Mechanics, Fox, Pritchard McDonald

4) Fundamentals of Aerodynamics, Anderson

4) Theory of Wing Sections, Abbot and von Doenhoff -- Dover book, but very good for what it is.

4) Aerodynamics for Engineers, Bertin and Cummings -- Didn't use this as the text (used Anderson instead) but it's got more on stuff like Vortex Lattice Methods.

7) Modern Compressible Flow: With Historical Perspective, Anderson

8) Computational Fluid Dynamics, Anderson

Thermodynamics, Heat transfer and Propulsion:

4) Introduction to Thermodynamics and Heat Transfer, Cengel

7) Mechanics and Thermodynamics of Propulsion, Hill and Peterson

7) Rocket Propulsion Elements, Sutton and Biblarz

Flight Mechanics, Stability and Control

5+) Flight Stability and Automatic Control, Nelson

5+)Performance, Stability, Dynamics, and Control of Airplanes, Second Edition -- I gather this is better than Nelson

5) Airplane Aerodynamics and Performance, Roskam and Lan

5) Spacecraft Dynamics and Control: A Practical Engineering Approach, Sidi

Electrial, Electronic and Dynamical Systems

5) Electrical Engineering Principles and Applications, Hambley

G) Optimal Estimation of Dynamic Systems, Crassidis and Junkins

Engineering Mechanics and Structures:

3-4) Engineering Mechanics: Statics and Dynamics, Hibbeler

5) Mechanics of Materials, Hibbeler

6) Mechanical Vibrations, Rao

6) Practical Stress Analysis for Design Engineers: Design & Analysis of Aerospace Vehicle Structures, Flabel

6-8) Analysis and Design of Flight Vehicle Structures, Bruhn -- A good reference, never really used it as a text.

8) An Introduction to the Finite Element Method, Reddy

G) Introduction to the Mechanics of a Continuous Medium, Malvern

G) Fracture Mechanics, Anderson

G) Mechanics of Composite Materials, Jones

Design and Optimization

7) Fundamentals of Aircraft and Airship Design, Nicolai and Carinchner

7) Aircraft Design: A Conceptual Approach, Raymer

8) Engineering Optimization: Theory and Practice, Rao

Space Systems

6) An Introduction to the Mathematics and Methods of Astrodynamics, Revised Edition,

6) Fundamentals of Astrodynamics and Applications, Vallado

6) Introduction to Space Dynamics, Thomson -- Dover book

6) Orbital Mechanics, Prussing and Conway

6) Fundamentals of Astrodynamics, Bate, Mueller and White

7) Space Mission Analysis and Design, Wertz and Larson

Tools and Languages

These are texts on tools either common in the industry or accessible and becoming more common. They'll primarily be on programming languages and software.


A Primer on Scientific Programming with Python, Langtangen

Numerical Methods in Engineering with Python, Kiusalaas

Python Scripting for Computational Science, Langtangen


Restrictive licensing warning: Matlab has a both expensive and restrictive license, unlike the other languages in this list. Sadly, it's also quite common in the aerospace industry. Octave is an free/open source language that's similar enough to Matlab that many Matlab scripts will run under Octave and vise-versa.

Gnu Octave Version 3.0.1 Manual: A High-Level Interactive Language For Numerical Computations, Eaton, Bateman and Hauberg

Matlab for Engineers, Moore


Fortran 95/2003 Explained, Metcalf, Reid and Cohen

C and C++

GNU Scientific Library Reference Manual, Gough -- Free/open source and online.

Numerical Recipes, Press et al -- C++ version of the Numerical Recipes books. Caveat Lector: As noted here, "Numerical Recipes is a good book for learning about numerical methods. As a subroutine library, it's a useful trap." The licensing of the software discussed and included is very restrictive.


Programming Perl, Wall -- Perl sees heavy use in the spacecraft engineering industry

Edit History:

Moved "Tools and Languages" to it's own section. Added a lot of books.

Added Electrical, Electronic and Dynamical Systems as a category for Electrical Engineering type texts as well as Automatic Control and Estimation. Removed "Electrical Engineering"

Note: Originally posted to Reddit.

Monday, September 5, 2011

A Better Election System

Consider the following questions:

    1) Should the candidate with the most support win an election?

    2) Is it possible to support more than one candidate?

It's really hard to argue with 1 and 2 is definitely true. So, instead of allowing a voter to vote for just one candidate, he/she should be allowed to cast a vote for every candidate they support. Assuming we can count the votes with any sort of accuracy, then the winner should be the candidate who get's the most votes.

Another way of looking at this is to frame an election as picking the candidate that the most voters find acceptible. In the current system, many voters don't even vote for who they think to be best candidate, for fear that their vote will be wasted. And we've created a who extraneous system, the parties and their primaries, to avoid having candidates with similar positions split the vote.

This new system, which we'll call "multicandidate selection," takes away the false choice that one must pick between multiple acceptable candidates. It seems ridiculous that a popular set of principles or platform suffer because multiple candidates share it.

Multicandidate selection more informative as well, all of the voter's preferenced candidates receive credit and positive feedback.

If we treat an election as a constraint satisfaction problem, then with multicandidate selection we're picking the candidate that best satisfies the constraints. With the current system, however, it's not clear to me what we're picking.

Questions remain, of course. What to do in the case of a tie? Well, minimally, we could have a run off where current vote for only one candidate rules apply. We might also include a ranking system in the original ballot, but to preserve the "selects the candidate acceptible to the most voters" property, the ranking system could only come into play due to a tie.

Still, I can't see how multicandidate selection is in any way inferior to the current system. Do we really believe that, in any given election, one only candidate is capable of the job?