Skip to content

Commit 6e6cdb2

Browse files
committed
Edits, more bib entries, section titles conforming to JOSS
1 parent f9ffe51 commit 6e6cdb2

2 files changed

Lines changed: 27 additions & 10 deletions

File tree

joss_paper/paper.bib

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -682,6 +682,20 @@ @inproceedings{Goppert:DeMarco:2011:Trim:Strategies:JSBSim
682682
url = {https://www.iris.unina.it/handle/11588/403686}
683683
}
684684

685+
% --- Other / General ---
686+
687+
@inproceedings{Sequeira:2006:Comparing:Aerodynamic:Models,
688+
author = {Sequeira, Christopher J. and Willis, David J. and Peraire, Jaime},
689+
title = {Comparing Aerodynamic Models for Numerical Simulation of Dynamics and Control of Aircraft},
690+
booktitle = {44th AIAA Aerospace Sciences Meeting and Exhibit},
691+
eventdate = {2006-01-09/2006-01-12},
692+
venue = {Reno, Nevada},
693+
date = {2006-01},
694+
publisher = {American Institute of Aeronautics and Astronautics},
695+
number = {AIAA 2006-1254},
696+
doi = {10.2514/6.2006-1254},
697+
}
698+
685699
% --- UNCHECKED references
686700
%==========================================================================================
687701

joss_paper/paper.md

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -80,19 +80,19 @@ In the research community, several tools are used to model flight dynamics, but
8080

8181
## Comparative Analysis
8282

83-
Within the open-source and free-to-use landscape, [YASim](https://wiki.flightgear.org/YASim) (used in FlightGear) offers a quick-solving approach where the FDM is automatically generated from geometry and performance points using Blade Element Theory. While efficient for rapid prototyping, it generates plausible but low-fidelity models. It lacks essential features for research, such as a scriptable environment, a flight control system (FCS), or the ability to use medium or high fidelity aerodynamic models.
83+
Within the open-source and free-to-use landscape, [YASim](https://wiki.flightgear.org/YASim) (used in [FlightGear](https://www.flightgear.org)) offers a quick-solving approach where the FDM is automatically generated from geometry and performance points using Blade Element Theory. While efficient for rapid prototyping, it generates plausible but low-fidelity models. It lacks essential features for research, such as a scriptable environment, a flight control system (FCS), or the ability to use medium or high fidelity aerodynamic models.
8484

8585
In the simulation space, [X-Plane](https://www.x-plane.com/) also utilizes the Blade Element Theory. However it cannot run natively in a headless mode ([requiring a workaround with dummy graphical interfaces](https://github.com/adderbyte/GYM_XPLANE_ML/tree/master/XPlane_HeadlessMode_And_DockerFile)), which hinders its use in massive parallel simulation or cloud-based AI training. Furthermore, its closed-source nature makes it difficult to extend or integrate deeply into custom research pipelines without complex, third-party interfaces.
8686

87-
Engineering-focused tools like the [MATLAB Aerospace Toolbox](https://www.mathworks.com/products/aerospace-toolbox.html) provide high-fidelity components but are proprietary and require the MATLAB/Simulink ecosystem. They often consist of discrete blocks that the user must "glue" together with custom code, increasing the complexity and maintenance overhead of the simulation.
87+
Engineering-focused tools like the [MATLAB Aerospace Toolbox](https://www.mathworks.com/products/aerospace-toolbox.html) provide high-fidelity components but are proprietary and require the MATLAB/Simulink ecosystem. They often consist of discrete blocks that the user must `glue' together with custom code, increasing the complexity and maintenance overhead of the simulation.
8888

8989
## Unique Scholarly Contribution
9090

91-
JSBSims unique contribution is providing a standalone, coefficient-based FDM that bridges the gap between these alternatives. Unlike YASim and X-Plane, JSBSim primarily uses stability derivatives to model vehicle dynamics. While more complex transient models (like Blade Element Theory, Vortex Lattice or panels method) exist, research by [C. Sequeira et al.](https://doi.org/10.2514/6.2006-1254) demonstrates that for most designs, a well-defined stability derivative model provides comparable fidelity without the computational cost of transient aerodynamics.
91+
JSBSim's unique contribution is providing a standalone, coefficient-based FDM that bridges the gap between these alternatives. Unlike YASim and X-Plane, JSBSim primarily uses stability derivatives to model vehicle dynamics. While more complex transient models (like Blade Element Theory, Vortex Lattice or panels method) exist, research by @Sequeira:2006:Comparing:Aerodynamic:Models demonstrates that for most designs, a well-defined stability derivative model provides comparable fidelity without the computational cost of transient aerodynamics. Stability derivatives can be constant or functionally dependent on other state and input variables. However, the use of stability derivatives is not the only option available to FDM model authors. The XML-based metalanguage provided by JSBSim allows for the use of general, nonlinear, and multidimensional lookup tables to model any type of behavior within the FDM model.
9292

9393
By providing a complete, turnkey solution, JSBSim allows researchers to bypass the complexity of building a simulation engine from scratch and focus entirely on their specific area of study. Furthermore, for research topics that require modeling beyond the standard stability derivative approach, JSBSim's `external_reactions` feature offers the flexibility to interface with any external aerodynamic or propulsive simulation method, ensuring the library remains extensible for even the most unconventional aerospace designs.
9494

95-
# Development and Design Choices
95+
# Software Design
9696

9797
JSBSim was designed from the ground up with several features in mind. One was to make the codebase easily comprehensible and expandable, and another was to completely separate the characteristics of a specific vehicle from a completely generic codebase. This was done in part to keep possibly proprietary information out of the codebase [@Berndt:2004:JSBSim].
9898

@@ -102,15 +102,13 @@ In a nutshell, the flow of the code can be illustrated as follows:
102102

103103
JSBSim is data-driven, with all specific model characteristics contained in data files, therefore there is no need to recompile the code to model a different vehicle, or changes to the vehicle characteristics.
104104

105-
This is a key design feature of JSBSim, which allows users to define an entire FDM model using XML files—unlike, for example, [LaRCSim](https://ntrs.nasa.gov/citations/19950023906), a similar generic flight simulation library developed by NASA, where modifying aircraft parameters required writing and re-compiling C code.
105+
This is a key design feature of JSBSim, which allows users to define an entire FDM model using XML files—unlike, for example, [LaRCSim](https://ntrs.nasa.gov/citations/19950023906), a similar generic flight simulation library developed by NASA, where modifying aircraft parameters requires writing and re-compiling C code.
106106

107107
Furthermore, JSBSim's low computational footprint allows it to run on virtually any personal computer. The reliance on XML for configuration and CSV for output enables a lightweight development workflow. Users can create and refine complex FDMs using any basic text editor and process simulation results with ubiquitous tools such as Microsoft Excel or Gnuplot. This approach eliminates the need for specialized development environments.
108108

109109
## JSBSim FDM Definition
110110

111-
A brief introduction to the various XML based components that make up a JSBSim FDM.
112-
113-
The FDM is defined in one or more XML files which define the mass configuration, ground reactions for the gear, propulsion, the flight control system and the forces and moments for the 6 axes.
111+
The FDM in JSBSim is defined in one or more XML files which define the mass configuration, ground reactions for the gear, propulsion, the flight control system as well as forces and moments projected onto properly chosen reference axes.
114112

115113
### Mass
116114

@@ -197,7 +195,7 @@ JSBSim provides a number of mathematical functions for use in calculating a forc
197195

198196
JSBSim provides a number of pre-calculated properties, e.g. `aero/qbar-psf` is the dynamic pressure $\frac{1}{2} \rho V^2$ calculated based on the current air density of the aircraft within the atmosphere model and the aircraft’s true airspeed.
199197

200-
The property system used by JSBSim, which is essentially the same as the one used by [FlightGear](https://www.flightgear.org), is a highly versatile way to create and access data using a hierarchical structure. This hierarchy organizes parameters into logical groups, as seen in the examples above: aerodynamic properties are grouped under the `aero/` prefix (e.g., `aero/qbar-psf`, `aero/alpha-rad` for angle of attack, or `aero/beta-rad` for sideslip angle), while geometric parameters are stored under `metrics/` (e.g., `metrics/Sw-sqft` for wing area or `metrics/cbarw-ft` for mean aerodynamic chord). This structured approach ensures data organization and promotes naming consistency across different aircraft models.
198+
The property system used by JSBSim, which is essentially the same as the one used by FlightGear, is a highly versatile way to create and access data using a hierarchical structure. This hierarchy organizes parameters into logical groups, as seen in the examples above: aerodynamic properties are grouped under the `aero/` prefix (e.g., `aero/qbar-psf`, `aero/alpha-rad` for angle of attack, or `aero/beta-rad` for sideslip angle), while geometric parameters are stored under `metrics/` (e.g., `metrics/Sw-sqft` for wing area or `metrics/cbarw-ft` for mean aerodynamic chord). This structured approach ensures data organization and promotes naming consistency across different aircraft models.
201199

202200
During each time step JSBSim evaluates each function defining a force for each axis and sums all the forces in order to calculate the net force per axis.
203201

@@ -446,7 +444,7 @@ The figure below shows number of stars received by the GitHub repository of JSBS
446444

447445
![Number of stars received by the JSBSim GitHub repository from 2018 to 2026.](assets/jsbsim_stargazers.png)
448446

449-
# Use Cases and Research Applications
447+
# Research Impact Statement
450448

451449
JSBSim is used across a broad range of aerospace applications, including flight control development, UAV research, aircraft design studies, and simulation-based testing. It's use in academic and industry research has resulted in over 1000 citations as per Google Scholar, and it has been integrated into several popular flight simulators and research platforms. In the existing scientific literature, the key works on JSBSim are those by @Berndt:2004:JSBSim, @DeMarco:2007:General:Solution:Trim, @Berndt:DeMarco:2009:Progress:JSBSim, @Murri:2015:Check:Cases.
452450

@@ -478,4 +476,9 @@ JSBSim's versatility is further expanded by its blossoming Python ecosystem, whi
478476

479477
JSBSim is currently being maintained and developed by Bertrand Coconnier, Sean McLeod, and Agostino De Marco, along with contributions from the broader community. Initial architecture and development was done by Jon Berndt, with major contributions from Tony Peden, David Megginson, and David Culp. Initial integration into the FlightGear open source flight simulator was assisted by Curt Olson.
480478

479+
# AI Usage Disclosure
480+
481+
During the preparation of this manuscript, AI‑based tools were used basically to support clarity, language refinement, and the management of bibliographic information. All outputs were critically reviewed and edited by the authors. The authors remain fully responsible for the content of the manuscript, including its accuracy, validity, and compliance with ethical and scholarly standards.
482+
In terms of coding, data generation and scientific claims—due to the fact that JSBSim largely predates the advent of AI—most of the software development has been made by humans and all the contributions are reviewed by humans.
483+
481484
# References

0 commit comments

Comments
 (0)