2376 Commits

Author SHA1 Message Date
SiboVG
a793f27f51 [#2435] Copy stageMap instead of directly referencing it
This change is to ensure that the stageMap property of the Rocket class is isolated from its source object. Previously, it directly referenced the stageMap of the source, but now we create an entirely new ConcurrentHashMap to hold those stages. This will prevent possible conflicts and unwanted modifications to the source stageMap.
2024-01-22 14:07:46 +01:00
SiboVG
940b913dfa [#2377] Add booster/pod split functionality 2024-01-21 02:14:18 +01:00
SiboVG
d2fc662a56 Verify listener addition/removal 2024-01-21 00:01:50 +01:00
SiboVG
ff1ed750c4 [#2438] Support RockSim booster exporting 2024-01-19 16:51:46 +01:00
SiboVG
49cdbe5426 Minor improvements 2024-01-12 00:18:01 +01:00
JoePfeiffer
00babafc7a Put underscores in SimulationAbort enum constants for readability 2024-01-11 09:42:46 -07:00
JoePfeiffer
f5755cc4af Add explicit test and abort for "no stages defined" running simulation 2024-01-11 09:30:41 -07:00
JoePfeiffer
6273c7a7be Merge branch 'unstable' into SIMFAIL-flight-event 2024-01-10 08:29:50 -07:00
JoePfeiffer
3c02dbc2d1 Put "null" in data field of ALTITUDE events inserted for motor firing; check for null in altitude deployment configuration. 2024-01-10 08:09:23 -07:00
JoePfeiffer
843c2e6d22 Only show error checkbox if there are errors 2024-01-09 17:36:44 -07:00
JoePfeiffer
18b0e39738 No more addEvent in BasicEventSimualationEngine; only down in currentStatus 2024-01-07 14:43:03 -07:00
JoePfeiffer
7f56cd01f5 Merge branch 'unstable' into SIMFAIL-flight-event 2024-01-07 14:38:18 -07:00
JoePfeiffer
e51b76e176 Prevent RK4 simulation timestep from extending past next scheduled event.
Calculate thrust at sample points instead of averaged across timestep
2024-01-04 14:03:12 -07:00
JoePfeiffer
f25bfda6f2 Missed a simulation exception on zero mass that should have been an abort event 2024-01-04 06:57:51 -07:00
JoePfeiffer
10909ccf21 Add logic to better support CHAD staging (booster with no fins).
This will require more accurate thrust calculations to work properly.
2024-01-03 15:30:49 -07:00
JoePfeiffer
aec15658cd Tumbling under thrust should be a sim abort, not a warning.
Leaving the old warning in for backward compatibility.A .ork that triggered the warning will load cleanly. On rerunning the sims in the .ork the warning will go away and the sims will abort.
2024-01-03 10:53:58 -07:00
JoePfeiffer
07e15ddaa2 Merge branch 'unstable' into SIMFAIL-flight-event 2024-01-03 07:31:13 -07:00
JoePfeiffer
f9a8f59247 Add simulation aborts to .ork file load/save 2024-01-03 07:09:24 -07:00
JoePfeiffer
c1b76be844 Add simulation abort title to simulation plot 2024-01-02 07:39:30 -07:00
Sibo Van Gool
6b01afcd67
Merge pull request #2429 from SiboVG/parachute-size
Fix parachute length resizing when loading preset parachute
2023-12-30 22:32:48 +01:00
SiboVG
f66788e618 Fix parachute length resizing when loading preset parachute 2023-12-27 23:58:58 +01:00
SiboVG
2f81d26216 Set RockSim parachute length to radius 2023-12-27 19:54:25 +01:00
SiboVG
ba7da7c4ee Add snapshot version to OpenRocket versioning system 2023-12-26 19:57:39 +01:00
JoePfeiffer
7fa9d0ba0c Save event that causes a simulation abort 2023-12-26 09:15:09 -07:00
JoePfeiffer
6a7cfefbdc This Exception class never was used! 2023-12-24 21:01:17 -07:00
JoePfeiffer
1115212317 Remove some now-unused Exception classes: MotorIgnitionException and SimulationLaunchException. 2023-12-24 20:34:34 -07:00
JoePfeiffer
a36e7f1049 Replace thrown exceptions with simulation aborts whereever possible 2023-12-24 20:34:34 -07:00
JoePfeiffer
173a3d38e2 Integrate SIM_ABORT into code across OR 2023-12-24 20:34:34 -07:00
JoePfeiffer
2123531f14 Create new SIM_ABORT FlightEvent 2023-12-24 20:34:34 -07:00
JoePfeiffer
64e999f2e2 Create new class SimulationAbort to represent reasons for sim aborts 2023-12-24 20:34:34 -07:00
Joe Pfeiffer
85bac6484e
Merge pull request #2426 from SiboVG/fin-balsa
Set Balsa as default material for fins
2023-12-24 13:51:28 -07:00
SiboVG
78593a6749 Improve default materials for fins and nose cone 2023-12-24 14:35:51 +01:00
thzero
92859640fa merge latest changes into gradle branch, updated required dependencies for new swing theme code 2023-12-23 16:02:01 -06:00
Joe Pfeiffer
5d3bb50f9e
Merge pull request #2412 from JoePfeiffer/fix-2403
Improve accuracy of SymmetricComponent calculations; consider shoulders in Transition moment of inertia calculations
2023-12-22 07:26:18 -07:00
Joe Pfeiffer
8c348ee2b0
Merge branch 'openrocket:unstable' into fix-acceleration-status 2023-12-20 06:00:28 -07:00
JoePfeiffer
42019237bf Merge branch 'unstable' into fix-2403 2023-12-19 14:32:59 -07:00
JoePfeiffer
5b18f73da0 Consider shoulders in moment of inertia calculations 2023-12-19 09:02:23 -07:00
JoePfeiffer
b5b3ac2b3d Create Transition::calculateProperties() to update component properties as needed instead of recalculating for shoulders every time they're called. 2023-12-13 09:57:35 -07:00
JoePfeiffer
9f13635357 Moved calculation of all body tube properties into BodyTube instead of punting some to SymmetricComponent. This is both a little faster and will let me compare the results from the two in unit tests. 2023-12-13 08:42:05 -07:00
JoePfeiffer
3e1341271c Modified integrate() to use geometry of actual frustums in geometric calculations instead of cylinder approximations. This turned into a pretty complete rewrite of integrate(), and the creation of several helper functions.
Changed the name of integrate() to calculateProperties() to better express the purpose rather than the method of calculation. It's looking forward to a future PR when I'll be modifying BodyTube to use SymmetricComponent's variable caching.
2023-12-13 08:41:11 -07:00
Sibo Van Gool
c136436284
Merge pull request #2416 from SiboVG/issue-2178
[#2178] Add South/West unit for latitude/longitude
2023-12-09 02:03:15 +01:00
Sibo Van Gool
5746aa1350
Merge pull request #2406 from SiboVG/refactor-warnings
Add Warning component source to Warning
2023-12-09 02:02:41 +01:00
SiboVG
52f33a3429 Merge branch 'unstable' into issue-2178
# Conflicts:
#	core/src/net/sf/openrocket/simulation/FlightDataType.java
#	core/src/net/sf/openrocket/unit/UnitGroup.java
#	swing/src/net/sf/openrocket/gui/dialogs/preferences/LaunchPreferencesPanel.java
#	swing/src/net/sf/openrocket/gui/dialogs/preferences/UnitsPreferencesPanel.java
#	swing/src/net/sf/openrocket/gui/simulation/SimulationConditionsPanel.java
2023-12-01 19:28:40 +01:00
SiboVG
0ff32888a1 Refactor searchable and categorizable combobox to general method
In case we want to use it for other parts of the UI :)
2023-11-25 03:00:50 +01:00
SiboVG
341ab81b79 [#2338] Use searchable and categorizable combobox for flight data type 2023-11-24 20:47:05 +01:00
SiboVG
764ebac7b0 Merge branch 'unstable' into issue-2338 2023-11-23 17:31:55 +01:00
Sibo Van Gool
ce2c9c97fe
Merge pull request #2407 from SiboVG/issue-2345
[#2345] Reintroduce motor ignition delay optimization
2023-11-23 17:31:24 +01:00
SiboVG
f3a58598d6 Merge branch 'unstable' into issue-2338 2023-11-22 23:22:34 +01:00
Sibo Van Gool
42102647b2
Merge pull request #2410 from SiboVG/fix-rasaero
Use meters->feet conversion for RASAero rod length
2023-11-22 23:09:07 +01:00
JoePfeiffer
e92e2bc3a9 Instead of incrementing through the slices of the component, multiply to recalculate each slice (from some comments in the code I suspect there were some problems with floating point error accumulating).
Increase the number of divisions to 128, so division is just an exponent change and won't cause floating point error

a little tidying
2023-11-22 11:32:32 -07:00