Jump to content

[1.12.3] Kerbal Wind Tunnel 1.3.1.1


Booots

Recommended Posts

20 hours ago, Booots said:

Other people have suggested plotting an arbitrary curve or an arbitrary set of variables too

That is not exactly what I was trying to suggest. I was thinking, you have a drop down menu, where you can choose, for instance AoA , excess thrust, L/D, etc., and box to input a fixed value, and any point in the graph corresponding to that value would get drawn differently. So a little easier to program at least (seems to me you really have most of the code for it already). Just made a quick mock-up of what it might look like (ignore the nonsensical value, and complete guess of a curve).

21Tyg2H.png

In the end though, its your time, so use it as you see fit :).

Link to comment
Share on other sites

12 hours ago, Daniel Prates said:

@Booots does your mod recognize lifting parts from other mods, such as airplane plus, stryker, procedural wings, sxt etc? Or does it only work with stock parts? I am getting some weird results when using parts from these mods. Mostly, the envelope is shown in the GUI allright, but there are no 'blank' areas around the envelope! Instead, the envelope is surrounded all over by a dark blue color, and in many places it's impossible to say where the 'surrounding blue' ends and the actual envelope graphic starts. 

It will recognize anything that inherits from the ModuleLiftingSurface class. I took a quick peek at those mods and they all appear to. Procedural wings might be problematic, but it looks like it just wraps a ModuleLiftingSurface and changes the values on that. Can you post a screenshot of the envelope? It could also be that you have a TWR greater than one, in which case your flight envelope won't have any 'blank' areas because you can just stand on your engine (while excess thrust will be near-zero because the forward component of thrust is small when doing that).

9 hours ago, Johould said:

For the ranges on the flight envelope graph, it would be nice to have the option to focus on a small area without increasing detail, for faster updates when trying to fine-tune a part. Computing the whole graph only takes a second or two, which is usually pretty nice, but adds up when trying tenth of a degree changes.

Allowing a higher maximum speed would be useful to see more of performance with rockets on, and also to see the full air-breathing performance range of some mod parts like Mk2 Expansion's scramjet. I accidentally left the rockets enabled on one spaceplane before checking the flight envelope, and there was actually a relatively narrow corridor of altitudes with excess thrust as the speed went up to 2000m/s. Designs with nukes might need attention to aerodynamics for an especially long time after rockets are on.

I'm not really sure how to use the lift and drag highlighting to improve a design. It seems like the most drag usually comes from the lifting surfaces, making it a bit hard to tell if a change is good from looking at the modes separately. Maybe a few more modes could usefully combine the information? Lift/Drag would probably be good for adjusting wings, some other formula could probably help pick out disproportionately draggy parts (drag/lift wouldn't help with lift-free parts. Maybe a straight offset to drag like subtracting lift divided by the airplane's overall L/D ratio).

Okay, more configurability on detail and range for the graphs is going to happen. It'll just take me a while to figure out the UI for that.

I'm not sure I quite follow your suggestion for the highlighting, but I'm super open to suggestions on how to make that more useful to people.

7 hours ago, neistridlar said:

That is not exactly what I was trying to suggest. I was thinking, you have a drop down menu, where you can choose, for instance AoA , excess thrust, L/D, etc., and box to input a fixed value, and any point in the graph corresponding to that value would get drawn differently. So a little easier to program at least (seems to me you really have most of the code for it already). Just made a quick mock-up of what it might look like (ignore the nonsensical value, and complete guess of a curve).

Oh, that makes more sense and would actually be doable to implement. Now that you suggest drop-downs, I'm thinking of getting rid of the selection grid under the graph and just moving to a drop-downs where you can select which graph (or graphs (plural) for the line graphs, they could have toggle checkmarks in the drop-down). It would make the UI a little less obvious but cleaner and could hold more graph options.

Link to comment
Share on other sites

I'm no aerodynamicist so a lot of the graph options in this mod are a bit beyond me.  But I know this, in search of a balance between propellant efficiency and gameplay time efficiency, I usually make my SSTOs a little on the overpowered side and just set a fixed climb (~8-15 degrees) until airbreathing speed maxes out, then switch to rockets and follow prograde.  How can I use this tool to help optimize the airbreathing flight without the endless guess/test/revise flight cycles I've been doing for years?  Set my root part to (for instance) 10 degrees, then vary the main wing angle of incidence until I find the max speed on the envelope at 26km?  Just hoping we can exchange some real-world usage tips as well as bug and UI feedback etc.

Link to comment
Share on other sites

5 hours ago, Booots said:

I'm not sure I quite follow your suggestion for the highlighting, but I'm super open to suggestions on how to make that more useful to people.

The general idea is that more drag is tolerable on parts producing more lift. An option to highlight by lift/drag ratio might be helpful for tuning wings

For reducing unnecessary drag I'm not sure what formula might be useful. Perhaps divide lift of a part by overall lift/drag ratio to get a "proportionate drag" and subtract it from the actual drag, so wings stand out less.

Link to comment
Share on other sites

58 minutes ago, kojot said:

Can this mod help to analyse SSTO reentry stability?

I would think so. Use the AoA-pitch torque plots for different altitude/speed combinations. If it is sloping up, that means it is unstable, if it is sloping down it is stable. Steepness indicates how stable/unstable it is. If you know your fuel load at reentry it seems you can fill the craft to that load and have it calculate for that load.

I wonder if there is a reasonable way of turning that into one of those flight envelope plots. All I can come up with requires 4 axis, though :( (and probably stupid amounts of computing power).

Link to comment
Share on other sites

17 hours ago, fourfa said:

I'm no aerodynamicist so a lot of the graph options in this mod are a bit beyond me.  But I know this, in search of a balance between propellant efficiency and gameplay time efficiency, I usually make my SSTOs a little on the overpowered side and just set a fixed climb (~8-15 degrees) until airbreathing speed maxes out, then switch to rockets and follow prograde.  How can I use this tool to help optimize the airbreathing flight without the endless guess/test/revise flight cycles I've been doing for years?  Set my root part to (for instance) 10 degrees, then vary the main wing angle of incidence until I find the max speed on the envelope at 26km?  Just hoping we can exchange some real-world usage tips as well as bug and UI feedback etc.

That's actually a good question, and something I probably should have addressed in the first post. Once you've built the first draft of your craft, instead of test flying it, you can take a quick look at the flight envelope put out by this mod. It will tell you the altitude and speed at which your air-breathing engines won't be able to put out enough thrust to overcome drag (where you should switch to rockets). That information will help inform you on if you've got your SSTO overpowered enough or if it needs more/less air-breathing engines. If your maximum altitude isn't high enough, that means you need to add wing area (or more powerful high-altitude engines to push you fast enough that your existing wing can lift the craft). Varying the main wing angle of incidence won't actually affect your flight envelope much at all - instead it will just change the angle of attack required to hold any given point.

After the design is done, this mod will also help inform how you fly your craft. The line of maximum excess thrust (which isn't plotted yet, but is made up of the speed at which you have most excess thrust for a given altitude) can help you optimize your ascent profile more than a simple rule-of-thumb like your 8-15 deg path. By flying at the speed with the most excess thrust, you have more available power to put into climbing - which will actually help you get to altitude faster. Some craft, in fact, are unable to get to their max speed and altitude by simply flying a constant climb angle. One of my designs has to accelerate while level at around 10km and then resume climbing. Otherwise the engines lose power faster from the high altitude than they gain power from high speed and so my climb and acceleration peter out. (This is why I made this mod, because I couldn't understand why I didn't have enough power despite all the times I yelled Moar Ramjets!)

Does this help a bit?

12 hours ago, kojot said:

Can this mod help to analyse SSTO reentry stability?

11 hours ago, neistridlar said:

I would think so. Use the AoA-pitch torque plots for different altitude/speed combinations. If it is sloping up, that means it is unstable, if it is sloping down it is stable. Steepness indicates how stable/unstable it is. If you know your fuel load at reentry it seems you can fill the craft to that load and have it calculate for that load.

I wonder if there is a reasonable way of turning that into one of those flight envelope plots. All I can come up with requires 4 axis, though :( (and probably stupid amounts of computing power).

Yep! @linuxgurugamer's CorrectCoL mod is really good at showing stability and I hope to incorporate a lot of features from that into the AoA plots here. I'm still not terribly confident in my torque and pitch input calculations, so I'm going to keep working on that. Once I work out the math for a good metric of stability, I'll make a flight envelope plot where green is stable and red is unstable (hooray for three axes!). I'm curious what your idea for a 4-dimensional plot involves, though!

Since there's also a difference between the stable range and the controllable range, I may also make a plot showing what regions SAS could even hope to keep your spaceplane stable (i.e. show the controllable range with 90% input, saving a bit of input for oscillations/perturbations or pilot input).

Link to comment
Share on other sites

7 minutes ago, Booots said:

I'm curious what your idea for a 4-dimensional plot involves, though!

Stability depends on speed, altitude, and angle of attack. I'm sure you have seen your boosters fly off in a perfectly uniform spiral. So they are "stable" at that AoA, just that the thrust is at an angle to that AoA, so it changes at a constant rate. If there was no thrust though, it would just fall at that angle of attack. So, in essence, to convey this, you would have to plot the stability in 3 axis, with the 4th being the degree of stability. 

Crafts that have the sort of behavior that I described will typically have a pitch-torque/AoA  curve that looks like a 3. degree polynomial, with a local minima and a local maxima. So it slopes upward near 0 AoA, but slopes down for higher and lower AoA. Though, if you play around with it you can get some really funky curves as well with several local minima/maxima.

What I was trying to say is you can have island of stability/instability that only exist on certain AoAs for any given speed/altitude combo, which you may need to know about. Don't have a good Idea for easy visualization. The best I can come up with is to have a slider or something which you can use to "scrub" through the AoA for instance, and plot it like the other flight envelope graphs.

Oh, and b.t.w. I do disagree that changing the AoI does not affect the flight envelope greatly. You can easily gain 10% in altitude or speed just by changing the AoI. You typically loose it somewhere else in stead though, like bad speed at low altitude, but good at high or vice versa.

Link to comment
Share on other sites

@Booots Sooo, Just to let you know ... while some of your mods appear in Ckan this one doesn't ... and Spacedock warns: 

Quote

Outdated Mod

This mod is not known to work with the latest version of Kerbal Space Program. Proceed with caution.

Anyway cool idea for a mod, I will definitely try i out. Something I wanted to have for a long time.

Link to comment
Share on other sites

8 hours ago, Bizz Keryear said:

@Booots Sooo, Just to let you know ... while some of your mods appear in Ckan this one doesn't ... and Spacedock warns: 

Anyway cool idea for a mod, I will definitely try i out. Something I wanted to have for a long time.

Oh right, I've only marked them as 1.4.2 because that's what I compiled them against since I haven't gotten around to updating my dev computer. They seem to be working fine, though (if a little slow on my old laptop - I'm away on vacation so I don't have my dev computer handy) so I'm going to mark them as compatible to 1.4.5 and recompile them when I get the chance.

Edit: As to why this isn't on CKAN, I don't know. I checked the box on SpaceDock to request it be added. They might just be a little behind. I'll look into it.

Edited by Booots
Link to comment
Share on other sites

Oh my. This mod is really what could finally get my SSTO's in orbit without cheating. So far I've managed to do it once, probably only by mistake :D. Guys, would you mind to share pictures of flight envelopes of your successfull SSTO design's?

Link to comment
Share on other sites

@Salvator Here is one of mine. The best I have done with it so far is 75x75km orbit with ~350m/s deltaV to spare. I marked the "exit point" that got this result, and sketched the path that got that result . I would have liked it to be more to the left (black doted line), that is higher speed, but the craft gets quite hot, and does not have too good of a heat tolerance. In general though, you want to get as much speed as possible out of your air-breathing mode as possible, and make sure you bring only enough liquid fuel, dead weight is the enemy of deltaV. 

2oDIngN.png3wkRk3q.pngmVzScE4.png

Link to comment
Share on other sites

Hi, I love space planes, and thus this :)

Bit of a problem, not working for me. :(

Spoiler

180814T165453.315 [EXCEPTION] [KerbalWindTunnel.VesselCache.SimulatedEngine.Init] NullReferenceException: Object reference not set to an instance of an object
   at KerbalWindTunnel.VesselCache.SimulatedEngine.Init (.ModuleEngines engine, KerbalWindTunnel.VesselCache.SimulatedPart part)
   at KerbalWindTunnel.VesselCache.SimulatedEngine.Borrow (.ModuleEngines module, KerbalWindTunnel.VesselCache.SimulatedPart part)
   at KerbalWindTunnel.VesselCache.SimulatedVessel.Init (IShipconstruct v, KerbalWindTunnel.VesselCache.SimCurves _simCurves)
   at KerbalWindTunnel.VesselCache.SimulatedVessel.Borrow (IShipconstruct v, KerbalWindTunnel.VesselCache.SimCurves simCurves)
   at KerbalWindTunnel.WindTunnelWindow.DrawGraph (GraphMode graphMode, GraphSelect graphSelect)
   at KerbalWindTunnel.WindTunnelWindow.DrawWindow (Int32 id)
   at KSPPluginFramework.MonoBehaviourWindow.DrawWindowInternal (Int32 id)
   at UnityEngine.GUILayout+LayoutedWindow.DoWindow (Int32 windowID)
   at UnityEngine.GUI.CallWindowDelegate (UnityEngine.WindowFunction func, Int32 id, Int32 instanceID, UnityEngine.GUISkin _skin, Int32 forceRect, Single width, Single height, UnityEngine.GUIStyle style)

 

I use OPT plane parts. OH and lots of mods.

Link to comment
Share on other sites

  • 2 weeks later...

Version 1.1 is released. It includes some performance improvements and now actually calculates your max lift AoA! No more pesky NaNs showing up in the display.

Some of your requests for more graphs have been added in the back end, but I need to re-jig the GUI to have place for them. I'm also working on the math to show fuel consumption and fuel economy data as well as drawing the fastest climb line and other useful stuff. My brain hurts from the calculus!

Cheers everyone and thanks for your support!

Link to comment
Share on other sites

9 minutes ago, DownHereInChile said:

Sorry if it's already been asked.

It has:

On 8/5/2018 at 4:23 AM, Booots said:

Speaking of FAR... It's not currently compatible, but I would like to add that. The challenge is multithreading the FAR calculations. I scratched together enough open-source info on the stock aero stuff to make a threadsafe aero calculator, but FAR's methods are not threadsafe. So I could add it now, but it would take a few minutes to generate a flight envelope (instead of a few seconds). I'm hoping to work with the FAR devs to find a way forward.

Link to comment
Share on other sites

9 hours ago, lushr said:

Is it possible to save out the tables of values this mod computes? It'd be very useful for designing, tuning, and debugging aerodynamic guidance and control systems.

There is a little floppy-disk button down to the left that should let you save the data so you can use it in a different program. I have not tried it yet.

Link to comment
Share on other sites

On 8/28/2018 at 5:51 AM, Apaseall said:

Sorry to say but I am still unable to use this mod. Here are some files which may help to pin point the issue: https://www.dropbox.com/s/ca9hvu8k1nsf2tp/saves for WindTunnel.1.rar?dl=0

Thanks for the data, I'm looking through it now. For future reference, the KSP.log file is usually sufficient. The output_log file has a ton more information and is less nicely formatted, which makes it harder to sift through. But no worries, I found a clue that will help.

I'm not able to open that craft file, though (probably because I'm still developing on 1.4.4). Do you have any other mods installed that will cause issues loading it on vanilla? Can you post a picture of it? It looks like my vessel caching system is failing when it comes to one of the engines; Do you have any mod engines on it? Thanks!

Link to comment
Share on other sites

  • 2 weeks later...
On 9/5/2018 at 3:16 AM, Booots said:

Thanks for the data, I'm looking through it now. For future reference, the KSP.log file is usually sufficient. The output_log file has a ton more information and is less nicely formatted, which makes it harder to sift through. But no worries, I found a clue that will help.

I'm not able to open that craft file, though (probably because I'm still developing on 1.4.4). Do you have any other mods installed that will cause issues loading it on vanilla? Can you post a picture of it? It looks like my vessel caching system is failing when it comes to one of the engines; Do you have any mod engines on it? Thanks!

Sorry for the delay, I was on holiday. Yes I have a lot of mods, as you can see from the logs. Yes the engines in use are most likely engines from a mod. Yes there are most likely parts that prohibit you from loading the craft file because you do not have the mods loaded. If I remember rightly, this craft should contain few parts as it is a small craft, or I might be thinking of something else. This is a flying visit as I will be away from PC for a week or so, at a guess.

Link to comment
Share on other sites

I am unsure why an engine from a mod should cause an issue. I am under the belief that this mod parses the .craft and pulls in stuff like enginemodule or enginefxmodule, those should contain the data you need to crunch for this mod? Sorry if I have the module names wrong. You are picking up stuff like isp curves for velocity and altitude etc?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...