1
0
Fork 0
Commit graph

44 commits

Author SHA1 Message Date
Henning Stahlke
408e645bb2 YASIM add wing section support
refactoring of FGFDM parser
replace old helpers with lib functions from <cstring>
remove typecast that kills 'const'
add some comments and clarify variable names
2017-12-19 08:44:41 +01:00
Henning Stahlke
e913e44aa0 YASIM type name clarification 2017-12-15 15:20:29 +01:00
Henning Stahlke
b0a831e667 YASim: initialize floats with 'f' suffix to avoid problems with windows build 2017-05-03 22:17:08 +02:00
Henning Stahlke
0a0402f667 YASim Airplane refactoring (code dedup). 2017-04-25 09:19:25 +02:00
Henning Stahlke
add6c6b8a8 YASim: Airplane solver uses standard atmosphere so we can replaced atmosphere members with floats for altitude and pass those to setup atmo where needed directly from altitude. 2017-04-25 09:19:25 +02:00
Henning Stahlke
8064135665 YASim: Moved Airplane::setupState to BodyEnvironment 2017-04-25 09:18:26 +02:00
Henning Stahlke
ed6dee3f55 YASim Airplane: add initalizers. 2017-04-24 18:31:03 +02:00
Henning Stahlke
3457c3c61f YASim: convert Atmosphere to a non-static class so we can pass around air parameters in one object instead of several variables. 2017-04-22 16:14:52 +02:00
Henning Stahlke
5e99f92a0f YASim: conver Airplane::setupState from static to const 2017-04-22 15:06:02 +02:00
Henning Stahlke
ef9fa25b94 YASim: update default for desired cg range. 2017-04-18 22:27:35 +02:00
Henning Stahlke
73de375249 YASim declared get methods as const. (correction to previous commit) 2017-04-18 19:12:23 +02:00
Henning Stahlke
3f0ef99c71 YASim: add MAC (mean aerodynamic chord) and c.g. calculations. 2017-04-17 22:52:26 +02:00
Henning Stahlke
7f5a91ea47 YASim: refactoring loadControls() 2017-04-17 20:09:44 +02:00
Henning Stahlke
dbf21b1ca8 YASim calculate max CG range (on x-axis) from gear positions, to implement checks later (a better guesstimate will follow). 2017-03-11 22:44:45 +01:00
Henning Stahlke
e78a763eef YASim Airplane: move one-liners to header and remove unused code. 2017-03-11 21:29:05 +01:00
Henning Stahlke
cb7d2a1bc5 YASim Wing: add _aspectRatio and _meanChord.
(an some indent)
2017-03-07 17:50:04 +01:00
Henning Stahlke
4e1be43f15 YASim: export wing data to property tree. 2017-03-07 17:50:03 +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
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
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
timoore
ebf2e996e9 Fixes for compiling with gcc 4.3
Include standard header files and qualify with std:: where needed.

Qualify various char parameters and variables with const.
2008-04-13 21:12:36 +00:00
mfranz
53f09ff6a5 Maik JUSTUS: (OK'ed by Andy)
"""
- ground properties (e.g. feel bumpiness and the reduced friction of
  grass or go swimming with the beaver)
- initial load for yasim gears (to get rid of the jitter the beaver has
  on ground)
- glider/winch/aerotow (do winch start with YASim glider or do aerotow
  over the net) I will place a how-to on the wiki soon, here very short:
  use the sgs233y (or the bocian if you have AJ (up ot now) non-GPL
  bocian)
  winch start: Ctrl-w for placing the winch, hold w to winch, press
               Shift-w to release the tow
  aerotow: Place the glider within 60m to a MP-aircraft, press
           Ctrl-t to tow to this aircraft. If the MP-aircraft is the
           J3 and the patch is installed on both sides, the J3 feels the
           forces, too. The J3-pilot has to taxi very slow up to the
           moment, the glider starts moving. Increase the throttle gently.
           Don't lift the J3 early, wait for the glider being lifted,
           lift gently.
"""
2007-01-17 20:42:39 +00:00
andy
5aa142ee5f Patch from Joacim to fix a bug where rotor weights were doubled. 2007-01-10 19:03:02 +00:00
andy
ef7e7f90dd Patch from Maik adds user-settable scaling constants for per-axis fuselage drag and induced drag. 2006-12-18 21:22:20 +00:00
andy
0838ca6d35 Giant helicopter code update from Maik Justus. 2006-08-14 21:59:44 +00:00
andy
90e7c4ec43 Add a lift/drag vs. AoA graph option to the yasim tool, which
generates a data file of aerodynamic lift and drag (and L/D) against
AoA at a specified speed and altitude through a full circle.  Wrote it
to track down the YF-23 superthrust issue, but it wasn't any help.
All the forces look fine.
2006-08-08 18:05:43 +00:00
andy
6ed0ece57c While I had the valgrind rig set up, I took the opportunity to plug a
bunch of memory leaks that had accumulated over the years.  FlightGear
doesn't currently bother to destroy and recreate a YASim context, but
at least it can do so now without worry.
2006-03-10 22:21:42 +00:00
ehofman
c2e688244d Mathias Frohlich: Add carrier capabilities for YASim aircraft. 2005-02-17 10:26:14 +00:00
andy
c62048d5e2 YASim now supports the new fuel.nas fuel management system. It
reads the /consumables tree for input to determine weights, but
places output only in /engines/engine[n]/fuel-consumed-lbs where
it gets picked up by the Nasal code.
2004-03-27 04:07:18 +00:00
andy
8d1698d21a Added a <solve-weight> subtag of the approach/cruise parameters that can
be used to set the variable weights to specific values for the solution.
2004-02-18 15:36:35 +00:00
andy
500b081ca5 Allow a "fuel" attribute in the approach and cruise tags to have
values other than the defaults (20% and 50%, respectively)
2004-02-17 23:24:36 +00:00
andy
3b2d97289c Cleanup and refactoring to better integrate the helicopter code into
the core YASim stuff.  Mostly cosmetic: whitespace adjustment, dead
code & meaningless comment removal, a little code motion to better
partition the helicopter handling from the original code (no more
giant if() { ... } around the solver).  Added a warning to the parser
to try to eliminate the string booleans that crept in.

There should be NO behavioral changes with this checkin.
2003-12-01 01:22:27 +00:00
curt
5333f82eb1 Maik Justus: modifications to add helicopter modeling to YASim. 2003-10-16 14:56:13 +00:00
andy
d98b7f05ff Honor the /sim/freeze/fuel property to inhibit fuel consumption at runtime.
Link the standalone executable against the source files explicitly rather
than libYASim, as the Irix linker can't handle the unneeded dependance on
other parts of FlightGear.
2002-11-30 20:22:25 +00:00
andy
388d714fdc Fuel consumption. Simple implementation without support for tank selection
or engine-specific feeds.
2002-11-30 06:12:20 +00:00
andy
4535c84b99 Solve for the elevator control input during approach. It turns out that
the downforce from the tail due to elevator trim is a significant contribution
to total lift.
2002-05-21 07:40:46 +00:00
andy
ab381e5c01 Added a property output feature to ControlMap that allows arbitrary binding
and scaling of control values to properties.  Also added a time interpolation
feature that replaces the hacked-in "retract-time" feature for the gear in
a more general way (applicable to flaps, too!).  Incompatibly breaks
the XML syntax; get new files!
2002-03-01 06:47:28 +00:00
andy
df9069a224 Added a post-solver "initEngines()" call to return the engines to a sane
initial state.  No more starting up at cruise RPM.
2002-02-27 00:41:57 +00:00
andy
764eb2a2e7 Automatically generate "contact" points for collision detection. Implemented
as extra (and invisible) gear objects.
2002-02-20 07:12:27 +00:00
david
f0e6716953 Latest YASim changes. 2001-12-24 13:54:03 +00:00
curt
e08d4359cd Tweaks to fix directory change. 2001-12-06 18:16:22 +00:00
curt
4c422bbe6d Updated to YASim-0.1.1 2001-12-06 18:13:24 +00:00
curt
5b84ae51a5 Initial revision of Andy Ross's YASim code. This is (Y)et (A)nother Flight
Dynamics (Sim)ulator.  Basically, this is a rough, first cut of a "different
take" on FDM design.  It's intended to be very simple to use,
producing reasonable results for aircraft of all sorts and sizes,
while maintaining simulation plausibility even in odd flight
conditions like spins and aerobatics.  It's at the point now where one
can actually fly the planes around.
2001-12-01 06:22:24 +00:00