|
BurnSim 4 Change History
Home |
Contact Me |
Download |
Activation |
Purchase |
Announcements List |
Wiki |
Back
See the Download page for the latest builds.
Please email greg@blastzone.org with bug reports or feedback.
Version 4.0.0.17 - released 8/27/2026
- Support for propellant characterization with measured burn rate data (new) - BurnSim now keeps a record of the burn rates you have actually measured, firing by firing, against the propellant itself. A new "Burn Rate Data..." button on the Propellant tab lists every stored firing with its pressure, rate, web, burn time, throat diameter and where it came from, fits a and n across them, plots them on a log-log scatter, exports the set to CSV, and can write the fitted a and n straight back into the propellant. See the wiki for the full walkthrough
- "Measure and Add Point" - a new button in the Characterize window that records the one burn rate a single static firing can actually establish: web thickness divided by burn time, at the mean chamber pressure over that burn. No simulation is involved in either number. Collect one from each firing at a different throat diameter and the a/n fit becomes properly determined
- Fit Burn Rate Data reworked - it no longer runs a simulation to fit against. The burn depth is integrated forward through your measured pressure trace instead, and a is solved with n held at the propellant's current value, which is the honest answer from one firing. The floating-exponent fit is still reported underneath as a sanity check, and the pressure span the exponent was measured over is shown next to R² - a fit can return an impossible exponent at an R² above 0.99, so the span and the plain-language caveat are the numbers to read
- Import the whole trace - BurnSim finds the ignition rise and the tail-off itself and sets them aside before fitting, so there is no longer any reason to hand-trim a test trace before importing it. The convention used to mark the start and end of a burn is selectable under Settings > Measured Burn Time (bisected tail-off, 10% of peak, 5% of peak, or your own percentage)
- Measured points travel in .bsx motor files as well as in your propellant database, and the two merge when a motor file is loaded - BurnSim tells you what moved, and re-adding the same firing is detected rather than silently duplicated
- Propellant notes - the propellant Notes field finally has somewhere to type it, on a new tab beside the propellant fields. Notes already in your database from BurnSim 3 show up there
- A burn rate vs pressure graph is now drawn beside the propellant fields, out to 1500 psi
- The Results panel reports the port/throat and throat/port ratios, and an estimated CuO/Al thermite igniter mass
- Test data rows can be deleted in bulk instead of one at a time, the graphed test data set is remembered across save and load, and the whole imported set is plotted rather than only the span the simulation covered
- Fixed the trial simulation limit being reported as a licensing failure
Version 4.0.0.16 - released 8/21/2026
- openMotor import (new) - open an openMotor .ric design directly in BurnSim. All eleven of openMotor's grain types are read (BATES, D, Moon, X-Core, C-Slot, Finocyl, End Burner, Conical, Rod and Tube, Star, and custom), along with the nozzle and propellant, and assembled into a motor and a propellant database entry
- Ingredient table nearly doubled - the thermochemistry ingredient list goes from 40 entries to 77, adding the common binders (HTPB R-45HT, CTPB, PBAN, PMMA, epoxy, PTFE, Viton A), the sugar alcohols (xylitol, mannitol, erythritol), IDP and MDI (143L), and a wider set of metals, oxides, carbonates and refractory carbides. As before, every entry records where its numbers came from
- Import ingredients from ProPEP (new) - point BurnSim at your own installation's PEPCODED.DAF and it lists every substance it can read, flagging which ones your table already has and which contradict another row in the same file, so you choose what to bring across row by row rather than all at once. Existing entries are never overwritten, and everything imported goes to your own overlay file where it can be edited or deleted later. See the wiki for a walkthrough with screenshots
- Check for Updates - a Help menu item that tells you whether a newer BurnSim is available, plus a quiet check at startup
- Average Kn and average thrust are now reported in the Results panel alongside the peak values
- The right-hand column's three sections can be collapsed, and the left/right splitter position is remembered between runs
- Save As now starts with the motor's own name instead of a blank box
- Nozzle cone geometry - throat length, convergence and divergence half-angles - can be recorded and is drawn in the axial cross-section view
- Fixed the Kn spike and incorrect KNMin the grain eroder reported at the very end of a burn
Version 4.0.0.15 - released 8/19/2026
- Propellant thermochemistry (new) - enter a propellant's ingredient recipe and BurnSim computes its C*, specific heat ratio, and molar mass from first principles (ProPEP-style analysis, powered by NASA CEA thermochemical data), from a new "Ingredients..." button on the Propellant tab
- A searchable ingredient table editor lets you add, correct, or revert entries without hand-editing any files; the recipe editor's own ingredient picker is now type-to-filter instead of a plain dropdown
- New Tapered Core grain type - an end burner with a straight or tapered core drilled part-way or all the way down its axis, including support for erosive burning's axial-slice simulation
- Added Ma et al. (2020) as a third erosive burning rate model, alongside Lenoir-Robillard and Mukunda-Paul
- Simulations can now be set to end at a chosen percentage of max thrust instead of always running out the tail
- macOS builds now ship as real BurnSim.app bundles - unzip and double-click like any other Mac app, instead of running from Terminal
- Fixed several propellant-conflict/compare dialogs sometimes needing two clicks to register a button press
- Fixed the grain grid's Propellant column sometimes staying blank after loading a file from the compare dialog
- Nozzle throat erosion now correctly reduces vacuum thrust coefficient as the throat erodes over a burn
- Added a crash notification dialog, and hardened narrow-window layouts against field clipping/overflow
- Several smaller accuracy and export fixes: unit conversions, culture-invariant .bsx save/load, CSV export formatting, motor classification percentages
Version 4.0.0.13 - released 8/10/2026
- Added erosive burning - an opt-in simulation mode (Settings > "Simulate Erosive Burning (Use Axial Grain Slices)") that slices each grain along its length and computes burn rate per slice, so the rate can increase near the nozzle end where gas velocity across the grain surface is highest, instead of using a single rate for the whole grain. Off by default - existing motors and simulations are unaffected unless you turn it on
- Two switchable erosive burn-rate models (Settings > Erosive Burning Model): Lenoir-Robillard (the default) and Mukunda-Paul
- The Propellant editor gained a separate Erosive Burning tab for the override fields the models use, keeping the main Properties tab uncluttered for propellants that don't need them
- The Results panel now reports whether erosive burning actually had any effect on a run (peak augmentation over the nominal burn rate), not just whether the option was on; also added a Kn Eff graph series and CSV column, and Kn min, propellant length, and initial core volume readouts
- Added a Settings option to set the simulation timestep
- Fixed a bogus, very large "peak erosive augmentation" reading that could appear right at grain burnout
- Fixed the grain grid's Remove button only deleting one grain instead of all of them when several grains were selected at once
- Fixed a multi-grain delete sometimes appearing to do nothing after clicking OK on the confirmation prompt - pressing Enter to confirm was landing on "No" instead of "Yes"
- Ends Inhibited is now a dropdown (0, 1, or 2) instead of free text, in both the grain editor and the grid, and defaults to 0 for new grains
Version 4.0.0.12 - released 8/5/2026
- Added a Custom grain type: draw or import your own grain cross-section instead of picking a parametric shape. Import from an ASCII DXF, SVG, or raster image (PNG/JPEG/BMP), or build one from scratch in the new shape editor - an outer boundary plus repeatable holes and slots you can drag directly in the preview - and export back to DXF when you're done. This feature is brand new - see the caveats on the Download page
- Added an axial (side-on) motor cross-section next to the radial preview, showing the grain stack, case, and nozzle for any grain type, with the same erosion slider animating both. Case/nozzle dimensions beyond throat and exit are estimated rather than modeled
- Fixed a rasterization bug inflating a D grain's reported peak Kn by roughly 11% - other grain types were unaffected
- Removed the Pie Segment grain type (it's no longer offered when adding a grain); a motor file that already has one still opens and explains what happened, instead of failing with an unrecognized-type error
- Grain geometry the simulator can't actually represent (e.g. an oversized finocyl fin) is now flagged directly in the grid instead of silently simulating something else
- Grains left with no burning surface (e.g. an end burner with both ends inhibited) are now reported instead of crashing the simulation
- Sped up simulations where several grains share the same shape by eroding each distinct shape once instead of once per grain
- Fixed New, Open, and Recent Files immediately discarding an unsaved motor instead of asking whether to save it first, the way closing the program already did
- Fixed an imported custom grain shape occasionally being silently discarded instead of applied to the grain
- Fixed the grain editor's toolbar overlapping the grain grid when the window was narrow
Version 4.0.0.11 - released 7/30/2026
- The grain grid is now a full in-place editor - every grain parameter has its own editable column (including Offset, Fin length and Points), so a motor can be built end to end in the grid without using the fields below it. Ambiguous column headers carry tooltips explaining what they mean for each grain type, and parameters a grain type doesn't use are left blank instead of showing 0
- Grain Type and Propellant are now single-click dropdowns in the grid - no more double-clicking to reach the list
- Typing on a selected cell now starts an edit, the way a spreadsheet does. Previously the only ways in were F2 or a double-click, so the grid looked like it wasn't editable at all
- Added a "click to add a grain" row at the bottom of the grid, and an "Add the first grain" prompt on an empty grid, so grains can be added without knowing about the Insert key. Pressing Enter or Space on that row adds a grain too
- Insert, Delete and Move Up/Down are now available on a right-click context menu in the grid, and Delete can remove several selected grains at once
- Fixed arrow keys silently rewriting a grain's Type or Propellant while moving through the grid - arrowing down a column could change every grain's type without the dropdown ever opening. Arrow keys now move between rows, and Alt+Down, Alt+Up or F4 open the dropdown
- Fixed an unescapable dialog loop: closing the program with a throat diameter of 0 stacked the "Simulation Problem" alert on top of the unsaved-changes prompt, and the two traded focus so neither could be dismissed. More generally, automatic re-simulation no longer raises error popups or moves the cursor - only the Simulate button does
- Added Save As to the propellant editor - saves what's currently shown as a new propellant under a different name, leaving the original untouched. Useful for deriving a new batch from a characterized one, since the copy keeps the notes and pressure-varying data the editor has no fields for
- Added Delivered Isp to the Results tab
- On the graph, Thrust From Imported Pc is now genuinely calculated from the imported chamber pressure, so it can be compared against the measured thrust trace. Previously the two series drew the same line whenever the imported file supplied a thrust column
- Fixed values derived from imported test data continuing to compute from the last measured pressure after the imported data ended, which drew phantom thrust in a region where the measured pressure read zero. This also corrects the test impulse for any run that outlasts its test data
- Imported test data columns are back in File > Export CSV - they had been silently dropped from every export. Measured thrust and thrust calculated from imported pressure now export as two separate columns, and the imported pressure/thrust columns follow the Imperial/Metric setting with the unit shown in the header
- Fixed importing test data from a CSV with a header row, a units row or a trailing note - those lines became a bogus 0,0,0 sample at t=0. Quoted fields are now handled as well
- Every dialog now has Alt-key shortcuts on its buttons and puts the cursor where you'd expect on open, so text-entry dialogs can be typed into without clicking first
- The divider between the grain grid and the graph now keeps its position between launches
Version 4.0.0.10 - released 7/27/2026
- Grains can now be multi-selected in the grain grid (ctrl-click, shift-click, or the new Select All button); editing the fields below the grid and clicking Apply updates every selected grain at once, instead of one at a time
- Added Web thickness to the Results panel
- Peak mass flux and peak mass flow now show their units and follow the Imperial/Metric setting - lb/in²-sec and lb/sec in imperial, kg/m²-sec and kg/sec in metric. Previously both were shown as unlabeled numbers that stayed in imperial units regardless of the setting. This applies in the Results panel, on the graph, and in the PDF motor report
- On the graph, Mass Flux and Mass Flow each get their own scale on the right-hand side, with units shown in the legend, so neither curve flattens the other
Version 4.0.0.9 - released 7/22/2026
- Cross-platform release: BurnSim 4 is now available for Windows, Linux, and macOS (previously Windows-only), with a native Windows installer and Linux desktop-entry packaging
- Added win-arm64, linux-arm64, and macOS (Apple Silicon) builds
- Replaced the graphics engine with SkiaSharp for consistent rendering across platforms
- Added an editable data grid to the Test Data tab; decluttered the tab (dropped Molar Mass from the Propellant UI, hid imported-series checkboxes when not in use)
- Added a separate Imported Thrust trace, distinct from the calculated one
- Added light and dark theme
- Fixed the "Use in simulation" checkbox only re-plotting stale data instead of re-simulating
- Fixed long thrust tailoff not resolving correctly (thrust coefficient floor issue)
- Fixed the burn loop not stopping once thrust had genuinely ended
- Added a warning in the Results text when nozzle efficiency is below 75%
- Added Print/Report: a one-page PDF motor report, with direct printing support
- Added a play/stop button to loop the grain erosion visualizer
- Numeric fields are now rounded to 4 decimals when saving .bsx files and the propellant database
- Added a per-field unit override to lock Total Impulse to Newton-seconds
- Fixed cored Tablet grains simulating identically to BATES grains, fixed the Tablet erosion preview, and fixed a crash simulating a solid (uncored) Tablet grain
- Fixed a graph rendering glitch causing runaway padding/overflow at the end of a burn
- Made the Grains/Graph panes vertically resizable, added a scrollbar to the grain grid
- Moved the motor Notes field to its own tab, alongside Results/Test Data
- Fixed simulation results silently going stale when a field was edited mid-run
- Fixed several usability gaps when starting a new motor from scratch
- Added a per-run activity log to help diagnose bug reports
- Fixed the installer defaulting to Program Files (x86)
- Added right-click pickers on the throat diameter field (1/64" increments and Loki Research nozzle sizes), working regardless of unit mode
All contents copyright
Hosted by The BlastZone
| |