1540 Commits

Author SHA1 Message Date
Wes Cravens
ef08041802
Merge pull request #530 from JoePfeiffer/fix-527
Fix #527
2019-04-10 10:47:26 -05:00
Daniel_M_Williams
0823de5e2a [fix #497] Disables Fin-Thickness-Warnings on Phantom Fins 2019-04-04 19:08:45 -04:00
Daniel_M_Williams
93a60c94f7 [fixes #525] main window (again) displays max diameter of centerline components
-- added FlightConfiguration::getCoreComponents() method
2019-03-31 09:34:08 -04:00
JoePfeiffer
d635ed4c74 Remove validation when modifying fin tab 2019-03-19 14:35:45 -06:00
JoePfeiffer
f51ce5e931 oops, that shouldn't have been in there 2019-03-13 14:51:06 -06:00
JoePfeiffer
18ce41d9e7 Modified setTabHeight, setTabLength, and setTabOffset to take a second
parameter, determining whether to validate fin tab, and made them
private.

Created two public wrappers for each, one calling for validation
(which has the same signature as the original three methods), and the
other not.

Called NoValidate versions of the three in file loading functions so
validation doesn't interfere with tab length when tab is read before
fin.

Tried to make the coding of the three more consistent with each
other.
2019-03-13 14:45:30 -06:00
JoePfeiffer
efacebf5d8 Refactored MassCalculation.calculateAssembly() to separate calculation
of structure from calculation of motors, so mass and CG overrides
don't affect motors

Modified structure calculation so that when an override is in effect
and children are also being overridden, don't include root of tree as
an element in its own right when computing MOI.

Modified MassCalculatorTest to look for correct MOI value.
2019-03-07 18:05:44 -07:00
JoePfeiffer
fc5ef54d9d Modify comments on public accessors to match code 2019-03-04 11:23:49 -07:00
Wes Cravens
6efc7e42a1
Merge pull request #518 from ChrisMickelson/unstable
Spashscreen update for 2019
2019-03-04 11:45:55 -06:00
Wes Cravens
85fba669cd
Merge pull request #515 from teyrana/alpha12
[version] bump to alpha-12
2019-03-04 11:45:41 -06:00
JoePfeiffer
f11a3e4d69 Fix issue 361
Continue a simulation until there are no more flight events, instead
of terminating on landing.  Add warnings for all events that occur
after landing.
2019-02-20 19:05:58 -07:00
JoePfeiffer
eeb82c4573 Add warning when flight events remain in queue at ground hit time
(addresses issue #361)
2019-02-19 13:21:58 -07:00
JoePfeiffer
eb3a129e67 Modify FinSetCalc to only produce result for one fin, to be summed in
BarrowmanCalculator

Modify BarrowmanCalculator to actually sum fin nonaxial forces

Modify FinSetCalcTest to sum fins in test3Fin() and test4Fin()

Extra bonus:  if at some point we allow fins to be other than radially
symmetrical, this code should still work (not tested)
2019-02-11 15:37:21 -07:00
JoePfeiffer
6c535bff94 Modified thrustcurve serialization to be more robust in the case of
some common (but generally not important) errors in thrustcurves, and
not enter thrustcurves that will cause simulation failures into the
database.

(1) Permits thrustcurves to start at time 0 with a nonzero thrust.
Previous code inserted a datapoint with time 0 and thrust 0; this
caused thrust interpolation code to fail while running a simulation.
If the first datapoint is at a time greater than 0 it does enter a
(0, 0) datapoint, as this is the correct documented behavior for RASP
files.

(2) Permits thrustcurves to end with a nonzero thrust.  Similarly to
the previous case, the old code entered a new datapoint at the same
time as the previous end of thrust with thrust 0, which would break
thrust interpolation.

(3) Thrustcurves that have a zero-thrust datapoint and a non-zero
thrust datapoint at time 0 have the first datapoint removed.

(4) Thrustcurves with more serious errors -- mainly multiple thrusts
at a single time -- aren't entered into the database, as they will
break thrust interpolation and there is no obvious way to guess which
of the datapoints is correct, or to see how to average them.
2019-02-09 18:00:30 -07:00
ChrisMickelson
ec0e1a2353
Update splashscreen copyright year to 2019 2019-02-06 14:15:34 -06:00
ChrisMickelson
a91fbb0ab5
Splashscreen source file update for 2019
Gzipped xcf file as well as png. Changed copyright year to 2019.
2019-02-06 14:13:46 -06:00
JoePfeiffer
13f7c583fd Changed logging in BarrowmanCalculator.java to use stderr (easier to
use with unittest)

Added "End Plate Test" rocket to TestRockets and BarrowmanCalcTest
2019-02-04 11:34:35 -07:00
JoePfeiffer
2e7b3da1c0 Addresses Issue 481
Modify BarrowmanCalculator to use InstanceMap and InstanceContext to
iterate through all components.  This addresses 481 by actually
computing nonaxial forces for all components, instead of computing a
single instanceable component and using it as a representative of all
instances.

Modify calculateNonAxialForces to accept a Transformation argument, so
they can use rotations from instances (only actually affects
FinSetCalc and TubeFinSetCalc)
2019-01-30 15:10:41 -07:00
Daniel_M_Williams
bb333ee1cc [version] bump to alpha-12 2019-01-27 11:13:11 -05:00
Wes Cravens
1abf0d3834
Merge pull request #513 from teyrana/refactor_instance_map
Refactor instance map
2019-01-26 07:14:39 -06:00
Wes Cravens
15b6094350
Merge pull request #511 from teyrana/fix_510_tab_save
[fixes #510] Fin tab now saves the correct offset
2019-01-26 07:14:18 -06:00
Wes Cravens
7b0724ab0a
Merge pull request #507 from teyrana/fix_387_cp
Increase accuracy of Center-Of-Pressure calculations
2019-01-26 07:13:47 -06:00
Daniel_M_Williams
efabe81790 [feat] FlightConfiguration may now generate an InstanceMap 2019-01-25 22:27:15 -05:00
Daniel_M_Williams
7b28923659 [fix] converts getActiveComponent calls to getAllComponents
- this clears the 'using a deprecated function' warning
- more importantly, this clarifies what exactly the caller needs at each call site
2019-01-25 21:18:38 -05:00
Daniel_M_Williams
fdc54ca5f4 [fixes #510] Fin tab now saves the correct offset 2019-01-20 16:31:30 -05:00
Daniel M Williams
01fd20ebcc [refactor] added code to tests for negative inertia / intersection case 2019-01-02 19:23:11 -05:00
Daniel M Williams
cf4a935302 [test] Refactored FreeformFinSetTest to de-dup code execution. 2019-01-02 19:11:32 -05:00
Daniel_M_Williams
eed5863790 [fixes #387] Increases accuracy of Center-Of-Pressure calculations on instanced assemblies 2019-01-02 19:06:46 -05:00
Daniel_M_Williams
055132aa99 [test] expands aerodynamics unit-test to verify CP.y, and .z coordinates (of fins on boosters) 2019-01-02 19:06:46 -05:00
Daniel_M_Williams
70b7537614 [fixes #500] May now calculate CG for fins attached to zero-dimension mounts 2018-12-22 04:50:01 -05:00
Daniel_M_Williams
b8c8237ae4 [fixes #499] prevents an exception after coneverting-to-freeform 2018-12-15 12:21:42 -05:00
Wes Cravens
b41af82c90
Merge pull request #491 from JoePfeiffer/fix-exception
Clamp pitch and yaw damping moments to avoid numerical instability
2018-12-08 12:30:25 -06:00
JoePfeiffer
20fa9925cb Closes #478
Clarifies variable names

Removes previous attempt to limit damping moments by using minimum
velocity of 1.0

Clamps damping moments so they cannot exceed actual moments, avoiding
numerical instability
2018-12-02 14:17:33 -07:00
Daniel_M_Williams
51418e34bc [fixes #387] Fixes one source of off-axis CP error 2018-12-01 13:05:21 -05:00
Wes Cravens
7b8a132779
Merge pull request #486 from teyrana/fix_471_phantom_mounts
[fixes #471] Refactoring FreeformFinSet
2018-11-26 15:41:27 -06:00
Wes Cravens
7354c32b5f
Merge pull request #479 from teyrana/fix_470_name_reference_error
[fixes #470] May load TubeFinSet components again.
2018-11-26 15:37:51 -06:00
Wes Cravens
d6870e77e4
Merge pull request #477 from teyrana/fix_468_render_glitch
Fixes #468: Freeform fins display correctly again.
2018-11-26 15:37:19 -06:00
Daniel_M_Williams
72c6f1d64d [fixes #471] Refactoring FreeformFinSet to accept root points outside of the base. (which generates bridge-points on-load) 2018-11-26 13:53:51 -05:00
Daniel_M_Williams
a0ff17d6ef [version] bump version string to 19-xx-alpha10 2018-11-05 22:10:39 -05:00
Daniel_M_Williams
4356e23966 [fixes #470] May load TubeFinSet components again. 2018-11-05 22:10:26 -05:00
Daniel_M_Williams
786dd97558 [fixes #468] Fixes rendering issue with freeform fins
Cause by a fencepost-error when generating body points for freeform fins on transitions.
Induced by the imprecision of floating point calculations.
2018-11-05 22:10:03 -05:00
Daniel_M_Williams
8ab739a304 [fix] Fixed RocketComponent::setAfter() => added unittest in TestRocket => fixed IntegrationTest 2018-10-27 16:10:31 -04:00
Daniel_M_Williams
166d358c14 [Feature] Freeform Fins may not be attched to variable-shaped body components
- Fins may be attached to Transitions (and subclass NoseCones )

  [Fix] FinSet now implements the Ring-Instanceable interface
  [Refactor] Rocket inherits from ComponentAssembly instead of RocketComponent
  [Fix][Refactor] Fin tabs are now correctly validated upon change
  [Fix] Fin tabs are now corrected to be no-bigger-than their fins
  [Refactor] FinSet.getBodyRadius(..) now requires an argument
  [Fix] restricted fin tab positioning to be strictly top/middle/bottom
  [Refactor] Reimplement FreeformFinSet.setPoint(...)
  [Fix] Prevent Freeform Fins movement past parent's top/front
  [bugfix] Fins are now addable to transitions from the GUI
  [Fix] Fins, Transitions are now drawn correctly in fin-design window
  [Minor] Added makeV2 rocket to TestRockets

  [fix] getRootPoints() impl & test
2018-10-27 14:41:01 -04:00
Daniel_M_Williams
b268d3aa59 [refactor] RocketComponent positioning is now centralized in AxialMethod class
- also relaxed visibility for Component::setAxialMethod(...)
2018-10-27 14:41:01 -04:00
Daniel_M_Williams
7d813b4e55 [refactor] FlightConfiguration now optionally caches its calculated bounds. 2018-10-27 14:41:01 -04:00
Daniel_M_Williams
5e3d230724 [fix] corrected an isNan test. 2018-10-27 14:41:01 -04:00
JoePfeiffer
e3ab018dd1 Changed order of stage simulations to work from top down, resulting in
the drowp-down menus for plots and data exports to be in stage order.
2018-10-23 11:47:23 -06:00
Wes Cravens
26b0adbdde
Merge pull request #458 from JoePfeiffer/report-windSpeed
Report wind speed
2018-10-21 11:24:35 -05:00
Wes Cravens
8b0faf8308
Merge pull request #457 from JoePfeiffer/fix-booster-tumble
Fix booster tumble
2018-10-21 11:24:07 -05:00
JoePfeiffer
a5fef587f4 Wind speed wasn't being entered into data store, so was being reported
as NaN in data export.  Fixed.

TODO:  the code is very sloppy about naming variables velocity (ie
speed and direction) vs speed (ie magnitude of velocity).  Should be
fixed after this release...  I started down that rabbit hole a couple
of times before settling on just fixing the actual bug.
2018-10-21 09:35:33 -06:00