Fulqrum Publishing Home   |   Register   |   Today Posts   |   Members   |   UserCP   |   Calendar   |   Search   |   FAQ

Go Back   Official Fulqrum Publishing forum > Fulqrum Publishing > IL-2 Sturmovik: Cliffs of Dover > Technical threads > FM/DM threads

FM/DM threads Everything about FM/DM in CoD

Reply
 
Thread Tools Display Modes
  #1  
Old 07-19-2012, 08:39 PM
ACE-OF-ACES's Avatar
ACE-OF-ACES ACE-OF-ACES is offline
Approved Member
 
Join Date: May 2010
Location: NM
Posts: 2,248
Default

Quote:
Originally Posted by klem View Post
The Z_AmbeintAirTemperature appears to be the OAT at the altitude, it decreases with alt at around 0.0021C/ft
Roger that..

But my point is it is NOT realitive to 'I_Altitude'..

As far as I can tell it is realitive to 'Z_AltitudeAGL' and/or 'Z_AltitudeMSL'.

In short, the Z_AmbeintAirTemperature value your using may be the OAT realitive to another 'altitude' and not the one the plane is currently at..

For an example of which I speak, look at the TIME TO CLIMB picture I posted

Note at the higher altitudes (around 17.5Kft) the "Z" altitudes are quite different (higher) from the indicated, pressure and density.. Thus in and around that area when you use Z_AmbeintAirTemperature (OAT) your getting the temperature 'realitive' to the "Z" altitudes and not the OAT realitive to indicated, pressure, and density. How big of an error that will introduce.. Not sure have not calcualed it yet, but knowing how a little temperature difference can have a big effect on the calcuation of density altitude one should take pause.

Again, not 100% sure yet, need to test that to prove it to myself! I just wanted to bring it up should you come across it while testing
__________________
Theres a reason for instrumenting a plane for test..
That being a pilots's 'perception' of what is going on can be very different from what is 'actually' going on.

Last edited by ACE-OF-ACES; 07-19-2012 at 08:55 PM.
Reply With Quote
  #2  
Old 07-19-2012, 10:02 PM
klem's Avatar
klem klem is offline
Approved Member
 
Join Date: Nov 2007
Posts: 1,653
Default

Quote:
Originally Posted by ACE-OF-ACES View Post
Roger that..

But my point is it is NOT realitive to 'I_Altitude'..

As far as I can tell it is realitive to 'Z_AltitudeAGL' and/or 'Z_AltitudeMSL'.

In short, the Z_AmbeintAirTemperature value your using may be the OAT realitive to another 'altitude' and not the one the plane is currently at..

For an example of which I speak, look at the TIME TO CLIMB picture I posted

Note at the higher altitudes (around 17.5Kft) the "Z" altitudes are quite different (higher) from the indicated, pressure and density.. Thus in and around that area when you use Z_AmbeintAirTemperature (OAT) your getting the temperature 'realitive' to the "Z" altitudes and not the OAT realitive to indicated, pressure, and density. How big of an error that will introduce.. Not sure have not calcualed it yet, but knowing how a little temperature difference can have a big effect on the calcuation of density altitude one should take pause.

Again, not 100% sure yet, need to test that to prove it to myself! I just wanted to bring it up should you come across it while testing
OK, well there is the parameter I_AmbientTemp. William's example calls it Actual Temperature. It looks as though that is what he means, actual emperature as measured in the aircraft environment, "the outside air temperature (OAT) or static air temperature (SAT) refers to the temperature of the air around an aircraft".

Now, regarding:
Density_Alt = Pressure_Alt + (T_std/TLR) * (1 - Math.Pow((T_std / I_AmbientAirTemperature),0.2349690));
(now with I_AmbientAirTemperature)

Where:
T_std = 288.15 - Alt_ind × TLR
TLR = 0.0065


and

if ( height < tropopause ) then
TLR = 6.49(°C/1,000m) = 1.98(°C/1,000ft) = 3.56(°F)/1,000ft
else
TLR = -56.5(°C) = 216.65(°K)


I have two questions.

1. TLR is a rate so presumably below the Tropopause the Temperature Lapse is - Alt_Ind x TLR but above the Tropopause the Temperature Lapse is simply 56.5C ?
and similarly......
2. Within the DA calc, T_Std/TLR would appear to calculate an altitude. Does it hold good above the Tropopause where the lapse rate is zero or should I be capping T_Std at 288.15 - 56.5 = 231.65K once T_Std/TLR hits 56.5?

EDIT: Sorry, ref Q.2, I meant should I replace T_Std/TLR with some other expression above the Tropopause??

EDIT2: Think I've got it

if ( 15 - Pressure_Alt_ft*0.0019812 < -56.5)
{
TropAlt = PressureAlt - 56.5/0.0019812
TempStd = 288.15 - 56.5;
Density_Alt_ft = Pressure_Alt_ft + (TempStd/0.0019812 + TropAlt) * (1 - Math.Pow((TempStd / I_AmbientAirTemperature),0.2349690));
else
TempLapse= Pressure_Alt_ft*0.0019812;
TempStd = 288.15 - Templapse;
Density_Alt_ft = Pressure_Alt_ft + (TempStd/0.0019812) * (1 - Math.Pow((TempStd / I_AmbientAirTemperature),0.2349690));
}
TempStd = 288.15 - TempLapse;
Density_Alt_ft = Pressure_Alt_ft + (TempStd/0.0019812) * (1 - Math.Pow((TempStd / I_AmbientAirTemperature),0.2349690));
__________________
klem
56 Squadron RAF "Firebirds"
http://firebirds.2ndtaf.org.uk/



ASUS Sabertooth X58 /i7 950 @ 4GHz / 6Gb DDR3 1600 CAS8 / EVGA GTX570 GPU 1.28Gb superclocked / Crucial 128Gb SSD SATA III 6Gb/s, 355Mb-215Mb Read-Write / 850W PSU
Windows 7 64 bit Home Premium / Samsung 22" 226BW @ 1680 x 1050 / TrackIR4 with TrackIR5 software / Saitek X52 Pro & Rudders

Last edited by klem; 07-19-2012 at 10:31 PM.
Reply With Quote
  #3  
Old 07-19-2012, 11:03 PM
ACE-OF-ACES's Avatar
ACE-OF-ACES ACE-OF-ACES is offline
Approved Member
 
Join Date: May 2010
Location: NM
Posts: 2,248
Default

Quote:
Originally Posted by klem View Post
OK, well there is the parameter I_AmbientTemp.
Ah yes, I forgot about that one!

I just don't recall if every plane had one? I noticed that when a plane does not have a guage for a said "I" value that said value is not aval to read/log.

But we can use that value and log it along with the "Z" value (which is allways active) you were using to see if they are the same, or if they diverage at some point (alt). If they don't than I was worring for nuttin and we can continue to use the "Z" value.

Quote:
Originally Posted by klem View Post
I have two questions.
Ok lets see if I have two answers!

Quote:
Originally Posted by klem View Post
1. TLR is a rate so presumably below the Tropopause the Temperature Lapse is - Alt_Ind x TLR but above the Tropopause the Temperature Lapse is simply 56.5C ?
Exactally!

Take a look at any standard atmosphere table/graph and you will see that is indeed the case

Quote:
Originally Posted by klem View Post
and similarly......
2. Within the DA calc, T_Std/TLR would appear to calculate an altitude. Does it hold good above the Tropopause where the lapse rate is zero or should I be capping T_Std at 288.15 - 56.5 = 231.65K once T_Std/TLR hits 56.5?

EDIT: Sorry, ref Q.2, I meant should I replace T_Std/TLR with some other expression above the Tropopause??

EDIT2: Think I've got it

if ( 15 - Pressure_Alt_ft*0.0019812 < -56.5)
{
TropAlt = PressureAlt - 56.5/0.0019812
TempStd = 288.15 - 56.5;
Density_Alt_ft = Pressure_Alt_ft + (TempStd/0.0019812 + TropAlt) * (1 - Math.Pow((TempStd / I_AmbientAirTemperature),0.2349690));
else
TempLapse= Pressure_Alt_ft*0.0019812;
TempStd = 288.15 - Templapse;
Density_Alt_ft = Pressure_Alt_ft + (TempStd/0.0019812) * (1 - Math.Pow((TempStd / I_AmbientAirTemperature),0.2349690));
}
TempStd = 288.15 - TempLapse;
Density_Alt_ft = Pressure_Alt_ft + (TempStd/0.0019812) * (1 - Math.Pow((TempStd / I_AmbientAirTemperature),0.2349690));
Let me look at your code a bit.. and ill get back to ya!

So, one answer, one pending!
__________________
Theres a reason for instrumenting a plane for test..
That being a pilots's 'perception' of what is going on can be very different from what is 'actually' going on.

Last edited by ACE-OF-ACES; 07-19-2012 at 11:19 PM.
Reply With Quote
  #4  
Old 07-19-2012, 11:29 PM
ACE-OF-ACES's Avatar
ACE-OF-ACES ACE-OF-ACES is offline
Approved Member
 
Join Date: May 2010
Location: NM
Posts: 2,248
Default

My bad..

When checking for the tropopause, i.e.

Code:
if ( height < tropopause ) then
else
end
We have to adjust the whole T_std equation, not the the TLR!

Note I had this

Code:
if ( height < tropopause ) then
   TLR = 6.49(°C/1,000m) = 1.98(°C/1,000ft) = 3.56(°F)/1,000ft
else
   TLR = -56.5(°C) = 216.65(°K)
Which is wrong!

What we want to do is this

Code:
if ( height < tropopause ) then
   T_std = T_o - Alt_ind × TLR
else
   T_std = T_tropopause
Where
Code:
T_Topopause = -56.5(°C) = 216.65(°K)
__________________
Theres a reason for instrumenting a plane for test..
That being a pilots's 'perception' of what is going on can be very different from what is 'actually' going on.

Last edited by ACE-OF-ACES; 07-19-2012 at 11:45 PM.
Reply With Quote
  #5  
Old 07-20-2012, 04:12 AM
ACE-OF-ACES's Avatar
ACE-OF-ACES ACE-OF-ACES is offline
Approved Member
 
Join Date: May 2010
Location: NM
Posts: 2,248
Default

Just got home and thought I would do a quick ROC TTC test..

In this test I set the Altimeter_set to 1025mB..

And note in the TTC you can see the I_Altitude changes (red) as I change mB.

Anyway, not a formal test, so don't draw any conclusions from these results.
Attached Images
File Type: jpg Spitfire MK.Ia ROC.jpg (156.7 KB, 22 views)
File Type: jpg Spitfire MK.Ia TTC.jpg (150.7 KB, 16 views)
__________________
Theres a reason for instrumenting a plane for test..
That being a pilots's 'perception' of what is going on can be very different from what is 'actually' going on.

Last edited by ACE-OF-ACES; 07-20-2012 at 04:16 AM.
Reply With Quote
  #6  
Old 07-20-2012, 06:46 AM
klem's Avatar
klem klem is offline
Approved Member
 
Join Date: Nov 2007
Posts: 1,653
Default

Quote:
Originally Posted by ACE-OF-ACES View Post
Just got home and thought I would do a quick ROC TTC test..

In this test I set the Altimeter_set to 1025mB..

And note in the TTC you can see the I_Altitude changes (red) as I change mB.

Anyway, not a formal test, so don't draw any conclusions from these results.
OK, couple of things.

Rethinking what I said about:

if ( 15 - Pressure_Alt_ft*0.0019812 < -56.5) <--- determines the Tropopause altitude
{
TropAlt = PressureAlt - 56.5/0.0019812 <--- calculates altitude element above Tropopause
TempStd = 288.15 - 56.5;
Density_Alt_ft = Pressure_Alt_ft + (TempStd/0.0019812 + TropAlt) * (1 - Math.Pow((TempStd / I_AmbientAirTemperature),0.2349690));
else
TempLapse= Pressure_Alt_ft*0.0019812;
TempStd = 288.15 - Templapse;
Density_Alt_ft = Pressure_Alt_ft + (TempStd/0.0019812) * (1 - Math.Pow((TempStd / I_AmbientAirTemperature),0.2349690));
}
TempStd = 288.15 - TempLapse;
Density_Alt_ft = Pressure_Alt_ft + (TempStd/0.0019812) * (1 - Math.Pow((TempStd / I_AmbientAirTemperature),0.2349690));

I'm not sure about the part:
Density_Alt_ft = Pressure_Alt_ft + (TempStd/0.0019812 + TropAlt) * (1 - Math.Pow((TempStd / I_AmbientAirTemperature),0.2349690));

TempStd/0.0019812 is the correction of Pressure_Alt_ft within the Troposphere, beyond which there is no/negligible further Temperature Lapse so no correction seems to be required for that so I think the original formula applies, just
Density_Alt_ft = Pressure_Alt_ft + (TempStd/0.0019812) * (1 - Math.Pow((TempStd / I_AmbientAirTemperature),0.2349690));


EDIT 2: OK, regarding I_AmbientAirTemp, as you say it is only present where the gauge is fitted and it isn't in the Spitfire or Hurricane and returns zero.

so, how about this to get I_AmbientAirTemperature ?
if (I_Altitude / Z_AltitudeMSL_m > 2.5) //is I_Altitude in feet?
{
Z_TempLapse = (Z_AmbientAirTemp - 288.15) / Z_AltitudeMSL_ft;
else
Z_TempLapse = (Z_AmbientAirTemp - 288.15) / Z_AltitudeMSL_m;
}
I_AmbientAirTemperature = I_Altitude * Z_TempLapse;


Also, what are you using to create your charts? I tried plotting the Y axis as Altitude (as is often done for these tests) but Excel threw a wobbly when the Level Speeds or ROC reversed with altitude.

PS Further apologies to Felipe for turning his Spitfire thread into a general "Aircraft Performance Measurement" thread but I think it is just about On Topic
__________________
klem
56 Squadron RAF "Firebirds"
http://firebirds.2ndtaf.org.uk/



ASUS Sabertooth X58 /i7 950 @ 4GHz / 6Gb DDR3 1600 CAS8 / EVGA GTX570 GPU 1.28Gb superclocked / Crucial 128Gb SSD SATA III 6Gb/s, 355Mb-215Mb Read-Write / 850W PSU
Windows 7 64 bit Home Premium / Samsung 22" 226BW @ 1680 x 1050 / TrackIR4 with TrackIR5 software / Saitek X52 Pro & Rudders

Last edited by klem; 07-20-2012 at 08:49 AM. Reason: Woke Up!
Reply With Quote
  #7  
Old 07-20-2012, 02:52 PM
ACE-OF-ACES's Avatar
ACE-OF-ACES ACE-OF-ACES is offline
Approved Member
 
Join Date: May 2010
Location: NM
Posts: 2,248
Default

Hey klem

Im at work right now.. But Ill take a look at your Java code when I get home tonight.. I don't want to rush it and make a silly mistake like I did with T_slr vs TLR

As for the units, The variables that start with 'I_' as in indicated as in the cockpit guages will change betwen IMPERIAL and SI units depending on the country of origin. For example, when test the Spit the I_Altitude will display 'feet' but when testing the 109 it will display 'meters'. Where as the 'Z_' values are allways in SI units.

As for what I use to graph, I use matlab. As for excel, you can flip the axis, simply right-mouse-click on the graph and select 'Source Data' at which point it will display the data for the X and Y axis.. You just have to flip the X and Y sources.. You can type it in, which can be messy, or cut-in-paste swap, or simply click on the button and drag-n-drop the columns of data.. Which can be messy if you have alot of data. See attached for excel examples
Attached Images
File Type: jpg excel data and graphs.jpg (173.5 KB, 16 views)
File Type: jpg excel source data.jpg (52.4 KB, 12 views)
__________________
Theres a reason for instrumenting a plane for test..
That being a pilots's 'perception' of what is going on can be very different from what is 'actually' going on.

Last edited by ACE-OF-ACES; 07-20-2012 at 04:03 PM.
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 08:16 AM.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Copyright © 2007 Fulqrum Publishing. All rights reserved.