1
0
Fork 0
Commit graph

374 commits

Author SHA1 Message Date
Henning Stahlke
05f9fcfd10 comments 2017-03-07 17:50:04 +01:00
Henning Stahlke
dc66959b83 YASim comments 2017-03-07 17:50:04 +01:00
Henning Stahlke
1198f5a3ec YASim CLI tool: add print out of max lift and min drag
add drag(speed) print function
2017-03-07 17:50:04 +01:00
Henning Stahlke
cb7d2a1bc5 YASim Wing: add _aspectRatio and _meanChord.
(an some indent)
2017-03-07 17:50:04 +01:00
Henning Stahlke
a87442c6f3 YASim fix performance problem due to export to prop.tree. 2017-03-07 17:50:04 +01:00
Henning Stahlke
76a0ea96cc YASim clarification. Add const to method parameters in Math.hpp 2017-03-07 17:50:04 +01:00
Henning Stahlke
4cbe540bec YASim: convert local variables alpha and stallAlpha to members of Surface. 2017-03-07 17:50:03 +01:00
Henning Stahlke
5f78545961 only white spaces 2017-03-07 17:50:03 +01:00
Henning Stahlke
d4688d206a YASim: export surface data to property tree. 2017-03-07 17:50:03 +01:00
Henning Stahlke
d322ded552 YASim bugfix: ground effect did not calculate wingspan correctly;
Variable name clarification;
Add Wing::getWingArea, separate Wing::getWingSpan and Wing::getBase.
2017-03-07 17:50:03 +01:00
Henning Stahlke
559dcf4e32 YASim optimization: pre-calculate data for masses that do not change in flight to save CPU (RigidBody::recalc() runs at FDM rate).
export mass data to property tree.
2017-03-07 17:50:03 +01:00
Henning Stahlke
4e1be43f15 YASim: export wing data to property tree. 2017-03-07 17:50:03 +01:00
Henning Stahlke
021a9db9be YASim add surface id and export surface positions to prop tree after model compile. 2017-03-07 17:50:02 +01:00
Henning Stahlke
dd420c6ff4 YASim bugfix, correct an obvious copy-and-paste error 2017-03-07 17:50:02 +01:00
Henning Stahlke
41b18155a8 YASim: export FDM state (v, a, rot) to property tree. 2017-03-07 17:50:02 +01:00
Henning Stahlke
70dd3de3bb YASim: FGFDM convert local variable _yasimN into a class member 2017-03-07 17:50:02 +01:00
Henning Stahlke
2cac4e4671 YASim: Move variables and methods for input properties from FGFDM to ControlMap. 2017-03-07 17:50:01 +01:00
Henning Stahlke
f14cc3be33 Extend yasim-test.cpp; add print mass distribution, add plot with different configs 2017-03-07 17:47:51 +01:00
Henning Stahlke
6f1f850c11 YASim method name clarification Airplane::setWeight 2017-03-07 17:47:50 +01:00
Henning Stahlke
97a0511ce0 YASim method name clarification in class Surface 2017-03-07 17:47:50 +01:00
Henning Stahlke
91fd075796 YASim method name clarification Wind::setSlat 2017-03-07 17:47:50 +01:00
Henning Stahlke
91806861c6 YASim method name clarification Wind::setFlap1 2017-03-07 17:47:50 +01:00
Henning Stahlke
e69f6ba9ab YASim method name clarification Wind::setFlap0 2017-03-07 17:47:50 +01:00
Henning Stahlke
ce753c0382 YASim method name clarification Wing::setSpoiler 2017-03-07 17:47:50 +01:00
Henning Stahlke
b447bbdc5e Optimize YASim/RigidBody.cpp utilizing symmetry of tensor. 2017-03-07 17:47:49 +01:00
James Turner
3653508412 Build- and run-time concept of developer mode.
Make a single Cmake value to expose the build type to code, and use
this to default a run-time ‘developer-mode’ property, which can be
over-ridden from the command line.

Use this to drive the different warning levels. Policies subject to
review, especially whether nightly builds should default to 
developer mode or not.
2017-02-27 23:37:59 +00:00
Viktor Radnai
a26a5d741b Make wheels spin down slowly once off the ground 2017-01-26 20:36:07 +00:00
Erik Hofman
33f0b83b69 Viktor Radnai:
There is a Flightgear property called /sim/hitches/winch/automatic-release-angle-deg that can be used to simulate a safety feature built into modern gliders. If the cable angle gets too great during a winch launch, the hook will automatically release the cable. This usually happens when the glider gets almost on top of the winch at the top of the launch without releasing the cable.

Unfortunately winch launching has two separate implementations, one in Nasal for JSBSim, and another one in C++ for YASIM. The YASIM one does not implement this property so I wrote a patch to add this.
2016-12-22 11:49:15 +01:00
James Turner
14942f4e8b Move Yasim properties to /fdm/yasim
As discussed on the mailing list, make this more consistent with JSBsim.
We could still define common locations for these values as well, but
waiting on positive answer to that discussion on the ML.
2016-11-25 17:41:05 +00:00
James Turner
9bf337148d Expose c-of-g to property tree in YASim.
Patch by Henning Stalkhe
2016-11-18 16:40:38 +01:00
James Turner
e2f7585d9c Use a Cmake imported target for SimGear 2016-10-30 22:15:54 +00:00
Erik Hofman
f1f2e9f21d Brendan Black:
when active does not touch the way the YASim jet calculates fuel flow, but separates out the afterburning component of thrust, calculates the TSFC of that component and uses the same method of fuel flow calculation for the afterburning component then adds it to the existing fuel flow

When inactive (atsfc doesn't exist or is zero) it just behaves exactly as before

I finally got around to testing this small patch thoroughly, and I'm satisfied that it doesn't affect anything else & works across many different versions (i've been testing it with current as it has changed over the last 7 months)
2016-07-17 11:30:07 +02:00
Jeremy Bicha
25928bf614 Use CMAKE_INSTALL_BINDIR
Allow /bin install directory to be overriden. Debian for example uses this
to install FlightGear to /usr/games/ instead of /usr/bin/

https://cmake.org/cmake/help/latest/module/GNUInstallDirs.html
2016-07-09 18:52:58 -04:00
James Turner
7870e03faf Build fixes for yasim tests / SGPath changes. 2016-07-04 10:17:41 +01:00
James Turner
7f3fe584e3 Update for path-aware easyXML API 2016-07-03 23:43:39 +01:00
James Turner
03ecac9dbc Work with new SGPath API. 2016-06-22 17:36:05 +01:00
James Turner
a549c8fe45 Fix unused constants in YASim 2016-01-12 12:50:44 -06:00
James Turner
2314ccfe13 Developer-warnings
- make some existing warnings developer-mode only
- add a warning about legacy aircraft path usage
2015-11-13 22:13:44 +00:00
James Turner
f2d6b76b13 Portability: Fix compile errors on MSVC (cmath)
From Scott (xDraconian)
2015-03-24 11:11:42 -05:00
Colin Douglas Howell
54f954fd02 Fix for issue 1463 (YASim underestimates off-axis aerodynamic forces on fuselages)
Change the drag coefficient for fuselages along the Y and Z axes
(i.e. perpendicular to the fuselage's main axis) to use a fixed
value of 0.5. (The value can still be adjusted using the fuselage's
"cy" and "cz" XML attributes.)

For the Y-axis and Z-axis drag on fuselages, YASim originally used
a drag coefficient equal to:

	(solver drag factor) * (fuselage length/width ratio)

This value turns out to be way too small for well-streamlined
aircraft, even those with long, narrow fuselages, and especially
so for those with short, stubby fuselages. Such fuselages are
streamlined in the X direction, but not along Y or Z.

0.5 is only a ballpark estimate, but it's reasonably close for the
common case of a fairly long fuselage with a round cross section. For
flat-sided fuselages, a larger value should be used, up to a maximum
of 2 for a slab-sided block. For short fuselages, the value should be
reduced to account for end effects. The fuselage's "cy" and "cz" XML
attributes can be modified to make such adjustments.

This fix won't affect straight flight much, but it should have a strong
impact on some maneuvers. For example, it will make slips more
effective and may make knife-edge flight easier on aerobatic aircraft
which should be capable of it.

Only aircraft which specify version="YASIM_VERSION_32" or newer are
affected.
2014-05-12 19:07:10 -07:00
Colin Douglas Howell
907209746f Separate fuselage drag adjustment from that for landing gear and external weights.
This commit is in prepartion for the following commit, which is a bug fix for
Issue 1463 (YASim underestimates off-axis forces on fuselages).

Previously the solver would adjust the drag factor for all of an Airplane's
non-Wing Surfaces in one pass, with no attempt to distinguish Fuselage Surfaces
from the Surfaces for Gear and Weights. This makes it difficult to modify how
fuselage drag is calculated while leaving unaffected the drag for landing gear
and external weights.

Now the solver adjusts the drag for an Airplane's fuselages, landing gear, and
external weights in three separate passes. To do this, each Fuselage now has a
list of its Surfaces. The fuselage pass simply iterates through the list of
Fuselages, running through each Fuselage's list of Surfaces.

The Airplane's list of non-Wing Surfaces, "_surfs", is no longer used here, but
there may still be uses of it elsewhere.
2014-05-12 14:29:48 -07:00
Colin Douglas Howell
4d1aebad79 Fix for issue 1394 (YASim's geometry for non-cylindrical fuselages is wrong)
Correct handling of fuselage's "midpoint" XML attribute so that the midpoint's
location matches the point assumed by all aircraft developers and YASim docs.
This means the fuselage won't be generated "back-to-front".
Also correct the variation of diameter for tapered fuselages so that both ends
of the fuselage narrow from the midpoint to the endpoints.
Before this, one end was narrowing from the endpoint to the midpoint, the
opposite of what was expected.
These changes affect both weight distribution and the distribution of lateral
aerodynamic forces.
2014-05-06 10:38:48 +02:00
Torsten Dreyer
4e89d05fb4 YASim: implement a versioning system
user attribute "version" of the airplane element of the YASim config file
to define the version this config uses.
Example:
<airplane mass="1344" version="YASIM_VERSION_CURRENT">

Initially, the following can be used:
YASIM_VERSION_ORIGINAL - The original version of YASim as implemented up to
                         FlightGear 3.0.0
YASIM_VERSION_32 - The version of YASim implemented in FlightGear 3.2.x
                   (and the development version 3.1.x)
YASIM_VERSION_CURRENT - The current and latest version of YASim.
2014-04-20 20:58:12 +02:00
Colin Douglas Howell
ef2898f25c Corrected fix for issue 1423 (YASim miscomputes incidence rotation of force vector)
I got the sign wrong in my previous fix, causing the vector to be rotated the
wrong way. See my latest comments in issue 1423. Sorry about that.
2014-04-05 11:58:16 +02:00
Torsten Dreyer
ec2baa1a41 Merge commit 'refs/merge-requests/1579' of git://gitorious.org/fg/flightgear into yasimfixes 2014-04-04 08:57:16 +02:00
Torsten Dreyer
efc5c32633 Merge commit 'refs/merge-requests/1578' of git://gitorious.org/fg/flightgear into yasimfixes 2014-04-04 08:57:12 +02:00
Colin Douglas Howell
8cca0adc58 Fix for issue 1427 (YASim fuselage's "cx" affects drag on all axes)
Correct Airplane::compileFuselage() so that a Fuselage's "cx"
only affects drag on the X axis.
2014-03-27 02:12:11 -07:00
Colin Douglas Howell
aa27b38666 Fix for issue 1423 (YASim miscomputes force vector on Surfaces with nonzero incidence)
Surface::calcForce() now does reverse incidence rotation of force vector properly.
2014-03-25 01:50:21 -07:00
Colin Douglas Howell
8a9ce0ccf7 Fix for issue 1400 (YASim slats always give full stall enhancement)
Surface::stallFunc() now scales _slatAlpha by _slatPos when adjusting stallAlpha.
2014-03-22 12:11:39 -07:00
James Turner
ea822a99e1 Fix some warnings identified by Clang
_ unused private members. Removed in most cases, commented
out in a couple of cases where it feels as if the code might be used in the future.
2013-11-16 09:41:33 +00:00