Skip to content
View in the app

A better way to browse. Learn more.

The AVSIM Community

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Extremely Nonlinear Calculation... (XML)

Featured Replies

  • Moderator

I have a rather interesting problem, the solution to which has thus far escaped my grasp...For a gear driven prop with 1:1.67 gear reduction ratio...Depending on the power setting the propeller pitch is adjusted such that the required RPM will be obtained as shown in the following diagram (which I've changed to a table for the forum). Imagine an inverted bell curve with the lowest point centered at 1750 rpm. BTW, the following only applies while the a/c is airborne. On ground, normal prop rpm is in effect.Because it is direct drive, while flying even at flight idle (0% Load), the prop is effectively "spinning the engine", hence the odd curve. At around 25% Load, the engine returns to "spinning the prop" which is of course why the prop rpm begins increasing again.-------------------------------------------------------------------------------------------LOAD%...........RPM0...................210025.................175050.................188075.................2030100...............2300 For sim purposes, I've tied the prop pitch and throttle% together. This a/c has an automatic prop pitch that's directly proportional to power, which works well enough as I've coded it in my C gauge, but for "display purposes" I need to calculate a non-linear RPM value return based on the above criteria.While I can easily script ranges where a different offset value is applied, this means the offset value remains constant throughout the range of the condition. Passing from one range to another results in "jumps" of both the digital display and the tape display.For example, for the range 0 to 25, an offset of - 2716 will result in @PropRpm1 "scaling" smoothly from 2300 to 1750. For the range 25 to 50, an offset of 455 scales fairly smoothly from 1750 to 1880.The response begins to be increasingly "wonky" above 50% power though:

	<Macro Name="Throttle1">(A:GENERAL ENG THROTTLE LEVER POSITION:1, percent)</Macro>	<Macro Name="Throttle2">(A:GENERAL ENG THROTTLE LEVER POSITION:2, percent)</Macro>		<Macro Name="PropRpm1">		@Throttle1 26 <		if{		2716 (A:Prop1 RPM,RPM) -		}		@Throttle1 25 > @Throttle1 51 < and		if{		(A:Prop1 RPM,RPM) 455 +		}		@Throttle1 50 > @Throttle1 76 < and		if{		(A:Prop1 RPM,RPM) 160 +		}		@Throttle1 76 >		if{		(A:Prop1 RPM,RPM)		}	</Macro>

Has anyone an idea for a "better approach" to this?

Fr. Bill    

AOPA Member: 07141481 AARP Member: 3209010556


     Avsim Board of Directors | Avsim Forums Moderator

Bill, Maybe try a table using CASE for the PWR settings above 50%.

@Throttle1 50 > @Throttle1 76 < and        if{        75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 25 @Throttle1 50 - Near Case  (A:Prop1 RPM,RPM) +        }

The values of the case example just represent the placement for the PWR setting offset. Just an idea thats all. Another thing to look at is the maximum case values available.. I know there is, just cannot remember.Roman

20AUG21_Avsim_Sig.png?dl=1  FS RTWR   SHRS F-111   JoinFS   Little Navmap 
 

 

I'm not sure that I've fully understood the problem nor how (A:Prop1 RPM,RPM) varies. However, there does seem to be a discrepancy between ranges as shown in the following table. I've attempted to work back to calculate what (A:Prop1 RPM,RPM) should be at the tops and bottoms of the ranges to give the required value for PropRpm1:@Throttle1...PropRpm1...Offset.....(A:Prop1 RPM,RPM)?..............0...........2100......2716............................616..........24.9..........1750.......2716............................966..........25.1 .........1750........455...........................1295..........49.9......... 1880........455...........................1425..........50.1..........1880........160...........................1720..........74.9..........2030........160...........................1870..........75.1..........2030...........0...........................2030...........100..........2300...........0...........................2300 In general if you have pairs of values (x0, x1) and (y0, y1) and given a value for x you want to interpolate linearly between them to get the corresponding value of y then the following should do it (E&OE):

x x0 ≥ x x1 < and if{ y0  y1 y0 - x x0 - * x1 x0  - / + }

Gerry Howard

  • Author
  • Moderator

Thank you both, gentlemen. You've given me some alternates with which to explore...I'll try out both and see which works out best and/or easiest. It's only the case from 75% and above that's given me a real problem... :(No matter what, I have to keep (A:Prop1 RPM,RPM) in the "formula" because it will allow the final value to "fluctuate" just a bit... :(

Fr. Bill    

AOPA Member: 07141481 AARP Member: 3209010556


     Avsim Board of Directors | Avsim Forums Moderator

If you want the curves to be really nice and smooth, I'd do a quadratic regression on your data points. There should be info online, probably even pages that'll do that for you. You'd probably have to combine two equations, however: one between 0 and 25, and one from 25 through 100, since the two sides of your distorted parabola sound nowhere near symmetrical. Still, this should not be hard, as you can just invent 1 extra point (if needed) in order to flatten each curve's slope out right around 25... meaning the two curves will fit your data very well, and will fit together nicely right at 25% load. In fact, hold on... Found an applet that does this. These two equations below meet at x=25 (25% load) pretty nicely, and they're nice smooth curves running through (or very close to) all of your data points.y = .56x^2 - 28x + 2100 [for 0 to 25]y = .056x^2 + 0.2x + 1715 [for 25 to 100]x is load %y is RPMThe only issue, really, is... is that much precision in the load/rpm relationship needed so badly as to justify the horsepower needed for those continual computations? Your call, obviously, but I'd be interested to see if that actually gets you what you're looking for.Oh, in case I copied a number wrong or whatever, you can redo the regression process at: http://science.kennesaw.edu/~plaval/applets/QRegression.htmlScott

I have a rather interesting problem, the solution to which has thus far escaped my grasp...For a gear driven prop with 1:1.67 gear reduction ratio...Depending on the power setting the propeller pitch is adjusted such that the required RPM will be obtained as shown in the following diagram (which I've changed to a table for the forum). Imagine an inverted bell curve with the lowest point centered at 1750 rpm. BTW, the following only applies while the a/c is airborne. On ground, normal prop rpm is in effect.Because it is direct drive, while flying even at flight idle (0% Load), the prop is effectively "spinning the engine", hence the odd curve. At around 25% Load, the engine returns to "spinning the prop" which is of course why the prop rpm begins increasing again.-------------------------------------------------------------------------------------------LOAD%...........RPM0...................210025.................175050.................188075.................2030100...............2300 For sim purposes, I've tied the prop pitch and throttle% together. This a/c has an automatic prop pitch that's directly proportional to power, which works well enough as I've coded it in my C gauge, but for "display purposes" I need to calculate a non-linear RPM value return based on the above criteria.While I can easily script ranges where a different offset value is applied, this means the offset value remains constant throughout the range of the condition. Passing from one range to another results in "jumps" of both the digital display and the tape display.For example, for the range 0 to 25, an offset of - 2716 will result in @PropRpm1 "scaling" smoothly from 2300 to 1750. For the range 25 to 50, an offset of 455 scales fairly smoothly from 1750 to 1880.The response begins to be increasingly "wonky" above 50% power though:
	<Macro Name="Throttle1">(A:GENERAL ENG THROTTLE LEVER POSITION:1, percent)</Macro>	<Macro Name="Throttle2">(A:GENERAL ENG THROTTLE LEVER POSITION:2, percent)</Macro>		<Macro Name="PropRpm1">		@Throttle1 26 <		if{		2716 (A:Prop1 RPM,RPM) -		}		@Throttle1 25 > @Throttle1 51 < and		if{		(A:Prop1 RPM,RPM) 455 +		}		@Throttle1 50 > @Throttle1 76 < and		if{		(A:Prop1 RPM,RPM) 160 +		}		@Throttle1 76 >		if{		(A:Prop1 RPM,RPM)		}	</Macro>

Has anyone an idea for a "better approach" to this?

  • Author
  • Moderator

Thanks! Now that's an interesting applet...Here is the actual performance graph I need to emulate:proprpmvsload.jpgThese two equations seem like they will be a close enough "fit" to the curve......it will be simple enough to try out, in any case. I can add a <tag> to keep the update rate down to about 1 second, so it shouldn't be too much of a strain. ;)quadraticregression01.jpgShot at 2009-09-10

Fr. Bill    

AOPA Member: 07141481 AARP Member: 3209010556


     Avsim Board of Directors | Avsim Forums Moderator
  • 2 weeks later...
Thanks! Now that's an interesting applet...Here is the actual performance graph I need to emulate:proprpmvsload.jpgThese two equations seem like they will be a close enough "fit" to the curve......it will be simple enough to try out, in any case. I can add a <tag> to keep the update rate down to about 1 second, so it shouldn't be too much of a strain. ;)quadraticregression01.jpgShot at 2009-09-10
Hello Bill,EXCEL will do the same. Create an X-Y diagram, add a trend (or however this is called in english version), use polynomic (3rd power) and tick to show the equation in the diagram. I've got y = -0,0019x3 + 0,432x2 - 22x + 2092Herbert

Create an account or sign in to comment

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.