• Which the release of FS2020 we see an explosition of activity on the forun and of course we are very happy to see this. But having all questions about FS2020 in one forum becomes a bit messy. So therefore we would like to ask you all to use the following guidelines when posting your questions:

    • Tag FS2020 specific questions with the MSFS2020 tag.
    • Questions about making 3D assets can be posted in the 3D asset design forum. Either post them in the subforum of the modelling tool you use or in the general forum if they are general.
    • Questions about aircraft design can be posted in the Aircraft design forum
    • Questions about airport design can be posted in the FS2020 airport design forum. Once airport development tools have been updated for FS2020 you can post tool speciifc questions in the subforums of those tools as well of course.
    • Questions about terrain design can be posted in the FS2020 terrain design forum.
    • Questions about SimConnect can be posted in the SimConnect forum.

    Any other question that is not specific to an aspect of development or tool can be posted in the General chat forum.

    By following these guidelines we make sure that the forums remain easy to read for everybody and also that the right people can find your post to answer it.

OpenVSP

Heretic

Resource contributor
Messages
6,830
Country
germany
Anybody using this?

It's basically a toolbox for parametric aircraft modeling and aerodynamic analysis. You can either model real designs or do your own. It can also generate meshes for use in CFD toolboxes.
Analysis is done using the vortex lattice method, which will not yield the most accurate results but is much easier on computing time requirements than using full blown CFD solvers.

I've been exploring the tool on and off for a bit and managed to model a Learjet. Operating the modeling tools is a bit awkward, but fairly easy. Haven't had much luck with the analysis of the model so far though since I might have too much model complexity and intersecting parts. Therefor, the VLM solver requires a lot of iterations to converge for every defined operating point.

So if someone has previously worked with this, I'd appreciate some input as the documentation is not that extensive. There's some video tutorials and presentations, but they're almost all for somewhat older versions of the program.

If you want to give it a try:
http://www.openvsp.org/

Manual for an older version:
http://www.openvsp.org/wiki/lib/exe/fetch.php?media=vsp_aircraft_analysis_user_manual.pdf

Video tutorials:
https://www.youtube.com/channel/UCgkncj4tKePKtX6mTcDHTDw
https://www.youtube.com/results?search_query=openvsp&oq=&gs_l=
 
I find it difficult to imagine how the program would be of any help with sim flight dynamics unless you were coming up with your own unique airplane design.
Even then, you would most likely want it to perform similarly to some existing "role model" airplane out there.
If you use AirWrench, it offers a number of "role models" GA pistons, GA jets, and so on. One of these will do what you want,most likely.
If you have a desire to simulate something more specific like a particular airliner or fighter, you need its performance manual. Then the task is matching sim performance to the manual. This is more difficult but can be done well using AirWiz.
Don't forget that the sim basic model is a wing, a CG position, engine position and a bunch of aerodynamic coefficients. The wing is a rectangle sized from wing area and span. Control deflections are input but position, areas, angles have no direct effect.
So how is something that creates a shape going to help?
Roy
 
So how is something that creates a shape going to help?

It avoids the legal ramifications of breaking into - or hacking - aircraft manufacturers to obtain engineering data on aerodynamic coefficients for a particular aircraft.

Freely available performance engineering information is few and far between, but 3-views can be found across the web. Assuming that the author did a decent job on the drawings, a simple model for aerodynamic analysis is a good starting point to do the rest of the FDE from as ypou can derive basic lift and drag data from it.

Without a drag polar for a particular aircraft, I wouldn't even know where to start developing a FDE. Trial & error, even with the shortcuts offered by AirWizEd? Nuh uh.
 
Bjoern, you remind me of Gregory Pierson who had a similar approach to generating flight models. He started with aerodynamic analysis of an aircraft's geometry and using Roskam's work to generate flight data. He then plugged the findings into some custom software, written to fit his results to an FS flight model. I seem to remember he had the process down to around 40 minutes and he apparently was successful enough to make some payware FDEs as well as his many freeware CFS3 flight models. The payware models are still on sale at Classics Hangar.

Good luck and keep busy!
 
To proceed with the analysis, I at least need to get one model right enough in OpenVSP to match its published coefficients. I am, however, not there yet.

One of Roskam's books is on my hard drive, somewhere. I'd love to have a full blown interactive spreadsheet to analyze an aircraft using real aerodynamic equations and turn the results into ready-for-use .air file tables, but I simply lack the time to create one. The most time efficient option seems to be a combination of OpenVSP (for lift and drag), AirWizEd (for thrust) and some manual adjustments (in-sim), but this will require finding a viable workflow with acceptable results in the first place.
 
I understand what you say, but aerodynamic coefficients are non-dimensional. To take your drag analogy, the sim has form drag based on a coefficient and the wing area. Your big airliner and little business jet very likely have a similar form drag coefficient. All you need is a good guess at the wing area. The fuselage drag is not considered by the sim. I can work out the wing area without creating a model.
The same holds good for lift coefficients, you can make a good guess.

I would bet that the program is really simplistic. You cannot see enough from drawings to know what kind of wing airfoil profile is used and if the data is not available to you, how would the program know better. So my bets is that the program has a lot of guessing going on.

Of course, if you are new to the task it is nice to have something do your guessing for you. I just think the process of building a physical model is a waste of time, sorry.
Roy
Edit. Have you looked at Jerry Beckwith's Flight Dynamics Workbook? It is a big spreadsheet, you enter the basics on the first page and fill in bits on around ten more pages and it will do your air file and aircraft .cfg. I still use it for the first cut at the airfile for anew project. It has a number of problems and is now unsupported, but it does a good job of calculating coefficients
 
Last edited:
Still have Jerry's Workbook somewhere on my disk, but it was made in MS Office and uses macros, which Libreoffice doesn't really like.

Spreadsheet or model, you're always guessing yourself to death either way. So what's the friggin' point...


P.S:
If you're ever in a writing mood again, I'd really appreciate a paper about a workflow for getting lift and drag data in MSFS right enough with as little available data and as little guessing as possible to do the engine tables.
 
It has taken me about 35 hours flight test time and probably 100 hours of analysis to do each of my last 3 projects. That is just config and air files with a very small amount of gauge debug. The first two had performance manuals and I got results generally within 5% of the specs. The last one has no released data and I made a bunch of assumptions and met those.
It is a bit like learning a trade, you learn by experience over time and there are no magic bullets.
The engine stuff is a piece of cake by comparison, it is 90% math and 10% intuition.
The aerodynamics are more like 10 and 90.
I will have a go at a paper, but don't hold your breath.
Roy
 
Wind tunnel data is a great source of knowledge and can be applied to sim FDE provided the Reynolds numbers are representative of the full size airplane. That is particularly important when modeling high speed airplanes and is why full scale instrumented tests frequently give results that are quite different from the tunnel results.
Roy
 
True, Roy. That's why they use downscaled airplanes and 'downscaled' flow: another fluid at very low temperatures, to investigate cruise conditions. I believe cooled down nitrogen.

What I did with my T.5, was entering the given windtunnel data and then finetuning it in-sim.
 
OpenVSP has more than one part. The parametric modeller is suited to making models for computational aerodynamics in a way that will work. I’m sure I don’t need to explain why a traditional 3d model made in a 3d modelling program is not suitable for use in computational aerodynamics.

After a fairly extensive evaluation of the available options for computational aerodynamics I’ve settled on using OpenVSP or more specifically VSPAero. The OpenVSP suite is an extremely valuable tool for making a model when data from flight tests, or wind tunnel is not available, or to fill in the gaps in data.
VSPAero provides either Vortex Lattice Method, or panel methods. I’ve had pretty good results out of the VLM. The panel method takes a lot longer and I haven’t invested much time in it except for an initial set of runs to see if it produces good results.

In the right hands OpenVSP and VSPAero can provide a much more detailed aerodynamic model than is possible by tuning another model of a similar craft.
What you can get out of OpenVSP is interaction of the surfaces by the wake flow and some high alpha effects.
For an airliner model where most of the flight is in the centre of the envelope I can appreciate that actually tuning to match stated performance is arguably more relevant. For example nobody is going to notice that the yaw characteristics are a bit plain or lacking when flying with the yaw damper turned on.
BeaglePup-VSPAero-Result.jpg


For light aircraft, or fighters it’s my view that you need a much more complex aero model – and tuning isn’t going to get you anything that is close the aircraft; whereas OpenVSP can get you closer than is possible manually.

BeaglePup-VSPAero-Plots.jpg


It can also help you with the mass properties - including moments of inertia - although this can be a bit trickier to setup because it is done by setting the density on each component, to get the results for the Pup I took the mass of the engine (as that was published), and then tuned the fuselage and surfaces to get the right value (in slugs because I was using imperial for the rest). The fuselage density is, in my very rough guesstimation about 50% of that of the wing sections. The key thing here is that calculating moments of inertia is actually quite involved, and I feel that OpenVSP came up with some fairly good values.

mass-properties-65-slices.jpg


The other thing it does is to calculate propeller effects. Again this is something that is quite involved to do manually.

I've written all this up in a my article Using VSPAero to generate an aerodynamic model

The complete set of aerodata can be found in Beagle Pup aerodynamic model plots. These are the usual coefficient build up method.
 

Hi there, Richard! (I've heard good things about your F-15!)

One of the drawbacks of OpenVSP is that tutorials are few and far between. There are the basics on Youtube dealing with how to use the program and do a simple analysis, but none that go any further. The other tutorials dealing with aerodynamic analysis are for older versions, which, at the pace of VSP's development, quickly lose relevance.
A few days ago, I've again tried to generate a simple ballpark analysis for lift and drag of a Learjet 35A in VSP to build MSFS-compliant tables from, but the results fail sanity checks as there is no C_l_max and C_d is quite a bit higher than the book values. Program limitation?

I've attached the model file, in case you're curious.
 

Attachments

Richard,
That is an interesting explanation. You said
For light aircraft, or fighters it’s my view that you need a much more complex aero model – and tuning isn’t going to get you anything that is close the aircraft; whereas OpenVSP can get you closer than is possible manually.
Two questions
How does OpenVSP account for a deliberately unstable fighter that can only be flown because its control system compensates for the instability. Seems to me it will maybe tell you what needs to be fixed. On the other hand it is simple to choose FSX/P3D air file coordinate values that make it fly the way it does in real life. The designer can do what the electronics do in real life.

What do you do to model a supercritical airfoil like that on the AV-8B?
Roy
 
I've taken the Learjet35A model and tweaked it a bit.

Using the VLM method; the pods on the ends of the wings are causing computational problems; this is quite common in OpenVSP - it can get a bit confused by surfaces that touch at the edge; and in any case a pod isn't really going to give the right sort of results so I've modified the wingshape by adding extra sections that will do the job of the pods.

You also hadn't turned off XZ symmetry on the vertical tail and the ventral fin.
7D1n1wZ.gif


EJ8YbLc.png


Attached is a complete set of files from the run; I did a big run with WakeIterations at 20 - normally I'd be using 3 or 5.
 

Attachments

Last edited:
Two questions
How does OpenVSP account for a deliberately unstable fighter that can only be flown because its control system compensates for the instability. Seems to me it will maybe tell you what needs to be fixed. On the other hand it is simple to choose FSX/P3D air file coordinate values that make it fly the way it does in real life. The designer can do what the electronics do in real life.

What do you do to model a supercritical airfoil like that on the AV-8B?
Roy

1. OpenVSP is going to give you results that represent the stability (provided you model it correctly). So you may need to add some sort of stability augmentation. However even with unstable aircraft with SAS I believe it is still important to model the aerodynamics as best you can. I realize this is only partially possible with the limited set of tables in the standard FSX model. There are parts of the envelope, particularly towards the edges where aircraft can become unstable - particularly fighters, and my view is that this should be modeled as that's where most of the handling complexity comes in.

2. As far as I'm aware OpenVSP can handle any aerofoil that you have got a definition for. It's got all of the usual NACA-4 and 6 series built in, and you can upload a standard format file.

OpenVSP has got support built in for supersonic aerodynamics - which is great.

One thing I didn't mention is that OpenVSP has a simplistic model for form drag (25% of wetted area), it's good for the induced drag, but they recommend calculating form drag "using another method".
 
Richard,
I must be missing the point here. If FSX has only a limited set of aerodynamic tables, then what use is Open VSP for creating flyable FSX airplanes? How do you translate your calculated results into a set of FSX data which recreates your results in flight tests in FSX?
Does it calculate any data regarding ground effects?
Can you explain how the results of Open VSP research are of benefit to those who are creating airplanes that fly in FSX.

Roy
 
I must be missing the point here. If FSX has only a limited set of aerodynamic tables, then what use is Open VSP for creating flyable FSX airplanes? How do you translate your calculated results into a set of FSX data which recreates your results in flight tests in FSX?
Does it calculate any data regarding ground effects?
Can you explain how the results of Open VSP research are of benefit to those who are creating airplanes that fly in FSX.

I haven't been really trying to make a point as such; rather to provide information that answers the original questions.

If I were to try to make a point it would be that OpenVSP provides the possibilities to improve the modelling process because it is taking the model as a whole. If you have the geometry and airfoils then you're going to be in a better position than you would be otherwise.

When I said limited number of tables; this is in the sense that there are a fixed set tables in FSX - i.e. that you don't have the flexibility to add as many tables as you need. This means that if you have a decent set of wind tunnel or flight test data there will be a fair amount of processing to put this into the FSX model format.

I'm sure that OpenVSP can help to populate all of the tables that are available into an asm file.

Where OpenVSP really helps is for the tables that are hard to calculate manually, such as the derivatives and tables such as AIR_70S_ALPHA_ON_CNDR.

Referring to https://msdn.microsoft.com/en-us/library/cc707065.aspx, the following are tables that could be generated from OpenVSP generated data.
  • CL vs. Alpha AIR_CL_ALPHA
  • CM vs. Alpha AIR_CM_ALPHA
  • Elevator effectiveness scaling table (max 7 entries) AIR_ELEVATOR_SCALING
  • Aileron effectiveness scaling table (max 7 entries) AIR_AILERON_SCALING
  • Rudder effectiveness scaling table (max 7 entries) AIR_RUDDER_SCALING
  • Elevator elasticity on effectiveness scaling table (max 5 entries) AIR_61S_ELEVATOR_ELASTICITY
  • Elevator trim elasticity on effectiveness scaling table (max 5 entries) AIR_70_ELEVATOR_TRIM_ELASTICITY
  • Aileron elasticity on effectiveness scaling table (max 5 entries) AIR_61S_AILERON_ELASTICITY
  • Rudder elasticity on effectiveness scaling table (max 5 entries) AIR_61S_RUDDER_ELASTICITY
  • Cl (roll) induced by angle of attack (max 7 entries) AIR_70S_Cl_ALPHA_ROLL
  • Cn (yaw) induced by angle of attack (max 7 entries) AIR_70S_CN_ALPHA_YAW
  • Scalar on Cmde due to angle of attack (max 5 entries) AIR_61S_ALPHA_ON_CMDE
  • Scalar on Cmih due to angle of attack (max 5 entries) AIR_61S_ALPHA_ON_CMIH
  • Scalar on Cmadot due to angle of attack (max 5 entries) AIR_61S_ALPHA_ON_CMADOT
  • Scalar on Cmq due to angle of attack (max 5 entries) AIR_61S_ALPHA_ON_CMQ
  • Scalar on Cndr due to angle of attack (max 5 entries) AIR_70S_ALPHA_ON_CNDR
  • Scalar on Clda due to angle of attack (max 5 entries) AIR_70S_ALPHA_ON_CLDA
  • Scalar on ClBeta due to angle of attack (max 9 entries) AIR_ALPHA_ON_CL_BETA
  • Scalar on Clp due to angle of attack (max 9 entries) AIR_ALPHA_ON_CLP
  • Scalar on CnBeta due to angle of attack (max 9 entries) AIR_ALPHA_ON_CN_BETA
  • Scalar on Cnr due to angle of attack (max 9 entries) AIR_ALPHA_ON_CNR
  • Scalar on Lift due to mach (max 17 entries) AIR_CL_MACH
  • Scalar on Drag due to mach (max 17 entries) AIR_10XPACK_CD0_MACH
  • Integer mach table on Clde AIR_CL_DELTAE
  • Integer mach table on Cladot AIR_CL_ADOT
  • Integer mach table on CLq AIR_CL_Q
  • Integer mach table on Clih AIR_CL_IH
  • Integer mach table on Cmde AIR_CM_DELTAE
  • Integer mach table on Cmadot AIR_CM_ADOT
  • Integer mach table on Cmq AIR_CM_Q
  • Integer mach table on Cmih AIR_CM_IH
  • Integer mach table on Cm0 AIR_CMO
  • Integer mach table on Cyb AIR_CY_BETA
  • Integer mach table on Cydr AIR_CY_DELTAR
  • Integer mach table on Cyr AIR_CY_R
  • Integer mach table on Cyp AIR_CY_P
  • Integer mach table on Clb AIR_CL_BETA
  • Integer mach table on Cldr AIR_CL_DELTAR
  • Integer mach table on Clda AIR_CL_DELTAA
  • Integer mach table on Clr AIR_CL_R
  • Integer mach table on Clp AIR_CL_P
  • Integer mach table on Cnb AIR_CN_BETA
  • Integer mach table on Cndr AIR_CN_DELTAR
  • Integer mach table on Cnda AIR_CN_DELTAA
  • Integer mach table on Cnr AIR_CN_R
  • Integer mach table on Cnp AIR_CN_P
I've got a tool that scripts the running of VSPAero and processes the output a set of tables. If I were modelling for FSX I'd be building a tool to do this for ASM files.

Ground effect isn't supported in VSPAero; obviously if you've got a VSP Model you could use it to generate a mesh suitable for CFD (OpenFoam) - but I consider this as realistically out of reach for most users given the CPU requirements to run a complex mesh.

To illustrate how my models are built - the following document has the table list and buildup formulas for 3 very different aircraft, the Pup, Tornado and Hawk. https://docs.google.com/document/d/1UP9j_Pyd5vxrlTk85hVHRIfdNZ3KTs-mq4VWe2YfGQo/edit?usp=sharing

Out of the 3 models the Tornado is the one that is the most complex, simply because of the amount of things to model. It also illustrates my point about flexible modelling. The Tornado uses wing spoilers and differential elevator deflection for roll control, but obviously the spoilers only work at lower AoA, and wingsweep < 50; and there is a (small) amount of yaw generated because the spoiler deflection is asymmetric. I don't think I could model this with the fixed set of tables - but it doesn't mean that the whole aero model can't be done, just that some of the subtleties will have to be done differently
 
Richard,
Thanks that clarifies the situation.
As regards the Tornado, the document you indicated shows what inputs are required, but no actual data. I'd love to see some for comparison with what I used.
I built a set of FDE for the Tornado and it is in a simulator product that was released to the market a couple of years ago. The model performance was created from the performance manual and its handling characteristics were verified by current Tornado pilots. The performance demonstrated throughout the envelope varied from the manual by less than 5% overall. The effects of having three sweep angles were modeled accurately. I have had zero bad feedback on how it flies.

The Tornado uses wing spoilers and differential elevator deflection for roll control, but obviously the spoilers only work at lower AoA, and wingsweep < 50; and there is a (small) amount of yaw generated because the spoiler deflection is asymmetric.

All of that is true, but to the pilot the airplane just rolls without yaw because the CSAS takes care of the issue, so it is not a factor in the simulator. In fact roll is achieved solely by aileron deflection in the simulator model. Yes the stabilizer has differential movement and the spoilers move as they should, but that is just happening in the animation and has zero effect on flight characteristics.

Most if not all flight peculiarities of a particular airplane are not evident to the pilot. If they were deemed to be unsafe, the airplane would not be released for service or, exceptionally, it could be released with appropriate limitations. For example most of the Century series US fighters had awful high AOA characteristics and doubtful spin recovery. Deliberate stalls and spins were prohibited and the airplanes flew very well and achieved their roles.

The Hawker Hunter Pilot's notes prohibited deliberate stalls or spins, but went on to describe what happened if a stall or spin was entered by accident. In practice air combat low speed scissors were taught and flown in stalled conditions, spins were very rare and easy to recover from. That airplane had no artificial stability. It would therefore be an excellent test for OpenVSP.

The F-4 had stability augmentation on all three axes, but was usually flown with pitch and yaw stab only. It had nasty adverse yaw characteristics and considerably higher wing loading so no-one tried low speed scissors in it. It could be flown without stability augmentation but not near the edges of the envelope and very gently. So what I modeled was a F-4 with working stab aug and the nasty adverse yaw was taken care of in the appropriate air file coefficients. From the simulator point of view you should model the characteristics that will be experienced by the pilot, NOT what the unaided airframe would give you.

My most recent and still current FDE project is the Eurofighter. From the airframe standpoint there would be no virtue in modeling what it flew like unaided because it can't do that. You have to model what the aided airplane does. So IMHO OpenVSP
has no role in modeling that airframe for FSX. Incidentally it was the reason I asked about ground effect. That airplane uses ground effect to take about 20 kts off its rotate and unstick speeds compared to what a high wing would give.

This forum is concerned about issues that relate to flight dynamics in FSX or equivalent.
As such your list of outputs that could be used as inputs to an air file was very useful though it did not mention the primary lift, drag, pitch, side force yaw and roll records.
AIR_80_LIFT_PARAMS
AIR_80_DRAG_PARAMS
AIR_80_PITCH_PARAMS
AIR_80_SIDE_FORCE_PARAMS
AIR_80_ROLL_PARAMS
AIR_80_YAW_PARAMS

I also am interested in how you get Scalar on Drag due to mach (max 17 entries) AIR_10XPACK_CD0_MACH given your earlier statement:
One thing I didn't mention is that OpenVSP has a simplistic model for form drag (25% of wetted area), it's good for the induced drag, but they recommend calculating form drag "using another method".

If you are interested in further inputs concerning FSX aerodynamic coefficients, I'd recommend looking at Yves Guillaume's excellent Flight Dynamics in MSFS. This is a comprehensive treatment of the subject and includes specific areas where there are limitations on the implementation methods.

Roy
 
Last edited:
Back
Top