forked from esimiele/VMAT-TBI
-
Notifications
You must be signed in to change notification settings - Fork 0
ESAPI code used for VMAT TBI autoplanning
License
YZST/VMAT-TBI
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
Hi ESAPI/Projects/VMATTBIautoPlan --> binary plug in ESAPI_MT/VMATTBI_optLoopMT --> stand-alone executable Some important notes to make the scripts run: binary plug-in: -for the most part, this script is pretty self-contained -the main parameters that can be adjusted are the global variables noted at the beginning of the UI class (UI.xaml.cs file) -if you want to adjust the default superior-inferior margin applied to contouring the overlap between VMAT fields in adjacent isocenters, adjust the initial assignment of contourOverlapTB.Text near the top of the populateBeamsTab method (line 600) -if you want to adjust the default energy for the static AP/PA beams, you need to adjust the beam energy specifier used in assigning ebmpStatic (two total instances of "6X" in the constructors for the class) stand-alone executable: -most of the global variables are listed in the header for the MainWindow class (indicated near the top) -plan quality objectives used in the code can be adjusted by modifying the objectives listed in the dataContainer struct in the optimizationLoop class *in particular, the 'threhold' and 'lowDoseLimit' variables will impact the decisions the algorithm makes when deciding how to modify the current optimization constraints currently, they are set to 15% and 10%, respectively. -If you want to use/not use jaw tracking or the normal tissue objective (NTO) in the optimization, modify the values for the plan.OptimizationSetup.UseJawTracking and plan.OptimizationSetup.AddAutomaticNormalTissueObjective variables near the bottom of the preliminaryChecks method in the optimizationLoop class -if you want to use different dose levels/ranges or priorities to generate the heater and cooler optimization structures, adjust the values near the bottom of the evaluateAndUpdatePlan method of the optimizationLoop class (lines 659 - 690 of the initial upload code) -if you want a demo of how the code runs, you can change the 'demo' global variable in the progressWindow class to true. Instead of running actual optimizations and dose calculations the code will instead sleep for three seconds. This gives you a chance to see what information is reported as the code runs -IMPORTANT! ** You will need to change the default paths in the updateLogFile and WriteResults_Click methods of the progressWindow class! If you don't do this, the code will likely crash! The paths in the updateLogFile method are used to write a text log file as the code runs (useful if the code crashes). Set these paths to a location that has a low risk of being deleted. The path in the WriteResults_Click method is used when the user hits the 'write results to file' button. Set this path to a default directory where the filebrowserdialog window should open. Currently working on updating the install and run instructions. Stay tuned. If you have questions, leave a comment and i'll try and respond as quickly as I can.
About
ESAPI code used for VMAT TBI autoplanning
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published
Languages
- C# 100.0%