Note: the "8.1 early access" lines refer to changes being made to the upcomming 8.1 version that can be tested for a limited time by 8.0 users (for further details, see Issue I421). 8.0.6 [development version] 8.0.6-TEST5 [20100106] r3013 Early access: [enhancement,defect,wb,lua] Various fixes to simion.wb and simion.wb.instances, to ensure changes are propagated to the fly'm and GUI. Issue I496 [*] 8.0.6-TEST4 [20100105] r3006 Early access: [batch,defect] Batch mode exited in fly batch mode command under early access. Issue I539 [*] [batch,pa,defect] Basic PAs loaded in batch mode may display a not refined flag (!) in the PA list. Issue I540 [*] 8.0.6-TEST3 [20100104] r3001 [pa,defect] "expected electrode point for adjustable electrode" on exiting Modify with .PA0 file. Issue I537 [batch,enhancement] allow some SIMION options (e.g. --noprompt) to simion.command. Issue I538. [*] 8.0.6-TEST1 [20100108] r2972 simion "--noprompt" command-line option now works in GUI mode as well (i.e. without "--nogui" option). [example.enhance] - add excel\tof_vs_ion.iob/lua [*] example (plots TOF v.s. ion number) Early Access Fixed Moving PA instances from Lua not effective in non-GUI mode. Issue I535 [*] 8.0.5 8.0.5 [20100104] r2970 Release version. 8.0.5-TEST38 [20100102] r2959 [doc,defect] Clarify FieldArray documentation, on constructor and CSV syntax. [*] [examples,add] Add sinusoidal.gem - sinusoidal shape using GEM macros [*] [examples,enhance] collision_hs1 - Allow easier customization via HS1.pressure, HS1.temperature, and HS1.velocity[_x|_y|_z] variables. Recalc mean-free-path on pressure or temp change. See collision_hs1\test2.iob + lua. [examples,enhance] collision_sds - add test-sds-hs1.iob comparing SDS and HS1 [examples,bender_cut] new example, split and crop large system into into two arrays. [examples,gauss_law] add cylinder shape to FieldArray.pm. 8.0.5-TEST37 [20090921] r2897 [gui,enhancement] Make Log window monospaced font. Issue I531 [*] [gui,enhancement] Improved log window behavior on clicking. Issue I532. [gui,defect] Keyboard tabbing problems. Issue I361 [*] 8.0.5-TEST36 [20090911] [crop,defect] Fixed cropping PA may wrongly remove Z mirroring. Issue I531 [*] [gui,enhancement] Make Log window monospaced font. Issue I531 [*] 8.0.5-TEST35 [20090903] r2887 [core,defect] Fixed 2-4 GB RAM usage (/LARGEADDRESSAWARE /3GB). Issue I530. [*] 20090829 [examples,gui] Added ionfunnel\funnel3.iob example (more convenient to adjust voltages). 8.0.5-TEST34 [20090706] [recording,defect] Generate error if can't write data recording file (previously was silent) [gui,defect] "Record data" and "Pause event" controls not properly updated. Issue I528. [examples,gem] fixed pa_define syntax in tetrahedron.gem and cone.gem (minor) 8.1 Early Access [beta,prog] New "ion_run" reserved variable. Issue I529. [recording,feature] Allow splitting data recording output into multiple files. Issue I231 8.0.5-TEST32 [20090520] [gem,defect] PA empty or truncated when importing from GEM. Issue I527. [*] [gem,defect] Fix crash upon "No Fill Definitions Found" during GEM processing. Issue I526. [examples,gem] Add hexapole gem : examples\gem\hexapole.gem [*] 8.1 Early Access [beta,prog] New simion.print_screen() function to print current image. Issue I521. [beta,gui] If GUI enabled, "fly" batch mode command (Issue I182) runs in View screen. [beta,print] Printing to BMP, PNG, and JPG files now supported. (Issue I523) [beta,example,prog] Added Lua versions of pa2text and swirl examples. 8.0.5-TEST32 [20090314] (also early access mode changes) [core,defect] Error on fast adjusting a cropped PA containing fast scalable (.pa_). [*] [examples,compat] Python 3.0 (Python 3000) compatibility on examples. (Issue I524) [fly2,defect] Don't crash on edge case particles { { } } [minor] 8.0.5-TEST31 - no change (early access mode reset) 8.0.5-TEST30 [20081125] r2789 [core,defect] Asynchronous file I/O: Fixed freeze on PA load/save, particularly under Win2K and Linux/Wine. Updates Issue I468 [r30][*] [example,change] "trap" example code organization improved. Added HS1 collision model example (group_hs1.iob).[*] See Changes section in README.html. [example,change] HS1 collision_hs1.lua - now returns table HS1. (also early access mode changes -- see below) 8.1 Early Access [beta,prog] simion.pas:clear renamed simion.pas:close. Issue I422. 8.0.5-TEST29 [20081111] r2776 [core,defect] Asynchronous file I/O improvements: Load PA files without applying read lock. Confirm cancel request by user. Updates Issue I468 [r29] [core,defect] Report error on failure to load bytes from PA file. (error handling) [r29] [core,implementation] Improved IOB load/save robustness (minor). [29] 8.1 Early Access TEST29 [20081111] [beta,prog] pa:close now raises on error. pa.filename now contains long filename Issue I422. 8.0.5-TEST28 [20081104] r2747 [core,defect] Fix crash/leak on failure to allocate PA from reserved memory. [r28]. Updates Issue I363. [gui,enhancement] Improve GEM error messages. [r28] [gui,defect] Fix "PAs require X MB RAM" -- was reporting in units of 10^6 bytes not 2^20 bytes [r28] 8.1 Early Access [beta,prog] Access memory dump (simion.debug.memory_dump) Issue I518. 8.0.5-TEST27 [20081024] r2735 [gui,enhancement] Before user is first prompted in batch mode, display message that "--noprompt" command-line option can be used. All add new "!" option to disable further prompts at runtime [r27] Updates Issue I299. [prog,defect-7.0] Fixed: Random number generator seed() function freezes when not preceded by rand(). Issue I514. [r27] [gui,defect] Fixed: Conditional crash on entering View. Issue I517. [*][r27] [core,defect] Fixed: Electrode solution arrays for .PA0 files are now loaded into the reserved memory pool (when "--reserved-memory" command-line option enabled) rather than the standard memory pool. [r27] Updates Issue I363. [core,defect] Fixed: "Illegal Fastadj Potential Count" error after fast adjust failure. Issue I508 [*][r25] [prog,defect] Fixed: tostring(simion.VERSION(s)) now works properly. [r27]. Updates Issue I398. [prog,defect] Fixed: missing errno include for pa.cpp in SL Libraries. Issue I516 [*] [prog,defect] Fixed: SL Libraries pa.cpp - wrong error message in PA::check_nx (minor) [file,defect] Improved corrupt file detection on PA load. [r27] [examples,added] Particle jumping trick example added ("nonideal_grid/particle_jump"). [*] Issue I515 8.1 Early Access [beta,prog] field simion.wb.instances[i].mm_per_grid_unit has been renamed simion.wb.instances[i].mm_per_gu. Issue I496. [beta,prog-pa] simion.pas:open now returns nothing on success and raises on error. pa:load now raises on error. Issue I422. 8.0.5-TEST26 [20081010] r2642 [prog,change] Define behavior of adj_elect[i] and adj_electXX for non-existent electrode numbers in PRG code. Updated Issue I429. [r26] [prog,detect] PRG user program fails with error when adj_elect not defined in previously loaded workbench. Issue I512. 7.0-compat. [r26] [config,defect] Crash if failure to write to FILES.GUI directory Issue I218 [r26] Internal: Fairly extensive code refactoring (lint)--should not cause any external changes. (see Issue I527) 8.1 Early Access [beta,core] Allow workbench size to be non-integral or smaller than 1 mm^3. Issue I513 [r26][*] [examples,added] PA instance jumping trick example added ("nonideal_grid/pa_jump"). [*] Issue I515 8.0.5-TEST25 [20080919] r2482 [example,defect] In examples\test_plane\testplanelib.lua, robustness improvements to avoid particle locking up near test plane. Issue I221.2 [*][2008-07-24] [prog,defect-8.0] Upgrade Lua from 5.1.3 to 5.1.4 (bug fix only release). Issue I404 [r1] [prog,enhancement] Add standalone Lua interpreter lua.exe Issue I511 [r25] [core,defect] Fixed crash on loading workbench with contours. Issue I507 [r25][*] 8.0.5-TEST24 [20080723] [core,defect] Fixed crash on loading workbench with contours. Issue I507 [r24][*] [example,expand] Added cross.gem (two 90 degree pipes) to "geometry" examples [*] [2008-07-22] [example,enhanced] The type of contour a particle traces is now determined implicitly and individually by the particle's mass. [2008-07-22] [core,enhancement] Some improvements in crash report (Issue I505) [r24] [core,defect] Fixed crash on failure to write temporary trajectory file (.trj). Issue I506 [r24][*] 8.0.5-TEST23 [20080718] [core,enhancement] New crash reporting feature. Issue I505 [r23] [core,enhancement] Reduced simion.exe binary size by ~ 600KB [r23] [gui,enhancement] Particle definition screen (.FLY2) - group panel size increased[*]; display condensed for arithmetic/line; loading speed increased [r23] [gui,defect-8.0] Particle definition screen layout cut-off. Issue I504 [r23][*] [implementation] Major refactoring of GEM file processing code [r23] 8.0.5-TEST22 [20080530] 8.1 Early Access [beta,core] Fast Parallel .PA# refines (one solution per CPU core) Issue I503 [r22] 8.0.5-TEST21 [20080527] [prog,enhance] Define behavior of adj_elect[i] and adj_electXX for non-existent electrode numbers and #adj_elect. Issue I429 [r2][r21][*] [prog,defect-8.0] Crash on accessing adj_elect[N] or adj_electN where N not a valid electrode number Issue I476 [*][r2][r21] [gui,defect-8.0] Fix spelling Guass->Gauss on data recording screen (eloy-20080522) [r21][*] [prog,defect-8.0] Fix "illegal start for seg" error. Issue I509 [r21] 8.1 Early Access [beta,prog-pa] New pa.electrode_numbers field is an array of fast adjustable electrode numbers. Issue I422 [r21] [beta,prog-pa] New methods: instance:pa_to_wb_coords and wb_to_pa_coords, instance:pa_to_wb_orient, instance:wb_to_pa_orient, instance:pa_to_array_coords. Issue I422 [r21] [beta,example] bradbury_nielsen_grid. Issue I502 [r21] [beta,prog-pa] no crash in fast_adjust with pa:potential_vc/field_vc with table that triggers electrode solution array unload Issue I422 [r21] (t8). 8.0.5-TEST20 [20080513] 8.1 Early Access [beta,prog-pa] pa.symmetry values changed to "2dcylindrical", "2dcylindrical[x]", "2dplanar","2dplanar[x]","2dplanar[y]","2dplanar[xy]", "3dplanar","3dplanar[x]","3dplanar[y]","3dplanar[xy]", "3dplanar[z]","3dplanar[xz]","3dplanar[yz]", "3dplanar[xyz]" Issue I422 [r20] [beta,prog-pa] pa:potential_vc and pa:field_vc now take an optional table parameter to specify fast adjust electrode potentials (similar to the fast_adjust segment): potential = pa:potential_vc(10,0,0, {[1]=100,[2]=-100}) ex,ey,ez = pa:field_vc(10,0,0, {[1]=100, [2]=-100}) (used by new electrostatic_induction example). Issue I422 [r20] [beta,prog] New ion_effective_charge reserved variable. Issue I452.3 [r20] [beta,example] New induced current/charge example ("electrostatic_induction"). Issue I499 [r20][*] 8.0.5-TEST19 [20080430] [prog,enhance] simion.VERSION now contains a version object and permits comparisons. Issue I398 [r19] 8.1 Early Access [beta,prog-wb] fixed: simion.wb was nil if simion.early_access() called when IOB already loaded (affected 8.0.5-TEST18 only) Issue I496 [r19] 8.0.5-TEST18 [20080426] [prog,defect-8.0] Upgrade luacom to CVS version (2008-04-18) Issue I495 [r18] [prog,defect-8.0] SIMION startup script (simion.lua) now loaded after GUI initialized [r18] [gui,enhance] Pause message added to statusbar upon pausing Fly'm due to "Pause step" or "Pause event" checked. [r18] 8.1 Early Access [beta,prog-pa] Fixed array corruption when doing simion.pas[n]:fast_adjust{...}, particuarly inside View screen. Issue I422.1 Issue I422 [r5][*](8.1) [r18] [beta,prog-pa] v = pa(x,y,z) -- Applying the call operator to the array is identical to pa:potential_vc. Issue I422 [r18] [beta,prog] Resize SIMION window programatically (simion.window) Issue I498 [r18][*] [beta,prog-wb] Manipulating workbenches from Lua in SIMION [r18] 8.0.5-TEST17 [20080416] 8.1 Early Access [beta,core] Allow workbench IOB files to contain PAs in a different directory. Issue I220.3 [r17][*] 8.0.5-TEST16 [20080405] [gui,defect-8.0] Keyboard input and shortcut / accelerator key conflicts lacking proper conflict resolution and precedence. Issue I492 [r16][*] [implementation] Now compiling under Visual C++ 2008 (was 2005) before. (minor effect) [r16] [implementation] Upgrade to boost 1.35.0. (minor effect) [r16] 8.0.5-TEST15 [20080331] 8.1 Early Access [beta,prog] New sim_repulsion_amount reserved variable. Issue I452.2 [r15][*] 8.0.5-TEST14 [20080327] [prog,enhance] simion.import() now accepts parameters to forward to loaded function. Issue I444.2 [r14] 8.0.5-TEST13 [20080327] 8.1 Early Access [beta,core] Refine extended to solve the Poisson Equation Issue I482 [r5][r13] Update: 2008-04-14: Fixed a fairly critical error in piclib library in the Poisson examples. The following should be added to the top of segment.other_actions (just after the "if PIC_enable == 0 then return end"): "if ion_time_of_flight <= ion_time_of_birth then return end". [beta,prog-pa] pa:clear() sets all points to 0V nonelectrodes. Issue I422 [r13] [beta,prog-pa] pa:potential_add(xi,yi,zi, val) adds potential val to potential at point (xi,yi,zi). Issue I422 [r12] [beta,prog-pa] pa:copy(pasrc) copies all points from pasrc to pa assuming array size identical. Issue I422 [r12] 8.0.5-TEST12 [20080324] [prog,enhance] Improved detection of undefined variables ("checkglobals") Issue I490 [r12] [gui,enhance] Add more underscores to controls for shortcut access keys. Issue I90 [r11][r12][*] [gui,enhance] Automatically toggle out of PE View when clicking XY/ZY/XZ/3DIso/Load/Save buttons. Issue I270.2 [r12] [gui,defect-7.0] Drawing flags in PAs list get misordered when L+/L-/Add/Del used. Issue I344.2 [r12] [example,new] New field lines/vector plotting example ('contour') Issue I178.2 [r12][*] [example,new] New example: Applies user program to record data on multiple non-orthogonal test planes ('test_plane') Issue I221.2 [r11] 8.0.5-TEST11 [20080320] (only early access mode changes) 8.0.5-TEST10 [20080319] [prog,enhance] sim_trajectory_quality now accessible at the top-level of a workbench program. Issue I370.3 [r10][*] [prog,enhance] Improve Lua output handling (for data recording file) - f:write method now implemented - seek, flush, and setvbuf methods now implemented (useful for output buffering control) Issue I335 [r10][*] [prog,defect-8.0] ion_instance no longer accessible from top-level of workbench program. Issue I487 [r10] (minor) [prog,defect-8.0] "Data Recording file not closed if Lua workbench program fails at top-level." Issue I488 [r10][*] 8.0.5-TEST9 [20080319] [gui,enhance] Autoloading/saving issues: Issue I317 - Single dialog box now presented for selecting autoload files to save with IOB file. Issue I317.4 [r9] - Auto-save/load contour files (.con) with workbench (.iob) file. Issue I317.3 [r9] - Save workbench Lua program when saving IOB under new name. Issue I317.2 [r9][*] [gui,change] Increased command-bar history size to 50. Issue I397.2 [r9] [gui,change] Lua commands with errors now saved in the history buffer of the command bar. Issue I397.3 [*][r9] [gui,defect-8.0] Prevent current directory changing when loading .con/.rec/.fly/.fly2/.ion/.pa files outside the current directory. Issue I220.2 [r9][*] 8.1 Early Access [beta,prog-pa] pa:refine if long running now updates screen and responds to abort requests. Issue I422.2 [r9] 8.0.5-TEST8 [20080311] [prog,defect-8.0] ion_charge and ion_cwf variables broken in PRG Issue I485 [r8][*] (sim_trajectory_quality also now supported in PRG -- Issue I370.2) [prog,defect-TEST] error message report wrong variable name upon read access denied to adj_elect (8.0.5-TEST4 to TEST7) [r8] (minor) 8.0.5-TEST7 [20080307] [gui,enhance] Allow dot/marker size in View to be increased. Issue I483 [r7][*] 8.0.5-TEST6 [20080229] [gui,defect-TEST] Fixed frame becomes disabled if Run Lua Program raises an error. (8.0.5-TEST1 to TEST5) [r6] 8.0.5-TEST5 [20080227] [core,CRITICAL-8.0]Fixed problem where array with fast proportional scalable electrodes was not fast adjusted properly when loaded from an IOB file Issue I172.2 [r5] [gui,change] Prompt "One (or More) Array Dimension is less than 11... Proceed with Refine Now? (Y=YES,N=NO)" default changed to YES. (minor) [r5] 8.0.5-TEST4 [20080211] [gui,enhance] Reduce minimum PA mm/gu scaling from 1E-5 to 1E-6. Issue I478 [r4][*] 8.0.5-TEST3 [20080128] [core,defect-7.0] Precision ignored if width is zero in data recording. Issue I477 [r3][*] 8.0.5-TEST2 [20080126] (only early access mode changes) 8.0.5-TEST1 [20080122] [core,enhance] Improve responsiveness on PA load/save (Asynchronous I/O). Issue I468 [r1][*] [core,defect-8.0] Fail saving an array larger than 64MB on a network share. Issue I467 [r1] [prog,defect-8.0] Upgrade Lua from 5.1.2 to 5.1.3 (bug fix only release). Issue I404 [r1] 8.0.5-TEST[?] [prog,enhance] New SIMION Libraries: simionx.Constants. Issue I400.3 [example,new] New example: Particle Teleportation across multiple SIMION processes ("multiprocess") Issue I484 [example,enhance] significant code quality enhancements to SDS atmospheric pressure collision model (sds). (2008-04-24/ 2008-04-26 / 2008-05-08 / 2008-05-24) Issue I497 8.1 Early Access [beta,prog-pa] Manipulating PAs from Lua inside SIMION: Issue I422 [beta,prog-wb] Manipulating workbenches from Lua in SIMION. Issue I496 Key: [*] User requested. [rX] is revision 8.0.5-TESTX. 8.0.4 2008-01-01 (RELEASE VERSION) Enhancements: Issue I414 - Allow PA# electrodes number to be non-sequential [r4][r8] Issue I313 - Add Crop function in Modify [r5][*] Issue I420 - New Bessel functions in SIMION Lua libraries. [r6] Issue I406 - New simion.status Lua function to display text on status bar [r1][*] Issue I407 - Custom distributions in FLY2 [r2] Issue I392 - Display full Lua stack traceback on error (improved) Issue I415 - Allow PE/Contour views of PA's with no electrode points. [r5][r9][*] Issue I418 - Allow opening workbench user program from Particles tab in View. [r6][*] Issue I421 - New "early access" mode for accessing 8.1 features. [r7] Issue I422 - Manipulating PAs from Lua inside SIMION [r7][r21][r22] [earlyaccess] Issue I424 - New gem2pa command line options to override pa_define [r9] Issue I426 - In FLY2, new "window" standard_beam attribute. [r10] Issue I235 - Report calculation time for flying ions at end of run. [r12][*] Issue I435 - When Fly'm terminates, display number of trajectories flown. [r12][*] Issue I296 - Support variable substitution and macros in GEM files [r13][*] Illustrated with new example: geometry/macro.gem Issue I364 - Click sound whenever long-running task completes [r14][*] Issue I437 - Eliminate unnecessary .PA# reloading in Refine (performance) [r14][*] Issue I413 - Allow resume of a terminated PA# refine. [r14][*] Issue I438 - Extend az/el angle range in particle definitions from +-180 to +-360 degrees. [r15][*] Issue I314 - Support tab character delimiter in data recording. [r16][*] Issue I444 - simion.import() now returns return values [r17] Issue I448 - Preserve adjustable electrode potentials when replacing PA in View. [r17][*] Issue I255 - Loading IOB/PA files from Windows explorer file associations or command-line. [r17][r18][*] Issue I450 - Lua expressions supported in text box controls. [r18] Issue I451 - Add line_distribution to FLY2 GUI [r18] Issue I452 - Add charge weighting factor (CWF) to Data Recording output and add new ion_cwf reserved variable. [r19][*] Issue I262 - Force Lua garbage collection at begin/end of Fly'm and on removing all PAs from RAM (e.g. closing file handles) [r19][*] Issue I457 - Charge weighting factor (CWF) permitted range changed to [0, 1E+30]. [r20][*] Issue I458 - New "--temp-path" command-line option for modifying default path for temporary trajectory files. [r21][*] Issue I128.1-Reallocate block of memory if PA being loaded into block does not fit. [r21] Minor: GUI layout changes in Modify, New, command-line [r18], batch mode without --nogui now loads GUI [r18] New SIMION Libraries (Issue I400): simionx.Type, simionx.Integration, simionx.FieldAnalysis, simionx.Format. [r12] Updated SIMION Supplementary Docs format [r21] Issue I479 - Default program folder name is now "SIMION-8.0" rather than "SIMION 8.0" (avoids spaces) [r22] Issue I428 - New charge repulsion examples ("repulsion") [r10] Issue I439 - New RF octupole ion guide example - examples/octupole. [r15] Issue I442 - New lens property examples. [r16] Issue I460 - Updated gauss_law example [r21] [uses earlyaccess] Issue I462 - Add simion.sleep(seconds) function. [r25] Issue I463 - Formal support for Windows version of SIMION on Intel-based Mac OS X Defects in 8.0: Issue I440 - KE precision error when defining very low speed or momentum in FLY2. [r16][critical] Issue I417 - Printing .WMF files broken [r6] Issue I408 - False "The Data Recording (or Trajectory) File Has Filled Your Disk" message in batch mode. [r3] Issue I410 - Crash on flying in batch mode when "Describe Ions" data recording option enabled. [r4][*] Issue I411 - GEM files with include statements and UNIX line terminators may give false compilation errors. [r4] Issue I412 - "File name too long" error message when printing. [r4][*] Issue I416 - Annotation (.ANN) file incompatibility between version 7 and 8.0.0. [r6][useful] Issue I423 - "No Potential Change Requested" displayed when loading an IOB. [r8] Issue I425 - Automatically increase a PA's max_voltage in SL Libraries and SL Tools [r9] Issue I431 - Lua _G table wasn't shared between batch mode program and workbench program in non-GUI mode [r11][useful] Issue I436 - Unrefined status ("!") not display correctly after fast adjusting PA# file (minor) [r12] Issue I443 - Canceling PAs|Rpl or Saving .REC file stops display update. [r17][r19] [minor] Issue I446 - Convert Lua errors to strings. [r17] [minor] Issue I445 - Fast Adjust Voltages sometimes disabled on View screen. [r17] Issue I447 - print() or print '' not output blank line [r17] [minor] Issue I335 - Lua standard input support re-enabled in non-GUI mode [r18][r23] Issue I454 - Prohibited access to reserved variables not triggering error, or error message identifies wrong variable name. [r19] Issue I455 - simion.redraw_screen() crashes if executed after exiting Modify/View screen. [r19] Issue I461 - Particle flying gets very slow after switching tab in View under Wine/Linux. [r24] Issue I348 - View Variables tab list cut off and not updated in display. [r25] Defects in 7.0: Issue I453 - Modifying ion_charge can cause charge repulsion effects to be wrong. [r19][critical] Issue I419 - Performance test 6_cylindrical_pa_test docs should indicate radius 300 mm not 30 mm. [r6] Issue I430 - Longest time-step calculation incorrectly handles mm/gu scale factor (usually minor) [r11][*] Issue I433 - Last field in ION file dropped if new-line or white-space missing at end of file. [r12][*] Issue I434 - Pressing Keep twice in View clears trajectories (minor) [r12][*] Issue I449 - Preserve "nz use" value upon replacing 2D PA in View (minor) [r18] Issue I456 - ION definitions with parameters out of range can be loaded without warning and truncated by the particle definition screen. [r20][*] Defects in SL Tools: Issue I432 - SL Tools crashes if STL file name (or wildcard pattern '%') specified does not match any files. [r12][*] Issue I459 - SL Libraries pa.field_real gives wrong signs for negative y or z in cylindrical symmetry. [critical] Early Access: Issue I427 - New multipole expansion cofficient calculation example. ("multipole_expansion") [r10][r21] Defects in Tests versions [r20] - fix "Lua Program Running" status does not dissappear in [r19] [r20] - fix simion.pas[n] functions handling NaN (e.g. field_vc). [r23] - fix problem print() not going to rec output file [r18] I335 Internal (should not have visible effects): Refactoring trajectory code [r10] [*] User requested. [rX] is revision 8.0.3-TESTX. 8.0.3-20070526 SIMION 8.0 Program Enhancements Issue I172 - Support for multiple fast proportional scalable electrode sets (see "ionfunnel" example" and SIMION Docs on "Additional Fast Scalable Electrodes in SIMION 8.0.3") [r10] Issue I397 - Add command-bar history. [r7] Issue I228 - Allow Log window data to be copied to the clipboard. [r7] Issue I364 - Flash taskbar icon and sound upon completion of long-running function. [r6][*] Issue I391 - Display full GEM and PRG errors immediately (without requiring user to enter debugger) Issue I392 - Display full Lua stack traceback on error. Issue I370 - Add new "sim_trajectory_quality" reserved variable readable and writable in the initialize, other_actions, and terminate segments. Controls trajectory quality factor (-500 to +500). [*] Issue I398 - New simion.VERSION variable. [r8] Issue I399 - Add lua51.dll (proxies lua5.1.dll) for improved Lua module compatibility. New libraries: (Issue I400) simionx.MField - Biot-Savart calculations (see "solenoid" example). simionx.FieldArray - magnetic field import and interpolation from grid in ASCII text file. (see "field_array" example). simionx.CachedField - Represents a given field whose values are computed and cached in a given field array. (see "solenoid" example) simionx.Optimization - Issue I309 - simplex optimizer (see "hda" example). simionx.SpecialFunctions - special math functions Also, simionx.Support. See "Libraries API Reference" in "Help|Browse Documentation" for details. SL Tools/SL Libraries Enhancements: Issue I363 - Increase SL Tools and SL Libraries from 50 million (SIMION 7) to 200 million (SIMION 8). New command-line option (e.g. --reserved-memory=1.8G) [*] Issue I401 - Order of magnitude increased PA load/save performance in SL Tools and SL Libraries for C++ New examples: (Issue I402) ims - ion mobility (IMS) example ionfunnel - ion funnel example hda - hemispherical deflection analyzer example, which includes simplex optimization and Excel surface plotting. [*] solenoid - solenoid magnetic field Biot-Savart example field_array - loading magnetic field array from ASCII data file example child_particles - multiple child particles example [*] collision_sds - SDS atmospheric pressure collision model. Updated examples/documentation: Improve documentation of quad\quad.lua (Issue I402). [*] -- also replace quad*.fly with quad*.fly2 to eliminate code. -- minor fix to PE update when flying non-grouped: abs(ion_time_of_flight - last_pe_update) >= pe_update_each_usec -- add tstep_adjust for improved robustness Issue I403 - New "SIMION Libraries API" Documentation in HTML ("Libraries API Reference" in "Help|Browse Documentation") Issue I405 - "sharing violation" opening results.csv in geometry_optimize.lua under Linux (find handle needs closed) License addition concerning source code. Minor: ":" and Esc shortcut keys move in and out of command bar. [r6] Reduce flicker on Particle Definitions screen. Add missing tooltips and make blue color in status bar. Increase size of TQual field (was too small). "Particles | Define and Recording" screens open in tabs. [r6] In PAs tab, add instance numbers. [r6] Eliminate "PA is Empty: Create A New PA?" question when Modifying and empty PA. [r6] Increase default brightness of OpenGL view. [r6] New empty array is considered refined. [r6] SIMION 8.0 Defects: Issue I404 - Update Lua to 5.1.2 (bugfixes only update). Issue I367 - Command-line errors not always displaying/trapping. Issue I374 - "Use programs" checkbox out of sync. [*] Issue I375 - False warning that .PA/.PA# file is electrode solution file upon entering Modify if file has bad "short" 8.3-format name. [*] Issue I377 - Particle definitions for FLY2 sometimes wrongly displayed "(special)" Issue I378 - "Clear All" disabled on FLY2 Particle Definitions screen Issue I376 - Lua file locked, preventing editing. [*] Issue I389 - Checking "Rerun" does not clear trajectories. Issue I393 - Open file dialog box in current working directory. [r6] Issue I394 - GEM "include" command fails unless .gem extension given in file name. [r6] Issue I395 - Execution of command 'C:\Program Files\SIMION 8.0\sltools.exe' failed (error 193: unknown error c1) [r7] Issue I258 - Log window cleared after running print() commands in top-level of Lua program. [r7] Issue I396 - Programs still compiled if "Use programs" disabled. [r7] Issue I89 - "enable data recording" on Data Recording screen not reset on dialog cancel. SIMION 7.0 Defects Issue I115 - SIMION may crash on startup if another SIMION7 or SIMION8 running and 1000 GUI*.TMP files exist in C:\FILES.GUI. Also patched in 7.0.5. [r9] Issue I390 - Buffer overflow on certain bad GEM syntax (minor) [r6] Also patched in 7.0.5. [*] User requested. [r6] updated in 8.0.3-TEST5+6 [r7] updated in 8.0.3-TEST7 [r8] updated in 8.0.3-TEST8 (note: includes simionx API changes too) [r9] updated in 8.0.3-TEST9 [r10]updated in 8.0.3-TEST10 (note: .PA+ fixes) 8.0.2-2007-02-12 Summary: This version makes a number of things easier for the user, corrects some defects, and provides new secondary emissions and C/C++ extension examples. A convenient new feature is it can auto-refine PAs when loading the IOB examples, and it also more actively warns the user when doing likely unreasonable things. Example docs and code structure, particularly the trap, drag, and collision_hs1 examples have been enhanced. A slight change in semantics of adjustable variable assignment makes user adjustment of adjustable variables in the trap example more reliable. Enhancements Issue I351 - In main screen, non-refined PAs are now marked with "!". Issue I341 - Simplified auto-refining of PAs during IOB loading. [!] Issue I343 - Warn on attempt to modify/refine/view wrong PA type. Issue I350 - Remove warning on entering View with PA file not on disk. Issue I336 - Display error on attempt to run workbench Lua program outside workbench (improved) [*] Issue I293 - New "Update PA" on GEM file screen to erase and insert in one step. Issue I359 - Lua now binary compatible with C/C++ extension modules.[!] - In View, PE button now also located on display bar. - Doc button in Workbench tab in View and also Load IOB and Browse Files dialog boxes can now open README.html and other README.* files. - Improve PA memory allocation failure message. - Record simion.command() command executed in log. - Other various minor GUI improvements. - New demo version build. - allow simion.command() to be run outside of "Run Lua Program" invocation, such as in command bar. Examples: - New secondary emissions example. [!] - New extension example (calling C/C++ from Lua)(Issue 354) [!] - Improve text of README.html files in examples. - In example drag\drag.lua, comments expanded on derivation. - In example trap\trap.lua, mode now configurable via adjustable variable. - In example trap\util.lua, explain derivation of trap constants and refactor code. - In example geometry_optimization\geometry_optimize.lua, display results.csv in Notepad. - In example collision_hs1\collision_hs1.lua, cleanup use of locals and enhance KE average calculation. Make PA planar. Changes Issue I353 - Change in behavior of adjustable variable assignments in Lua affecting current v.s. default values. Defects in 8.0 Programming/Batch Mode Issue I357 - Prevent simion.command() calls from having side-effects such as leaving additional PAs around in memory and parameters modified. [!] Following two issues are related. Issue I358 - "fly" batch mode command not raising Lua error on failure. Issue I355 - "fastadj" command in batch mode program may cause subsequent command to terminate when run in GUI mode. [*] Issue I357 - run_stop() now disables window frame (prevents other user actions) and properly functions in non-GUI batch mode. Issue I348 - View Variables tab list cut off and not updated in display.[*] Relative IOB path path now accepted in "fly" batch mode command (see Issue I220) GUI Issue I58 - Ensure ESC key cancel actions in View screen. [!] Issue I346 - Mouse remains locked in window upon task switching with CTRL key down. [*] Issue I356 - Warning "too many ions for list size" can display when loading ION file containing list size ions. [*] Issue I344 - View PAs tab instance list not updated on loading IOB. Installation Issue I360 - Install/run fails if C: drive does not exist for FILES.GUI directory. Examples Issue I362 - HS1 collision model did not accurately thermalize. [!][*] Issue I358 - Example quad\quad.lua not using _quad_entrance_voltage, _quad_axis_voltage, and _quad_detector_voltage variables.[!] Issue I349 - Example tune\tune.lua doesn't update PE surface between flights (minor) Issue I352 - Example trap\util.lua fast_adjust segment test first incorrectly (minor/efficiency) See also Issue I353 relating to trap example. Internals: reduce use of packed structs, 7.0 buffer correction. Other notes: This is a report that SIMION runs well on Intel Macs under CrossOver Mac (http://www.simion.com/info/Mac_OS). [*] [*] User requested. [!] important or particularly significant 8.0.1-2006-12-26 Enhancements Issue I299 - New "--noprompt" command-line option to disable prompting in batch mode. [*] Issue I229 - Allow log window to open in separate larger window. [*] Issue I335 - Improve Lua output handling (e.g. print() function output to log window). Issue I336 - Display error on attempt to run workbench Lua program outside workbench. - Added SciTE setup info to "Editing SIMION Text Files" document. Defects in 8.0 Issue I333 - Zoom was reset after fast adjust. [*] Issue I322 - Data recording crossing plane window sizing problem. [*] Issue I326 - Crash if initial particle params out of range. Issue I337 - Fix Window-style line editings in some Lua files [minor] Defects in 7.0 Issue I331 - Acceleration error in overlap of electrostatic PA with magnetic PA of higher grid density. Also patched in 7.0.4. [CRITICAL] [*] [*] User requested. 8.0.0-2006-11-18 Production release. 8.0rc7-2006-11-17 Resolved I277 - Workaround Wine/Linux bug 2398 (OpenGL client window). Remove click sounds on Modify window button mouse over. Add simion.key file in installation. 8.0rc6-2006-11-16 Resolved I276 - Display double buffering broken under Linux/Wine. 8.0rc5-2006-11-15 Resolved I142 - Key input commands (KEY?,R/S,key(),run_stop()) freeze. Resolved I239 - Immediately splat FLY2 particles with parameters out of range. 8.0rc4-2006-11-14 Handling of non-SSE2 CPUS improved in installation. Removed unused SL compiler library files fully from install. Cleaned up docs on SIMION text editor plugins. Cleaned examples documentation a bit. Update welcome page. Reenabled SSE2 on GUI module. 8.0rc3-2006-11-13 Gracefully handle non-SSE2 CPUs. Warn on attempting to install on Win9X. 8.0rc2-2006-11-11 Added Docs and SL Tools (Issue I131) buttons to main screen. (note also SL libraries, Issue I472) Installer available. 8.0beta14k-2006-11-04 Default to electrons in FLY2 file if mass/charge not specified. 8.0beta14j-2006-11-02 Some View screen control rearrangements. Resolved Issue I253 - Make print button visible in View when Hide selected. Fixed sizing of positioning info list on PAs tab in View. 8.0beta14i-2006-11-02 Added missing tooltips on View and other screens. Fixed Issue I154 - On data recording and particle definition screen, coordinates display in status bar when mouse moves. Fixed Issue I269 - 3D view display stops updating after exiting data recording screen. Fixed Issue I270 - XY,ZY,XZ,3D ISO iso buttons were not disabled in PE view. Fixed Issue I271 - In Modify, ctrl+right click to replace was ignored if focus not on 3D (simgui) window. Fixed Issue I272 - In Modify 3D (OpenGL) window crashes if closed when converting to polygons. 8.0beta14h-2006-11-02 Fixed I267 - FLY2 coordinates relative to not preserving. 8.0beta14g-2006-11-01 - Modify screen rearranged slightly according to manual. - Some more tooltips added. 8.0beta14f-2006-10-31 - Replaced exact angle button with constrain checkbox in View - Fixed Issue I266 - Alt key ignored after right mouse down on window scroll button without focus in 3D view screens - Fixed Issue I59 - Flying ions as dots goes at high speed if mouse not directly over 3D view window (simgui window). 8.0beta14e-2006-10-31 - FLY2 - rename gaussian3d {mean_x = 0, mean_y = 0, mean_z = 0, stdev_x = 0, stdev_y = 0, stdev_z = 0} --> gaussian3d {mean = vector(0,0,0), stdev = vector(0,0,0)} - new coordinates attribute on particles { }. coordinate system is now preserved on save/load. - Update on I212 - if no units comment line given in ION file, now defaults to WB coordinates mm (0). Was PA instance 1 gu coordinates (1) in earlier betas and undefined behavior in 7.0. 8.0beta14d-2006-10-31 - FLY2 - cylinder_distribution implemented - rename axis_direction --> axis - remove underscores from GUI - fixed "text" (now "(special)") in FLY2 GUI - used for sequences and distributions int the FLY2 file but not listed in the GUI - "edit as text" now works for writing, not just reading 8.0beta14c-2006-10-28 - Resolved I263 - Disable sounds by default in batch mode operation. 8.0beta14b-2006-10-28 - Fixed 8.0beta14 error in .fly loading 8.0beta14-2006-10-26 - FLY2 changes: rename linear_sequence --> arithmetic_sequence rename line3d_sequence --> line_sequence rename vertex_angle --> half_angle rename disc_distribution --> circle_sequence { fill = true, ... } rename cone_distribution --> cone_direction_distribution {fill = true } rename cone_edge_distribution --> cone_direction_distribution new line_distribution type new sphere_distribution type line_sequence/line_distribution now editable in the GUI. NOTE: cylinder_distribution not yet functional. - new Check for Updates button on main screen. 8.0beta13w-2006-10-26 - Increased max ions default from 500 to 1000. - Moved PE controls to Contours tab. - Open button on Browse Files edits text files. 8.0beta13t-2006-10-19 - Changes - adj_elect[0] and adj_pole[0] now same as adj_elect00 and adj_pole00 8.0beta13s-2006-10-17 - Changes - Lua workbench user programs now require a "simion.workbench_program()" statement at the top of the program. Lua segments also require a "segment." prepended to the name. Example: simion.workbench_program() function segment.other_actions() print(ion_time_of_flight) end - These variables have been renamed in Lua programs: rerun_flym --> sim_rerun_flym update_pe_surface --> sim_update_pe_surface trajectory_image_control --> sim_trajectory_image_control retain_changed_potentials --> sim_retain_changed_potentials Old versions have been deprecated with error. - ion_instance not visible in init_p_values segment. - Defects in beta: - Fixed Issue I257 - Crash on Lua print() outside of segment when loading IOB. - More robust update of PRG variables in debugger. 8.0beta13q-20061016 - Defects in beta: - Read/write protections on user variables (p.I-21 sim7 manual) now active. 8.0beta13p-2006-10-20061014 - Enhancements: - Lua commands now work in command bar. - Lua local adjustable variables are now case sensitive (were case insensitive). In PRG, adjustables remain case preserving. - Detects in beta: - Fixed Issue I94 - Variables tab and Lua variables synchronization problems. 8.0beta13n-2006-10-07 - Defects in beta: - Fixed Issue I248 - Lua stack overflow on syntax error in user program called by simion.import. - Fixed Issue I249 - Status bar cleared on hovering mouse over window with tooltip. - Fixed Issue I250 - Particle definition and other filenames not display when loaded from IOB. - Enhancements: - Addressed Issue I247 - Refine max iteration limit and default increased to 1E7, and other refine screen issues. 8.0-beta13? - Added simion/extra.lua 8.0-beta13f-20060927 More FLY2 enhancements 8.0-beta13d-20060926 More FLY2 enhancements 8.0-beta13c-20060923 - Enhancements - Issue I215 - Support Lorentzian distribution in FLY2 - Issue I227 - Add "fly --restore-potentials=b" command-line option. - Defects in earlier 8.0betas - FLY2 fixes. 8.0-beta13-20060920 - Enhancements - Resolved Issue I17 - Prevent display flicker with double buffering. - Moved Log Window into new "Log" tab in View screen. - Defects in earlier 8.0betas: - Fixed I224 (and I65,I86) - Loss of view definitions on entering workbench tab. 8.0-beta12h-20060920 - Defects in 7.0: - Fixed Issue I223 - Particles may skip through PA at el=180deg. (currently only patched in 8.0, not 7.0) 8.0-beta12g-20060919 - Fixed Issue I219 - Various printing screen issues - labels, color, annotations. - Fixed Issue I222 - Double/halve functions refuse to run. 8.0-beta12-20060909 - Experimental: FLY2 support is *partially* implemented (but certainly not ready for production use yet). See "group 2" on the partical definitions screen to try it out. - Detects in 7.0: - I212 - Minor changes to ION file parsing for improved robustness (patch not made to 7.0) 8.0-BETA11f-20060904 - New features - I209 - [+-] keys zoom in/out in on Modify OpenGL view. - I210 - Isometric view option on Modify OpenGL view. - Defects in ealier 7.1/8.0 betas: - Fixed Issue I207 - Key shortcuts bypass field validation (killfocus). - Fixed Issue I208 - User preferences (FILES.GUI) ignored in batch mode. - Partially fixed Issue I211 - Verbosity of batch mode output. 8.0-BETA11e-20060901 - Defects in earlier 7.1/8.0 betas: - Fixed Issue I205 - "No such file or directory" when loading file. - Experimental: - more progress on .FLY2 particle definition support (not yet functional!) - Debug: Add debug code for Issue I206 - "highest_parent_object - no highest_parent found error" 8.0-BETA11d-20060830 - New features: - IOB file name displays in title bar (I204). - Defects in earlier 7.1/8.0 betas: - Fixed Issue I203 - Down/up arrow keys in data fields skip data validation. 8.0-BETA11c-20060829 - New example GEM: examples/gem/tetrahedron.gem - Defects in earlier 7.1/8.0 betas: - Fixed "--reserved-memory" option broken in beta11. - Fixed incompatibility in pre-Windows 2000 OSs (GetConsoleWindow). - Experimental: - Issue I471 - Initial .FLY2 particle definition support (not yet functional!). This is the "Grouped 2" option on the particle definition screen. This should be ready in beta12. http://www.simion.com/beta/fly2.html 8.0-BETA11-20060812 - New command-line capabilities: - "fly" command more fully implemented "--particles", "--recording", "--repulsion", "--repulsion-amount", "--retain-trajectories", "--adjustable", "--markers", "--marker-color" - New "lua" command to transparently invoke the Lua interpreter. - new "--version" option - New "Run Lua Program" button on main screen. Useful for running batch mode programs from the GUI. - New built-in Lua functions: - simion.command(string) - invoke command via command-line like API - simion.import(filename) - import one SIMION lua program into another. - New/updated Lua examples: - [NEW] "geometry_optimization" - geometry optimization - [NEW] "emittance" - calculation of emittance - [NEW] "excel" - plots phase plot in Excel - [sort of NEW] "collision_hs1" - collision model based on SL version - "tune" - voltage optimization (based on SL/PRG versions) - "einzel" - einzel lens (largely unchanged from 7.0) - "drag" - stokes' law example (converted to Lua + more docs) - "gem" examples: cone.gem and tune.gem - "tof" example (largely unchanged from 7.0) - "trap" example (converted to Lua and refactored) - "buncher" example (converted to Lua / partially to C++) - "quad" example (converted to Lua) - "sims" example (largely unchanged from 7.0) - "icr" example (converted to Lua and refactored) - "rfdemo" example (converted to Lua, fix voltage calc in area example) - "random" example (converted to Lua) - "misc" examples (largely unchanged from 7.0) - "magnet" examples (largely unchanged from 7.0) - "performance_tests" examples (currently unchanged from 7.0) - HTML documentation: see README.html in the main program data folder. - Lua now includes Luacom (COM interface) for controlling other programs. See "excel" (Microsoft Excel) example. - Internal - upgraded Lua to 5.1.1. - upgraded Boost program options to CVS version. 8.0-BETA10-2006-08-05 This release further expands the batch mode (command-line) capabilities. - New command-line capabilities: - "refine" command - refine a PA. - "fastadj" command - fast adjust a PA. - "fly" command (partially implemented) - fly IOB file. - "--editor" option - text editor to use - Detects from earlier 8.0 betas: - Improved status bar display. 8.0-BETA9-2006-07-29 This release provides initial batch mode (command-line) capabilities (Issue I130), and properly supports up to almost 200 point PAs via the --reserved-memory command-line option. If also resolves various defects and has internal changes. - New features - New command-line interface / console mode (in progress) - New command-line options: - "--reserved-memory=size" allowing PA sizes of ~1.85GB to be obtained on Windows XP. - "--nogui" non-GUI, console mode. - "gem2pa" - convert GEM to PA file. - "--default-num-points" and "--default-num-particles" - Enabled SSE2 CPU extensions on optimized build (slight performance improvement) - Converted many toggle buttons to checkboxes. - Changes from 7.0: - Command-line format differs. Do "simion.exe --help" for details. Previously was "SIMION 1000000 #2000 !" (p. B-3, SIMION 7.0 manual). - SIMION_EDITOR environment variable. GUI_EDITOR is deprecated and GUI_FILENAMES is now ignored (long names are standard now). - Defects from earlier 7.1/8.0 betas - Fixed Issue I200 - Secondary keys do not work on gui window. - Fixed Issue I202 - Extra .PA extension added when saving .PA# files under Win2K - Defects from 7.0 - Fixed Issue I201 - GEM file includes don't properly resolve paths in other directories. (not patched in 7.0) - Implementation: - now compiling with wxWidgets 2.6.3. - GEM code refactoring. 8.0-BETA8-2006-06-20 This release provides major new capabilities such as Lua programming, increased limits, performance enhancements, and initial OpenGL viewing in Modify. It also resolved numerous defects. - New features - Incorporating Lua programming language, with preliminary Lua scripting for user programs (subject to change). Issue I470. - Increased maximum PA size limit from 50 million (~500MB) to effectively ~200 million (~2GB)--or ~300 million (~3GB) for WinXP having the /3GB option enabled. (I163) This is not very well tested at the moment but seems to work. The /3GB option is not yet tested at all but may work. (http://support.microsoft.com/kb/833721) - Increased maximum number of ions in memory from 500 thousand (~84 MB) to 10 million (~1.7 GB) (I164) - Implementation: Now compiling under Visual C++ 2005 (was Visual C++ 6 before). This provides measurably better performance and roughly ~20-40% reductions in run-time from SIMION 7.0.0. (Issue I185) - More compact layout on View screen and "Hide" button that collapses top panel. (I177) - OpenGL viewing of PAs in Modify (incorporated from SL Toolkit). - Updated fast adjust screen GUI. - Resolved issue I98 - On fast adjust screen, elminate "you didn't respond to any potential changes" warning. - Defects also incorporated into 7.0: - Fixed issue I168 - In SIMION data recording, electric potential (E) records magnetic potential whenever a magnetic PA of 2D planar symmetry is active. http://www.simion.com/discuss/viewtopic?t=341 Also patched in 7.0.1-2006-04-10. - Resolved issue I170 - SIMION may freeze on startup with the message "Initializing Random Number Generator". Also patched in 7.0.3-2006-04-25. - Resolved issue I171 - SIMION may crash when calling the "seed" function in a PRG user program. Also patched in 7.0.3-2006-04-25. - Resolved issue I191 - Long file names (greater than 8+3=11 characters) may cause error messages. Also patched in 7.0.4. - Resolved issue I192 - Buffer corruption when saving IOB of file length slightly more than 12 chars. Also patched in 7.0.4. - Defects in earlier 7.1/8.0 betas: - Fixed initialization of random number generator from active.tbl. - Fixed assert on loading PAs with ng <= 0 (e.g. DETECT.PA). - Fixed I193 - Only 12 characters of filenames are displayed in PA and PA instance lists - Fixed I195 - On adding a new PA instance to the IOB, angular info (Rotation, Elevation & Azimuth) not read into prompt box. - Fixed I194 - Memo information not displayed. - Fixed I143 - User program enable/disable switch missing in View. - Fixed I11 - Time marker controls were temporarily removed in View screen. - Fixed I162 - "mm" label not display on ion definition screen. - Fixed I167 - Sounds not supressed when the SIMION window is deactivatived. - Fixed I137 - In fast adjust screen, focus not moved to panel on electrode selected. - Fixed I199 - On first opening file dialog box, file name is string of spaces. 7.1-BETA7-2006-02-04 This release resovles various defects. - Defects in earlier 7.1betas: - Fixed data recording monitor slowness and overflow problems (I144) - Fixed PA list on main screen not always updated (I50) - Fixed variable corruption in debugger (I159) - Fixed non-adjustable variables displaying in Variables tab in View (I161) - Fixed "Double" button not working (I74) - Fixed design defects on file selection dialog boxes (I150) - Defects in 7.0: - Fixed other variables not initialized in debugger (I157) 7.1-BETA6-2006-02-03 This release expands the maximum number of electrodes, makes various GUI improvements, and resolves some defects. - New features: - Maximum adjustable electrodes increased from 31 to 128. New adj_elect31..127 and adj_pole31..127 reserved variables added as well as new adj_elect and adj_pole reserved arrays. (see http://www.simion.com/info/Max_Electrodes for full details). (I127) - GEM screen redesigned. - Some Modify screen layout changes, e.g. point type. - Defects in earlier 7.1betas: - Reduced minimum size of graphic window (I29) - Fixed progress bar (I39) - Detects in 7.0: - Fixed "Illegal Fastadj Potential Count in test.pa0" when loading IOB with maximum adjustable electrodes (I158). 7.1-BETA5-2006-01-17 This release makes various GUI improvements and resolves some defects. - Main screen rearranged more. - Validate value when enter key pressed in text/spin controls (I18) - Defects in ealier 7.1betas: - Improve performance and reduce flicker when changing screens - Eliminate multiple-flicker upon starting Fly in View - Fixed accelerator key conflicts with text/spin controls (I37) - Fixed focus issues with view toggle button in fast adjust screen (I141) 7.1-BETA4-2006-01-10 ## User-visible changes: - Precision on numeric fields is now properly implemented (I111). - Print options screen redesigned (I14). - Fixed update of coordinate/potentials in status bar on mouse hover over View/Modify screens (I73). - Improve toggle button behavior (disable XP hover effect) (I149) - Coloring added on panels (I151) as well as to OK/Cancel buttons. - Variables panel on View screen is now two columns (I152). - Various small layout improvements: View/Def/Welcome screens. 7.1-BETA3-2005-12-30 ## User-visible changes: - "compile/debug" screen redesigned (2005-12-28), including placing variable list inline. - "options/customize" and "color/palette" screens redesigned (2005-12-30) - "fast adjust" screen redesigned. (2005-12-24) - Rearranged main and view screens since last beta. (2005-12-30) - Added IOB filename to main screen. (2005-12-29) - Various fixes in mouse handling in beta (2005-12-24) 7.1-BETA2-2005-12-22 (22005-08 through 2005-12-22) - djm Summary: SIMION Project is now maintained by Scientific Instrument Services, Inc. (SIS). The main change is a large change to the GUI framework. ## User-visible changes: * Incorporate new GUI framework utilizing native controls: - most screens have been redesigned - native mouse cursor - native file manager (replaces GUI File Manager) - native controls (buttons, text boxes, list boxes, etc.) - native message box for help boxes. - native windows colors for dialog background and WinXP themes - mouse scroll wheel and up/down keys increment/decrement numeric fields. - changed help system - new tooltip help displays in status bar upon mouse hover over control. (Issue I473) * Remove outdated software: * Remove walk-about (GUI File Manager) and EDY programs. * Other GUI changes: * Add menubar on window frame. * Add statusbar on window frame (status messages). * New about box with licensing info. * Remove "general help" (largely outdated info on the old GUI) * [main] Rearrange main screen buttons, including * Moved double/halve functions from main screen into Modify screen. * Removed "End SIMION" button on main screen (redundant) * Removed button "Old" (redundant with "Load") * Some relabeling: GUI File Manager, Test & Debug Selected PAs * In PA List (Main screen), changed items now have "*" appended rather than a red box. * [modify] the "set" button now uses a dialog box (more conventional). * [view] When loading IOB file, assume yes for these questions (don't ask): - Restore Potentials To Values Active When .IOB Was Saved? - Auto-Load Matching .REC File? - Auto-Load Matching .ION File? - Auto-Load Matching .FLY File? * [view] Moved data recording link from ion definition screen to view screen. FIX:what about time markers? * [view] Combined "Resume Ion Flying after a Pause" and "Integrate Trajectory a Single Step" buttons into one ">" button. Single step trajectory integration is also not automatically turned off when ion flight starts. * [view] AdjV tab can now can be used before ion flight to display and edit adjustable variables. Adjustable variables are now not displayed when starting the fly. * [view] On Contour, minor changes to GUI behavior. * [view] 3D Zoom behavior modified -- moved functionality to View panel (and removed Z3D tab). * [view] Tabs rearranged some. Including - AdjV --> Variables and PAs --> PAs (Fields) * [settings] Removed various font settings (x/y offset and special characters). removed scan on/off. removed etched/normal text. removed mouse sensitivity. removed delays panel. * Disable undocumented CTRL+ALT behavior (show cross-hairs cursor) * Bug/defect fixes: * fixed: file directory limit errors (GUI File Manager was replaced) * fixed: integer overflow when creating a new PA and specifying certain large dimensions (e.g. 90000 x 90000 x 1) (minor) * Logic changes: * [view,adjv] Changes to the way adjustable variables are saved before/after ion flights in order to allow AdjV tab to be accessed before ion flights. * Other * Support for beta versions. * Updated copyright. ## Developer-visible changes: * Incorporate the wxWidgets GUI framework (www.wxwidgets.org), including - incorporate SIMION message loop into the wxWidgets message loop (simion_main.cpp and mouse.c) - wxWidgets for main screen and various controls and dialog boxes * Improve coding: - replace "struct" with "typedef struct" - reduce usage of void * - cleanup of comments to be more doxygen-like (e.g. gui.h) * Many files converted to C++ (particularly GUI code) * Compile/link changes (changes made only to MSVC++6 project, simion.dsp): - Compile globally with 8-byte struct alignment (previously was 1-byte), while adding pshpack.h and poppack.h around structures. - Add Debug builds. - Compile against static, multithreaded C run-time library (same as wxWidgets) (previously was static, single-threaded). - removed timelock from build * Remove dahl contact info. * Remove scrollbars on simgui client window. 7.0.5-2007-05-25 - Issue I115 - SIMION may crash on startup if another SIMION7 or SIMION8 running and 1000 GUI*.TMP files exist in C:\FILES.GUI. - Issue I390 - Buffer overflow on certain bad GEM syntax (minor) 7.0.4-2006-12-26 - Resolved Issue I331 - Acceleration error in overlap of electrostatic PA with magnetic PA of higher grid density. [CRITICAL] - Resolved issue I191 - Long file names (greater than 8+3=11 characters) may cause error messages. - Resolved issue I192 - Buffer corruption when saving IOB of file length slightly more than 12 chars. 7.0.3-2006-04-25 - Resolved issue I170 - SIMION may freeze on startup with the message "Initializing Random Number Generator". - Resolved issue I171 - SIMION may crash when calling the "seed" function in a PRG user program. - Compiled with Open Watcom 1.5. 7.0.2-2006-04-15 - Partly resolved issue I169 - The GUI File Manager has a limit of 3000 directories and becomes unresponsive on a long running directory scan. http://www.simion.com/discuss/viewtopic?t=21 7.0.1-2006-04-10 - Fixed issue I168 - In SIMION data recording, electric potential (E) records magnetic potential whenever a magnetic PA of 2D planar symmetry is active. http://www.simion.com/discuss/viewtopic?t=341 - Updated legal and contact info. - Added file version info. - Compiled under newer version of Watcom compiler (Open Watcom 1.3). SIMION 7.0.0 used Watcom 11. 7.0-2005-05-23 SIMION 7.0, David Dahl, Idaho National Engineering and Environmental Lab (INEEL) =============================================== SIMION 8 Manual - Changes and Errata =============================================== Rev-5 (not yet released) 2-5 - "mV^2" should be "mv^2" 2-5 - clarify "mass (in)dependent" comments as discussed in http://www.simion.com/discuss/viewtopic?p=3250 [*] 5-30 - Added (under the Copy function): "If you want to change the potential of a copied element, refer to the description of the Replace function given earlier." [*]davido H-15 - "coefficient of variation squared" -> "coefficient of variation". "four" -> "four+one". "1/(accuracy level)" -> "1/quality". "typically 1/2 or 0.5" -> "quality typically 3". [* http://www.simion.com/discuss/viewtopic?p=3305 ] M-8 - describe INI_GUI environment variable - If this variable is set, SIMION will store its program settings and temporary files (i.e. FILES.GUI) in this directory. SIMION Manual Rev-4 (Jan 2008)- Covering SIMION version 8.0.4 This revision updated some parts of the text for 8.0.4, fixes some typos, and improves some of the descriptions. 2-13 - Note that "adjustable electrode/pole potentials must not be skipped (e.g. 1,2,4,5)" restriction was removed in 8.0.4 -- Issue I414 2-13 - Note that 8.0.3 allows multiple fast scaling solutions, which are useful for ion funnels and resistor chains. See Issue I172. 2-20 - Add: "(and possibly also an exclamation ! symbol to indicate unrefined)" 5-32 - Describe Crop function - Issue I313. 6-10 - Remove "Any skipped electrode values (e.g. 1,2,3,6,7,8) will abort..." 6-10 - ".PA2-9 & A-U (numbers 2-30)" changed to ".PA2-.PA127 (numbers 2-127)" 6-10 - As of 8.0.3, multiple sets of fast scalable electrodes can be defined: see Issue I172. 9-8 - Mention collision_sds example. A - Updated for 8.0.4 system requirements -- Issue I474. B-1 - Link to Linux and Mac OS X instructions: Linux: http://simion.com/issue/469; Mac OS X: Issue I463. B-1 - Add comment: Allocating arrays greating than approximately 1.3 GB may require starting SIMION with the --reserved-memory program option (see Command Line Appendix and Issue I163). One way to do so is to modify the Windows shortcut that starts SIMION (right click it and select Properties) so that the Target reads something like this: "C:\Program Files\SIMION-8.0\simion.exe" --reserved-memory 1.8G C-3 - Suggest entering "print(sqrt(2))" in the command bar also. C-3 - Typo: Reference to Figure C.7 should be C.6. C-9 - Correction: Active button -> Enable check box (old comment) C-8 - Correction: Remove old "If the square on the button....compensating for it." comment. F-2 - Add: GEM files containing macros (Issue I296) will be preprocessed and written to a .processed.gem file. F-8 - Note that .PA0 extensions were made in 8.0.3 (Issue I172). H-13 - Note that a useful analysis of SIMION's charge repulsion capabilities is in the README.html file in the SIMION "repulsion" example. H-16 - Typo: Remove "USEE". I-1,I-5 - 8.0.4 added Lua macro and variable substitution support. See Issue I296 . 3-10,6-6 - 30 fast electrodes should be 127 (noted by eloy) K-12 - Describe new "window" attribute: Issue I426 K-15 - Note that defining custom disitributions is explained in Issue I407 K-21 - K.9.14 line_distribution should read "Creates uniformly random points along a line segment", remove parameter "n", and remove comment '-- or specify "step = vector(1,-1,2/9)' in example. K-23 - Describe new "window" attribute: Issue I426 L-16 - Typo: Remove empty "Changing Adjustable Variables While Ions are Flying" L-16,L-17 - Add ion_cwf reserved variable - Issue I452 L-16,L-17 - Add sim_trajectory_quality reserved variable - Issue I370 L-20 - simplify flow diagram. Issue I304. L-31 - Note that simion.import differs a bit from Lua's own built-in dofile and require functions in that the imported code is executed inside the environment of the SIMION workbench user program. L-3,L-40 - Note new simion.pas interface (Issue I422) and SIMION Libraries (Issue I400). L-33 - Add missing simion.import doc. L-35 - Add new simion.VERSION variable - Issue I398 Add new simion.sleep function - Issue I462 Add new simion.status function - Issue I406" Moved simion.key, simion.run_stop, and simion.redraw_screen into section L.4.1 and remove "only legal in" M-2 - Remove /3GB note M-2 - Add --temp-path command line option - Issue I458 M-3 - Add new gem2pa comment line options - Issue I424 M-4 - Add refine --skipped-point option - Issue I424 N - updated for 8.0.4 changes. SIMION Manual Rev-3 (March 2007) - Covering SIMION version 8.0.2 1-3 - Note that the latest list of 8.0.x version changes is online at http://www.simion.com/changes . 2-24,8-1,8-2,8-8,8-10,H-9,H-10,H-11,H-12,K-2,K-23,L-16,L-27, L-33,L-35,L-52,L-53 - Change "amu" to "u" (standard symbol for unified atomic mass unit). 6-4 - Note that further information related to the "ground can" and defining PA boundary conditions can be found in http://www.simion.com/info/First_Uniqueness_Theorem 8-27 - Note that log tab is detachable in 8.0.1. 9-7 - Correction: Replace "message" with "print". 9-7 - Correction: Remove "(print) legal in initialize, other_actions, and terminate segments" 9-7 - Formatting correction: print(string."3.142") --> print(string.format("%0.3f", 3.141592)) H-7 - Change "-" before "base array" and "electrode array" to "in" (so as not to confuse with subtractions). http://www.simion.com/discuss/viewtopic?p=1248#1248 J-1 - Add note: Details on SL Tools (STL CAD import) is available separately in the additional electronic documentation (Help | Browse Documentation menu in SIMION). K-13 - Remove old comment: "when direct support for FLY2 files is added to [SIMION]". L - Correction: some general grammar/spelling/formatting issues. L-2 - Add reference to Chapter 9 for user programming tips. L-2,L-4,L-72 - Update comments on C/C++ interface: As of version 8.0.2, C/C++ code is callable via the Lua extension interface. See SIMION's "extension" example (in the examples/extension folder). A simpler method, with more overhead, is the Lua os.execute() function. COM calling is also supported via LuaCOM--see "excel" examples. (SL Remote is not available nor needed in Lua.) L-3 - Mention the new "Beginning Lua Programming" book: More recently released was the book Beginning Lua Programming, which provides a more detailed and somewhat more novice oriented introduction to Lua. http://www.lua.org/docs.html L-4 - Correction: Add missing "--" in code comment line: "-- Here's some variable I define". L-6 - Add note that print also works in bottom task bar (as of 8.0.1). For example, "print(factorial(5))". L-8,L-40 - Add note that SL Libraries docs can be found in the additional electronic documentation (Help|Browse Documentation menu item). L-8 - Note new "extension" (C/C++) calling example and that additional examples are described in the additional electronic documentation (Help|Browse Documentation menu item). L-8 - Add note: You will be automatically prompted to refine upon first loading an IOB with unrefined PAs (as of 8.0.2). L-12,L-66 - Note that workbench user programs can differentiate between PA instances by testing the ion_instance variable. L-16 - Clarify meaning of adj_elect00 variable: adj_elect and adj_pole are array variables with elements aliased to the adj_elect00-adj_elect127 and adj_pole00-adj_pole127--you may use whichever form is most convenient.... The adj_elect00 (or adj_pole00) reserved variable (you can think of it as electrode #0) is special and supports control of fast scaling electrodes in .PA0 fast adjust files (it refers to the voltage of maximum magnitude in the fast scalable set). L-21 - Replace: "Message and R/S" with "print and run_stop". L-27 - Formatting correction: 'string."Ion %d neutralized at (x,y,z)=(0,0,0)"' --> 'print(string.format("Ion %d neutralized at (x,y,z)=(%d,%d,%d)", ion_number, ion_px_mm, ion_py_mm, ion_pz_mm))' L-29 - Clarify that writing to reserved functions is allowed (e.g. "cos = sin" is allowed), though it can be undesirable. L-67 - Add note: "pow(x,y)" can also be written as "x^y". L-70 - Formatting correction: 'string."0.00000"' --> 'string.format("%0.5f", math.pi)' L-70 - Formatting correction: 'if x = y" --> "if x ~= y" (under "X!=Y") L-72 - Remove: reference to deprecated Lua "mod" function. M-1 - Describe new "--noprompt" main option: Disables prompting user in batch mode (uses default choice). If specified, then --nogui must be specified as well. This option is new in version 8.0.1. N-1 - Add note: Lua can also call into C/C++ or COM. N-2 - Add note: 8.0.2 adds new secondary emission and C/C++ extension examples. SIMION Manual Rev-2 (December 2006) - Covering SIMION Version 8.0.0 Fixed paper size (A4 --> US letter) as lower margin was almost cut-off. I-2 - Added missing Figure I.1. I-18 - Spelling: cdnt_box3d --> cent_box3d. L-72 - Spelling: SL remove --> SL remote. L-73 - Removed: "?" next to nint. N-1 - Changed: "FLY2 format of SIMION 7" --> "FLY format of SIMION 7". SIMION Manual Rev-1 (November 2006) - Covering SIMION Version 8.0.0 First revision (Issue I16). Additional notes: In 8.0.1, ion_split == -4 (ion killed) may also occur if particles start with parameters out of range.
