diff --git a/test/test_pyarc_run_tutorial.py b/test/test_pyarc_run_tutorial.py
index 2808ad89f829d27c6f4f0ced9ff25a3930e34e10..4c21f68dc2cae5b4c63302f55d6067f5a4bb8fcd 100644
--- a/test/test_pyarc_run_tutorial.py
+++ b/test/test_pyarc_run_tutorial.py
@@ -1,6 +1,6 @@
 #!/usr/bin/python
 """TestPyARCRunSamples"""
-import os,sys
+import os, sys
 # MAKE SURE THE MODULE IS IN THE PATH
 sys.path.insert(0, os.path.dirname(__file__)+"/..")
 # standard imports
@@ -90,12 +90,12 @@ class TestPyARCRunSample(unittest.TestCase):
 #                for key2 in this.user_object.results_keff_mcc3.keys():
 #                    print key2, this.user_object.results_keff_mcc3[key2]
                 for key, result in mcc3_results:
-                    self.assertEqual(this.user_object.results_keff_mcc3[key], result)
+                    self.assertAlmostEqual(this.user_object.results_keff_mcc3[key], result, places=4)
 
             if 'dif3d' in exp_results:
                 dif3d_results = exp_results['dif3d']
-                for key2 in this.user_object.results_keff_dif3d.keys():
-                    print key2, this.user_object.results_keff_dif3d[key2]
+#                for key2 in this.user_object.results_keff_dif3d.keys():
+#                    print key2, this.user_object.results_keff_dif3d[key2]
                 for key, result in dif3d_results:
                     self.assertAlmostEqual(this.user_object.results_keff_dif3d[key], result, places=4)
 
@@ -118,6 +118,13 @@ class TestPyARCRunSample(unittest.TestCase):
                 for key, result in persent_results:
                     self.assertAlmostEqual(this.user_object.results_kpert_persent[key], result, places=4)
 
+            if 'gamsor' in exp_results:
+                gamsor_results = exp_results['gamsor']
+#                for key2 in this.user_object.results_power_gamsor.keys():
+#                    print (key2, this.user_object.results_power_gamsor[key2])
+                for key, result in gamsor_results:
+                    self.assertAlmostEqual(this.user_object.results_power_gamsor[key], result, places=4)
+
         finally:
             # always cleanup output directories
             if cleanup:
@@ -201,6 +208,17 @@ class TestPyARCRunSample(unittest.TestCase):
 
         self.run_ABTR_tutorial(6, input_file, results, description)
 
+    def test_PyARC_run_Sample7_ABTR(self):
+        """ Run Sample 7 """
+        results = { 'mcc3' : [(('GAMMA', 0, 1, 'A', 1), 1.575230)], 'gamsor' : [(0, 8.391650e+07)]}
+
+        input_file = os.path.dirname(os.path.abspath(__file__))
+        input_file += '/../tutorial/Sample_7_ABTR_GAMSOR/ABTR_Tutorial_Sample7.son'
+
+        description = 'GAMSOR'
+
+        self.run_ABTR_tutorial(7, input_file, results, description)
+
     def test_PyARC_run_Sample9_ABTR(self):
         """ Run Sample 9 """
         results = { 'dif3d' : [(730, 0.974490)], 'persent' : [('A', -0.00235458863073),('G', -0.00794416863647),('O', -0.157597038079),('C', -0.000261448),('F', -0.00507143),('T', -0.000549869),('V', -0.120461),('D', -0.00241777),('Q', -0.00128873)]}
@@ -245,7 +263,7 @@ class TestPyARCRunSample(unittest.TestCase):
         input_file = os.path.dirname(os.path.abspath(__file__))
         input_file += '/../tutorial/Sample_15_ABTR_PROTEUS_Gamma/ABTR_Tutorial_Sample15.son'
 
-        description = 'PROTEUS-Nodal Gamma calculaiton'
+        description = 'PROTEUS-Nodal Gamma calculation'
 
         self.run_ABTR_tutorial(15, input_file, results, description)
 
diff --git a/tutorial/Sample_7_ABTR_GAMSOR/ABTR_Tutorial_Sample4.isotxs b/tutorial/Sample_7_ABTR_GAMSOR/ABTR_Tutorial_Sample4.isotxs
new file mode 100644
index 0000000000000000000000000000000000000000..4845336d263e5d0b21bbb4daaa740bf52e17e8fc
Binary files /dev/null and b/tutorial/Sample_7_ABTR_GAMSOR/ABTR_Tutorial_Sample4.isotxs differ
diff --git a/tutorial/Sample_7_ABTR_GAMSOR/ABTR_Tutorial_Sample7.son b/tutorial/Sample_7_ABTR_GAMSOR/ABTR_Tutorial_Sample7.son
new file mode 100644
index 0000000000000000000000000000000000000000..d9b70ba480cecd58f99bc3f53e9751d9511f695c
--- /dev/null
+++ b/tutorial/Sample_7_ABTR_GAMSOR/ABTR_Tutorial_Sample7.son
@@ -0,0 +1,585 @@
+=arc
+
+geometry{
+    materials{
+        material ( fuel_mat_1 ) {
+            temp    = 900           % K
+            wdensity = 11.3726      % 15.77 * 0.75 / 1.04 (account for 75% smeared density and 4% axial swelling)
+            afracs{
+                afrac ( U235  )  = 9.9797E-04
+                afrac ( U236  )  = 7.9499E-05
+                afrac ( U238  )  = 6.4448E-01
+                afrac ( np237 )  = 7.1247E-04
+                afrac ( pu238 )  = 3.0546E-04
+                afrac ( pu239 )  = 1.1040E-01
+                afrac ( pu240 )  = 1.4807E-02
+                afrac ( pu241 )  = 1.5970E-03
+                afrac ( pu242 )  = 7.0685E-04
+                afrac ( am241  ) = 7.3957E-04
+                afrac ( am242m  ) = 1.9382E-05
+                afrac ( am243  ) = 1.5442E-04
+                afrac ( cm244  ) = 3.8446E-05
+                afrac ( zr90  )  = 1.1740E-01
+                afrac ( zr91  )  = 2.5320E-02
+                afrac ( zr92  )  = 3.8282E-02
+                afrac ( zr94  )  = 3.7968E-02
+                afrac ( zr96  )  = 5.9892E-03
+            }
+        }
+        material ( fuel_mat_2 ) {
+            temp    = 900           % K
+            wdensity = 11.3726      % 15.77 * 0.75 / 1.04 (account for 75% smeared density and 4% axial swelling)
+            afracs{
+                afrac ( U235  )  = 9.4779E-04
+                afrac ( U236  )  = 7.5502E-05
+                afrac ( U238  )  = 6.1208E-01
+                afrac ( np237 )  = 6.7665E-04
+                afrac ( pu238 )  = 3.8322E-04
+                afrac ( pu239 )  = 1.3850E-01
+                afrac ( pu240 )  = 1.8577E-02
+                afrac ( pu241 )  = 2.0036E-03
+                afrac ( pu242 )  = 8.8679E-04
+                afrac ( am241  ) = 7.0239E-04
+                afrac ( am242m  ) = 1.8408E-05
+                afrac ( am243  ) = 1.4665E-04
+                afrac ( cm244  ) = 3.6513E-05
+                afrac ( zr90  )  = 1.1740E-01
+                afrac ( zr91  )  = 2.5320E-02
+                afrac ( zr92  )  = 3.8282E-02
+                afrac ( zr94  )  = 3.7968E-02
+                afrac ( zr96  )  = 5.9892E-03
+            }
+        }
+
+        material ( fuel_mat_3 ) {
+            temp    = 900          % K
+            wdensity = 11.3726     % 15.77 * 0.75 / 1.04 (account for 75% smeared density and 4% axaial swelling)
+            afracs{
+                afrac ( U235  )  = 9.7169E-04
+                afrac ( U236  )  = 7.7406E-05
+                afrac ( U238  )  = 6.2751E-01
+                afrac ( np237 )  = 6.9371E-04
+                afrac ( pu238 )  = 3.4619E-04
+                afrac ( pu239 )  = 1.2512E-01
+                afrac ( pu240 )  = 1.6782E-02
+                afrac ( pu241 )  = 1.8100E-03
+                afrac ( pu242 )  = 8.0110E-04
+                afrac ( am241  ) = 7.2010E-04
+                afrac ( am242m  ) = 1.8872E-05
+                afrac ( am243  ) = 1.5035E-04
+                afrac ( cm244  ) = 3.7434E-05
+                afrac ( zr90  )  = 1.1740E-01
+                afrac ( zr91  )  = 2.5320E-02
+                afrac ( zr92  )  = 3.8282E-02
+                afrac ( zr94  )  = 3.7968E-02
+                afrac ( zr96  )  = 5.9892E-03
+            }
+        }
+        material ( sodium ) {
+            temp    = 700          % K
+            wdens{
+                 wden ( na23 ) = 0.850  % g/cc
+            }
+        }
+        material ( ht9 ) {
+            temp    = 700
+            wdensity= 7.648
+            afracs{
+                 afrac ( FE54  ) = 5.0024E-02  % atom/barn-cm
+                 afrac ( FE56  ) = 7.8525E-01
+                 afrac ( FE57  ) = 1.8135E-02
+                 afrac ( FE58  ) = 2.4130E-03
+                 afrac ( NI58  ) = 3.5920E-03
+                 afrac ( NI60  ) = 1.3840E-03
+                 afrac ( NI61  ) = 6.0000E-05
+                 afrac ( NI62  ) = 1.9200E-04
+                 afrac ( NI64  ) = 4.9000E-05
+                 afrac ( CR50  ) = 5.5290E-03
+                 afrac ( CR52  ) = 1.0662E-01
+                 afrac ( CR53  ) = 1.2090E-02
+                 afrac ( CR54  ) = 3.0090E-03
+                 afrac ( MN55  ) = 5.6370E-03
+                 afrac ( MO92  ) = 8.9300E-04
+                 afrac ( MO94  ) = 5.5600E-04
+                 afrac ( MO95  ) = 9.5800E-04
+                 afrac ( MO96  ) = 1.0030E-03
+                 afrac ( MO97  ) = 5.7500E-04
+                 afrac ( MO98  ) = 1.4520E-03
+                 afrac ( MO100 ) = 5.7900E-04
+            }
+        }
+        material ( shield_b4c ) {
+            temp    = 700
+            wdensity= 2.0412 % 2.52*0.81 (accounts for 81% smeared density)
+            afracs{
+                 afrac ( b10 ) = 1.60E-01  % atom/barn-cm
+                 afrac ( b11 ) = 6.40E-01  % atom/barn-cm
+                 afrac ( c   ) = 2.00E-01  % atom/barn-cm
+            }
+        }
+        material ( CRSR_b4c ) {
+            temp    = 700
+            wdensity= 2.142 % 2.52*0.85 (accounts for 85% smeared density)
+            afracs{
+                 afrac ( b10 ) = 1.60E-01  % atom/barn-cm
+                 afrac ( b11 ) = 6.40E-01  % atom/barn-cm
+                 afrac ( c   ) = 2.00E-01  % atom/barn-cm
+            }
+        }
+        material ( void ) {
+            temp    = 700
+            adens{
+                 aden ( he4 ) = 1.0e-10  % atom/barn-cm
+            }
+        }
+    }
+
+    blends{
+        blend ( radial_reflector ) {
+             volf ( sodium ) = 0.1573
+             volf ( ht9 )    = 0.8427
+        }
+        blend ( lower_reflector ) {
+             volf ( sodium ) = 0.3208
+             volf ( ht9 )    = 0.6792
+        }
+        blend ( upper_gasplenum ) {
+             volf ( sodium ) = 0.3208
+             volf ( ht9 )    = 0.2318
+             volf ( void )   = 0.4474
+        }
+        blend ( upper_naplenum ) {
+             volf ( sodium ) = 0.7682
+             volf ( ht9 )    = 0.2318
+        }
+        blend ( radial_shielding ) {
+             volf ( ht9 )    = 0.3041
+             volf ( sodium ) = 0.1730
+             volf ( shield_b4c ) = 0.5229
+        }
+        blend ( control_empty ) {
+             volf ( ht9 )    = 0.0783
+             volf ( sodium ) = 0.9217
+        }
+    }
+    surfaces{
+        plane ( z0 ) { z = 0 }
+        plane ( zLowCore ) { z = 0.6 }
+        plane ( zLowCore_CR ) { z = 1.4 }
+        plane ( zTopDF ) { z = 1.4 }
+        plane ( zTopDF_CR ) { z = 2.6 }
+        plane ( zTopNaGP ) { z = 1.6 }
+        plane ( zTopGP   ) { z = 2.6 }
+        hexagon ( sub_assembly ){ orientation = y normal = z pitch = 0.14598 }        % assem to assem distance including inter-assem gap
+        hexagon ( pin_DF_pitch ){ orientation = x normal = z pitch = 0.00908 }        % assem to assem distance including inter-assem gap
+        hexagon ( pin_CR_pitch ){ orientation = x normal = z pitch = 0.01243 }        % assem to assem distance including inter-assem gap
+        hexagon ( outer_duct_to_duct ){ orientation = y normal = z pitch = 0.14198  } % assem duct to duct outer distance
+        hexagon ( inner_duct_to_duct ){ orientation = y normal = z pitch = 0.13598  } % assem inner duct to duct distance
+        cylinder ( cladding_outer ) { axis = z radius = 0.004 }                       % fuel pellet outer diameter
+        cylinder ( cladding_outer_reflector ) { axis = z radius = 0.007025 }          % fuel pellet outer diameter
+        cylinder ( cladding_inner ) { axis = z radius = 0.00348 }                     % fuel pellet outer cladding diameter - clad thickness
+        cylinder ( cladding_outer_CR ) { axis = z radius = 0.00555 }                  % CR clad outer diameter
+        cylinder ( cladding_inner_CR ) { axis = z radius = 0.00485 }                  % CR clad inner diameter
+        hexagon ( outer_duct_to_duct_CR ){ orientation = y normal = z  pitch = 0.12798 }  % meters
+        hexagon ( inner_duct_to_duct_CR ){ orientation = y normal = z  pitch = 0.12198 }  % meters
+    }
+    reactor{
+         lower_axial_surf  = z0
+         lower_boundary_condition = extrapolated
+
+         upper_axial_surf  = zTopGP
+         upper_boundary_condition = extrapolated
+
+        reactor_hex_lattice {
+            pitch=sub_assembly
+            num_ring      = 9
+            fill          = [ control_rod fuel_1 fuel_1 fuel_1 fuel_2 fuel_2 reflector reflector shielding ]
+            replace{ ring=3 index=2  name=control_rod }
+            replace{ ring=3 index=4  name=fuel_3 }
+            replace{ ring=3 index=6  name=control_rod }
+            replace{ ring=3 index=8  name=fuel_3 }
+            replace{ ring=3 index=10 name=control_rod }
+            replace{ ring=3 index=12 name=fuel_3 }
+
+            replace{ ring=4 index=1  name=fuel_3 }
+            replace{ ring=4 index=4  name=reflector }
+            replace{ ring=4 index=7  name=fuel_3 }
+            replace{ ring=4 index=10 name=reflector }
+            replace{ ring=4 index=13 name=fuel_3 }
+            replace{ ring=4 index=16 name=reflector }
+
+            replace{ ring=5 index=3 name=control_rod }
+            replace{ ring=5 index=7 name=control_rod }
+            replace{ ring=5 index=11 name=control_rod }
+            replace{ ring=5 index=15 name=control_rod }
+            replace{ ring=5 index=19 name=control_rod }
+            replace{ ring=5 index=23 name=control_rod }
+
+            replace{ ring=6 index=1 name=reflector }
+            replace{ ring=6 index=2 name=reflector }
+            replace{ ring=6 index=5 name=reflector }
+            replace{ ring=6 index=6 name=reflector }
+            replace{ ring=6 index=7 name=reflector }
+            replace{ ring=6 index=10 name=reflector }
+            replace{ ring=6 index=11 name=reflector }
+            replace{ ring=6 index=12 name=reflector }
+            replace{ ring=6 index=15 name=reflector }
+            replace{ ring=6 index=16 name=reflector }
+            replace{ ring=6 index=17 name=reflector }
+            replace{ ring=6 index=20 name=reflector }
+            replace{ ring=6 index=21 name=reflector }
+            replace{ ring=6 index=22 name=reflector }
+            replace{ ring=6 index=25 name=reflector }
+            replace{ ring=6 index=26 name=reflector }
+            replace{ ring=6 index=27 name=reflector }
+            replace{ ring=6 index=30 name=reflector }
+
+            replace{ ring=8 index=1 name=shielding }
+            replace{ ring=8 index=2 name=shielding }
+            replace{ ring=8 index=7 name=shielding }
+            replace{ ring=8 index=8 name=shielding }
+            replace{ ring=8 index=9 name=shielding }
+            replace{ ring=8 index=14 name=shielding }
+            replace{ ring=8 index=15 name=shielding }
+            replace{ ring=8 index=16 name=shielding }
+            replace{ ring=8 index=21 name=shielding }
+            replace{ ring=8 index=22 name=shielding }
+            replace{ ring=8 index=23 name=shielding }
+            replace{ ring=8 index=28 name=shielding }
+            replace{ ring=8 index=29 name=shielding }
+            replace{ ring=8 index=30 name=shielding }
+            replace{ ring=8 index=35 name=shielding }
+            replace{ ring=8 index=36 name=shielding }
+            replace{ ring=8 index=37 name=shielding }
+            replace{ ring=8 index=42 name=shielding }
+
+            replace{ ring=9 index=1 name=null }
+            replace{ ring=9 index=2 name=null }
+            replace{ ring=9 index=8 name=null }
+            replace{ ring=9 index=9 name=null }
+            replace{ ring=9 index=10 name=null }
+            replace{ ring=9 index=16 name=null }
+            replace{ ring=9 index=17 name=null }
+            replace{ ring=9 index=18 name=null }
+            replace{ ring=9 index=24 name=null }
+            replace{ ring=9 index=25 name=null }
+            replace{ ring=9 index=26 name=null }
+            replace{ ring=9 index=32 name=null }
+            replace{ ring=9 index=33 name=null }
+            replace{ ring=9 index=34 name=null }
+            replace{ ring=9 index=40 name=null }
+            replace{ ring=9 index=41 name=null }
+            replace{ ring=9 index=42 name=null }
+            replace{ ring=9 index=48 name=null }
+        }
+
+
+        assembly ( fuel_1 ) {
+            sub_assembly ( lower_refl_1 ) {
+                lower_axial_surf = z0
+                upper_axial_surf = zLowCore
+                material = lower_reflector
+            }
+            sub_assembly ( fuel_region_1 ) {
+                lower_axial_surf = zLowCore
+                upper_axial_surf = zTopDF
+                hex_lattice {
+                    pitch         = pin_DF_pitch  % lattice pitch in meters
+                    num_ring      = 9
+                    outer         = sodium
+                    fill          = [ fuel_pin fuel_pin fuel_pin fuel_pin fuel_pin fuel_pin fuel_pin fuel_pin fuel_pin]
+                    pin ( fuel_pin ) {
+                         sub_pin {
+                             material   = fuel_mat_1
+                             outer_surf = cladding_inner  % cylinder name
+                         }
+                        sub_pin {
+                             material   = ht9
+                             inner_surf = cladding_inner
+                             outer_surf = cladding_outer  % cylinder name
+                         }
+                         wire_wrap{
+                             diameter = 0.00103  % meters
+                             path     = 0.2032  % meters
+                             material = ht9
+                         }
+                    }
+                }
+                radial_region {
+                    material   = ht9
+                    inner_surf = inner_duct_to_duct  % surface name
+                    outer_surf = outer_duct_to_duct
+                }
+                radial_region {
+                    material   = sodium
+                    inner_surf = outer_duct_to_duct  % surface name
+                    outer_surf = sub_assembly
+                }
+            }
+            sub_assembly ( na_plenum_1 ) {
+                lower_axial_surf = zTopDF
+                upper_axial_surf = zTopNaGP
+                material = upper_naplenum
+            }
+            sub_assembly ( gas_plenum_1 ) {
+                lower_axial_surf = zTopNaGP
+                upper_axial_surf = zTopGP
+                material = upper_gasplenum
+            }
+        }
+        assembly ( fuel_2 ) {
+            sub_assembly ( lower_refl_2 ) {
+                lower_axial_surf = z0
+                upper_axial_surf = zLowCore
+                material = lower_reflector
+            }
+            sub_assembly ( fuel_region_2 ) {
+                lower_axial_surf = zLowCore
+                upper_axial_surf = zTopDF
+                hex_lattice {
+                    pitch         = pin_DF_pitch  % lattice pitch in meters
+                    num_ring      = 9
+                    outer         = sodium
+                    fill          = [ fuel_pin fuel_pin fuel_pin fuel_pin fuel_pin fuel_pin fuel_pin fuel_pin fuel_pin]
+                    pin ( fuel_pin ) {
+                         sub_pin {
+                             material   = fuel_mat_2
+                             outer_surf = cladding_inner  % cylinder name
+                         }
+                        sub_pin {
+                             material   = ht9
+                             inner_surf = cladding_inner
+                             outer_surf = cladding_outer  % cylinder name
+                         }
+                         wire_wrap{
+                             diameter = 0.00103  % meters
+                             path     = 0.2032  % meters
+                             material = ht9
+                         }
+                    }
+                }
+                radial_region {
+                    material   = ht9
+                    inner_surf = inner_duct_to_duct  % surface name
+                    outer_surf = outer_duct_to_duct
+                }
+                radial_region {
+                    material   = sodium
+                    inner_surf = outer_duct_to_duct  % surface name
+                    outer_surf = sub_assembly
+                }
+            }
+            sub_assembly ( na_plenum_2 ) {
+                lower_axial_surf = zTopDF
+                upper_axial_surf = zTopNaGP
+                material = upper_naplenum
+            }
+            sub_assembly ( gas_plenum_2 ) {
+                lower_axial_surf = zTopNaGP
+                upper_axial_surf = zTopGP
+                material = upper_gasplenum
+            }
+        }
+        assembly ( fuel_3 ) {
+            sub_assembly ( lower_refl_3 ) {
+                lower_axial_surf = z0
+                upper_axial_surf = zLowCore
+                material = lower_reflector
+            }
+            sub_assembly ( fuel_region_3 ) {
+                lower_axial_surf = zLowCore
+                upper_axial_surf = zTopDF
+                hex_lattice {
+                    pitch         = pin_DF_pitch  % lattice pitch in meters
+                    num_ring      = 9
+                    outer         = sodium
+                    fill          = [ fuel_pin fuel_pin fuel_pin fuel_pin fuel_pin fuel_pin fuel_pin fuel_pin fuel_pin]
+                    pin ( fuel_pin ) {
+                         sub_pin {
+                             material   = fuel_mat_3
+                             outer_surf = cladding_inner  % cylinder name
+                         }
+                        sub_pin {
+                             material   = ht9
+                             inner_surf = cladding_inner
+                             outer_surf = cladding_outer  % cylinder name
+                         }
+                         wire_wrap{
+                             diameter = 0.00103  % meters
+                             path     = 0.2032  % meters
+                             material = ht9
+                         }
+                    }
+                }
+                radial_region {
+                    material   = ht9
+                    inner_surf = inner_duct_to_duct  % surface name
+                    outer_surf = outer_duct_to_duct
+                }
+                radial_region {
+                    material   = sodium
+                    inner_surf = outer_duct_to_duct  % surface name
+                    outer_surf = sub_assembly
+                }
+            }
+            sub_assembly ( na_plenum_3 ) {
+                lower_axial_surf = zTopDF
+                upper_axial_surf = zTopNaGP
+                material = upper_naplenum
+            }
+            sub_assembly ( gas_plenum_3 ) {
+                lower_axial_surf = zTopNaGP
+                upper_axial_surf = zTopGP
+                material = upper_gasplenum
+            }
+        }
+        assembly ( control_rod ) {
+            sub_assembly ( CR_empty ) {
+                lower_axial_surf = z0
+                upper_axial_surf = zLowCore_CR
+                material = control_empty
+            }
+
+            sub_assembly ( CR_region ) {
+                lower_axial_surf = zLowCore_CR
+                upper_axial_surf = zTopGP
+                hex_lattice {
+                    pitch         = pin_CR_pitch  % lattice pitch in meters
+                    num_ring      = 6
+                    outer         = sodium
+                    fill          = [ CR_pin CR_pin CR_pin CR_pin CR_pin CR_pin ]
+                    pin ( CR_pin ) {
+                         sub_pin {
+                             material   = CRSR_b4c
+                             outer_surf = cladding_inner_CR  % cylinder name
+                         }
+                         sub_pin {
+                             material   = ht9
+                             inner_surf = cladding_inner_CR  % cylinder name
+                             outer_surf = cladding_outer_CR  % cylinder name
+                         }
+                         wire_wrap{
+                             diameter = 0.00133  % meters
+                             path     = 0.2032   % meters
+                             material = ht9
+                         }
+                    }
+                }
+                radial_region {
+                    material   = ht9
+                    inner_surf = inner_duct_to_duct_CR  % surface name
+                    outer_surf = outer_duct_to_duct_CR
+                }
+                radial_region {
+                    material   = sodium
+                    inner_surf = outer_duct_to_duct_CR  % surface name
+                    outer_surf = inner_duct_to_duct
+                }
+                radial_region {
+                    material   = ht9
+                    inner_surf = inner_duct_to_duct  % surface name
+                    outer_surf = outer_duct_to_duct
+                }
+                radial_region {
+                    material   = sodium
+                    inner_surf = outer_duct_to_duct  % surface name
+                    outer_surf = sub_assembly
+                }
+            }
+        }
+
+        assembly ( reflector ) {
+            sub_assembly ( refl_region ) {
+                lower_axial_surf = z0
+                upper_axial_surf = zTopGP
+                material = radial_reflector
+            }
+        }
+
+        % updated, the dimension has not been updated yet! the dimensions are from fuel assembly design
+        assembly ( shielding ) {
+            sub_assembly ( shield_region ) {
+                lower_axial_surf = z0
+                upper_axial_surf = zTopGP
+                material = radial_shielding
+            }
+        }
+    }
+}
+calculations{
+    mcc3{
+       num_cpu_max = 2
+       xslib            = "endf7.0"
+       egroupname       = ANL33
+       scattering_order = 3
+       lumped_element_text_file( MoFP ) = "Mo.lumped.son"
+       cell( A ){
+           associated_sub_assembly     = fuel_region_1
+           buckling_search = false
+       }
+       cell( B ) {
+           associated_sub_assembly     = fuel_region_2
+           buckling_search = false
+       }
+       cell( C ) {
+           associated_sub_assembly     = fuel_region_3
+           buckling_search = false
+       }
+       cell( D ){
+           associated_sub_assembly     = gas_plenum_1
+           other_sub_assembly_using_XS = [ gas_plenum_2 gas_plenum_3 ]
+           external_source = A
+       }
+       cell( E ){
+           associated_sub_assembly     = lower_refl_1
+           other_sub_assembly_using_XS = [ lower_refl_2 lower_refl_3 ]
+           buckling_search = false
+           external_source = A
+      }
+       cell( F ){
+           associated_sub_assembly     = refl_region
+           buckling_search = false
+           external_source = A        
+      }
+       cell( G ){
+           associated_sub_assembly     = shield_region
+           buckling_search = false
+           external_source = A
+      }
+       cell( H ){
+           associated_sub_assembly     = CR_region
+           buckling_search = false
+           external_source = A
+      }
+       cell( I ){
+           associated_sub_assembly     = CR_empty
+           buckling_search = false
+           external_source = A
+      }
+       cell( J ){
+           associated_sub_assembly     = na_plenum_1
+           other_sub_assembly_using_XS = [ na_plenum_2 na_plenum_3 ]
+           buckling_search = false
+           external_source = A
+       }
+    }
+    dif3d{
+        power                = 250.0e6    % core power in Watts
+        geometry_type        = hexagonal_third_core
+        isotxs               = "ABTR_Tutorial_Sample4.isotxs"
+        max_axial_mesh_size  = 0.05   % max. distance between each axial nodes in m - for Hex-z geometries
+        variant_options {
+            polynomial_approx_source      = 2
+            polynomial_approx_fluxes      = 4
+            polynomial_approx_leakages    = 1
+            angular_approx                = 3
+            anisotropic_scattering_approx = 1
+        }
+        run_dif3d = false
+        gamsor {
+          egroupname = ANL21G
+          depletion_steps = [ 0 ]
+        }
+    }
+}
+end
\ No newline at end of file
diff --git a/tutorial/Sample_7_ABTR_GAMSOR/ABTR_Tutorial_Sample7.summary b/tutorial/Sample_7_ABTR_GAMSOR/ABTR_Tutorial_Sample7.summary
new file mode 100644
index 0000000000000000000000000000000000000000..4bd8012675bfa17e1f749053726330cdcba89f14
--- /dev/null
+++ b/tutorial/Sample_7_ABTR_GAMSOR/ABTR_Tutorial_Sample7.summary
@@ -0,0 +1,116 @@
+                 ************************************
+                 *      PYARC Version 1.4.0         *
+                 * Released date -   Not released   *
+                 *     Contact: nstauff@anl.gov     *
+                 ************************************
+******************************** MCC3 Summary for perturbation GAMMA at DAYS = 0 ********************************
+MCC3 CALCULATION FOR PERT 'GAMMA' AT TIMESTEP = 0, STEP '1', ID 'A' IN REGION '1'      K-INFINITE =   1.575240  
+MCC3 CALCULATION FOR PERT 'GAMMA' AT TIMESTEP = 0, STEP '1', ID 'B' IN REGION '1'      K-INFINITE =   1.757360  
+MCC3 CALCULATION FOR PERT 'GAMMA' AT TIMESTEP = 0, STEP '1', ID 'C' IN REGION '1'      K-INFINITE =   1.675380  
+MCC3 CALCULATION FOR PERT 'GAMMA' AT TIMESTEP = 0, STEP '1', ID 'D' IN REGION '1'      No Fission  
+MCC3 CALCULATION FOR PERT 'GAMMA' AT TIMESTEP = 0, STEP '1', ID 'E' IN REGION '1'      No Fission  
+MCC3 CALCULATION FOR PERT 'GAMMA' AT TIMESTEP = 0, STEP '1', ID 'F' IN REGION '1'      No Fission  
+MCC3 CALCULATION FOR PERT 'GAMMA' AT TIMESTEP = 0, STEP '1', ID 'G' IN REGION '1'      No Fission  
+MCC3 CALCULATION FOR PERT 'GAMMA' AT TIMESTEP = 0, STEP '1', ID 'H' IN REGION '1'      No Fission  
+MCC3 CALCULATION FOR PERT 'GAMMA' AT TIMESTEP = 0, STEP '1', ID 'I' IN REGION '1'      No Fission  
+MCC3 CALCULATION FOR PERT 'GAMMA' AT TIMESTEP = 0, STEP '1', ID 'J' IN REGION '1'      No Fission  
+************************ DIF3D/GAMSOR SUMMARY for Time-Step 0 ***************************
+DAY=    0.00 
+                   ***** WARNING - THE FOLLOWING ARE LISTS OF ISOTOPES FOR WHICH THERE IS NO GAMMA PRODUCTION *****
+              ISOTOPES     ZONES CONTAINING THE ISOTOPE
+                 R4200A    R10001  R10101  R20001  R20201  R30101  R30201  R30401  R30501
+                 R4200B    R40001  R40101  R40301  R40401  R40501  R40701  R50201  R50301  R50701  R50801
+                 R4200C    R20301  R30001
+                 R0204D    R10003  R10103  R20003  R20203  R20303  R30003  R30103  R30203  R30403  R30503
+                           R40003  R40103  R40303  R40403  R40503  R40703  R50203  R50303  R50703  R50803
+                 R4200D    R10003  R10103  R20003  R20203  R20303  R30003  R30103  R30203  R30403  R30503
+                           R40003  R40103  R40303  R40403  R40503  R40703  R50203  R50303  R50703  R50803
+                 R4200E    R10000  R10100  R20000  R20200  R20300  R30000  R30100  R30200  R30400  R30500
+                           R40000  R40100  R40300  R40400  R40500  R40700  R50200  R50300  R50700  R50800
+                 R4200F    R30300  R50000  R50100  R50400  R50500  R50600  R50900  R60000  R60100  R60200
+                           R60300  R60400  R60500  R60600  R60700  R60800  R60900  R60A00  R60B00  R70200
+                           R70300  R70400  R70500  R70900  R70A00  R70B00  R70C00
+                 R4200G    R70000  R70100  R70600  R70700  R70800  R70D00  R80200  R80300  R80400  R80500
+                           R80600  R80A00  R80B00  R80C00  R80D00  R80E00
+                 R4200H    R00001  R20101  R40201  R40601
+                 R4200I    R00000  R20100  R40200  R40600
+                 R4200J    R10002  R10102  R20002  R20202  R20302  R30002  R30102  R30202  R30402  R30502
+                           R40002  R40102  R40302  R40402  R40502  R40702  R50202  R50302  R50702  R50802
+TOTAL GAMMA + NEUTRON POWER [MW] = 8.391650e+07
+        Assembly|      Ring|     Index|Int Neutr Power|Int Gamma Power|Int Total Power
+              ID|         #|         #|            [W]|            [W]|            [W]
+ ---------------|----------|----------|---------------|---------------|---------------|
+            R000|         1|         1|      2.679e+04|      2.045e+04|      4.723e+04| 
+            R100|         2|         1|      4.681e+06|      5.224e+05|      5.204e+06| 
+            R101|         2|         2|      4.664e+06|      5.207e+05|      5.185e+06| 
+            R200|         3|         1|      4.363e+06|      4.901e+05|      4.853e+06| 
+            R201|         3|         2|      7.517e+04|      5.593e+04|      1.311e+05| 
+            R202|         3|         3|      4.194e+06|      4.643e+05|      4.659e+06| 
+            R203|         3|         4|      5.032e+06|      5.381e+05|      5.570e+06| 
+            R300|         4|         1|      4.135e+06|      4.478e+05|      4.583e+06| 
+            R301|         4|         2|      3.808e+06|      4.283e+05|      4.236e+06| 
+            R302|         4|         3|      3.667e+06|      4.057e+05|      4.073e+06| 
+            R303|         4|         4|      1.767e+04|      1.337e+05|      1.513e+05| 
+            R304|         4|         5|      3.760e+06|      4.180e+05|      4.178e+06| 
+            R305|         4|         6|      3.909e+06|      4.416e+05|      4.351e+06| 
+            R400|         5|         1|      3.266e+06|      3.303e+05|      3.597e+06| 
+            R401|         5|         2|      3.698e+06|      3.811e+05|      4.079e+06| 
+            R402|         5|         3|      5.826e+04|      4.300e+04|      1.013e+05| 
+            R403|         5|         4|      3.488e+06|      3.535e+05|      3.842e+06| 
+            R404|         5|         5|      3.019e+06|      2.995e+05|      3.318e+06| 
+            R405|         5|         6|      3.537e+06|      3.579e+05|      3.894e+06| 
+            R406|         5|         7|      6.115e+04|      4.395e+04|      1.051e+05| 
+            R407|         5|         8|      3.749e+06|      3.858e+05|      4.135e+06| 
+            R500|         6|         1|      5.682e+03|      4.868e+04|      5.437e+04| 
+            R501|         6|         2|      8.963e+03|      7.335e+04|      8.231e+04| 
+            R502|         6|         3|      2.751e+06|      2.788e+05|      3.030e+06| 
+            R503|         6|         4|      2.699e+06|      2.740e+05|      2.973e+06| 
+            R504|         6|         5|      8.225e+03|      7.003e+04|      7.825e+04| 
+            R505|         6|         6|      5.153e+03|      4.641e+04|      5.157e+04| 
+            R506|         6|         7|      8.325e+03|      7.059e+04|      7.892e+04| 
+            R507|         6|         8|      2.745e+06|      2.783e+05|      3.024e+06| 
+            R508|         6|         9|      2.798e+06|      2.831e+05|      3.081e+06| 
+            R509|         6|        10|      9.064e+03|      7.391e+04|      8.297e+04| 
+            R600|         7|         1|      1.763e+03|      1.725e+04|      1.901e+04| 
+            R601|         7|         2|      2.975e+03|      2.753e+04|      3.050e+04| 
+            R602|         7|         3|      4.630e+03|      4.143e+04|      4.606e+04| 
+            R603|         7|         4|      5.550e+03|      4.933e+04|      5.487e+04| 
+            R604|         7|         5|      4.455e+03|      4.062e+04|      4.508e+04| 
+            R605|         7|         6|      2.768e+03|      2.667e+04|      2.944e+04| 
+            R606|         7|         7|      1.629e+03|      1.660e+04|      1.823e+04| 
+            R607|         7|         8|      2.795e+03|      2.682e+04|      2.962e+04| 
+            R608|         7|         9|      4.530e+03|      4.106e+04|      4.559e+04| 
+            R609|         7|        10|      5.659e+03|      5.000e+04|      5.566e+04| 
+            R60A|         7|        11|      4.704e+03|      4.187e+04|      4.657e+04| 
+            R60B|         7|        12|      3.002e+03|      2.768e+04|      3.068e+04| 
+            R700|         8|         1|      1.623e+04|      3.276e+03|      1.950e+04| 
+            R701|         8|         2|      4.479e+04|      7.500e+03|      5.229e+04| 
+            R702|         8|         3|      1.434e+03|      1.447e+04|      1.591e+04| 
+            R703|         8|         4|      1.869e+03|      1.839e+04|      2.026e+04| 
+            R704|         8|         5|      1.841e+03|      1.825e+04|      2.009e+04| 
+            R705|         8|         6|      1.370e+03|      1.412e+04|      1.549e+04| 
+            R706|         8|         7|      4.280e+04|      7.204e+03|      5.001e+04| 
+            R707|         8|         8|      1.533e+04|      3.106e+03|      1.843e+04| 
+            R708|         8|         9|      4.307e+04|      7.248e+03|      5.032e+04| 
+            R709|         8|        10|      1.389e+03|      1.425e+04|      1.564e+04| 
+            R70A|         8|        11|      1.874e+03|      1.846e+04|      2.034e+04| 
+            R70B|         8|        12|      1.902e+03|      1.860e+04|      2.050e+04| 
+            R70C|         8|        13|      1.453e+03|      1.460e+04|      1.605e+04| 
+            R70D|         8|        14|      4.506e+04|      7.544e+03|      5.260e+04| 
+            R802|         9|         3|      1.332e+04|      2.680e+03|      1.600e+04| 
+            R803|         9|         4|      2.557e+04|      4.506e+03|      3.008e+04| 
+            R804|         9|         5|      2.813e+04|      5.001e+03|      3.313e+04| 
+            R805|         9|         6|      2.503e+04|      4.423e+03|      2.945e+04| 
+            R806|         9|         7|      1.283e+04|      2.585e+03|      1.542e+04| 
+            R80A|         9|        11|      1.298e+04|      2.610e+03|      1.559e+04| 
+            R80B|         9|        12|      2.537e+04|      4.482e+03|      2.985e+04| 
+            R80C|         9|        13|      2.854e+04|      5.069e+03|      3.361e+04| 
+            R80D|         9|        14|      2.591e+04|      4.565e+03|      3.048e+04| 
+            R80E|         9|        15|      1.347e+04|      2.705e+03|      1.618e+04| 
+************************************ ERROR MESSAGES *************************************
+*********************************** WARNING MESSAGES ************************************
+WARNING: Homogenization of region 'sub_assembly(fuel_region_1)' is performed, and undefined region outside of pin are filled up with 'outer' material
+WARNING: Homogenization of region 'sub_assembly(fuel_region_2)' is performed, and undefined region outside of pin are filled up with 'outer' material
+WARNING: Homogenization of region 'sub_assembly(fuel_region_3)' is performed, and undefined region outside of pin are filled up with 'outer' material
+WARNING: Homogenization of region 'sub_assembly(CR_region)' is performed, and undefined region outside of pin are filled up with 'outer' material
+********************************* MAIN OUTPUT FOR DAKOTA **********************************
diff --git a/tutorial/Sample_7_ABTR_GAMSOR/Mo.lumped.son b/tutorial/Sample_7_ABTR_GAMSOR/Mo.lumped.son
new file mode 100755
index 0000000000000000000000000000000000000000..4aa5b8d33c7dee14f728ea64612f22f1a4ab0244
--- /dev/null
+++ b/tutorial/Sample_7_ABTR_GAMSOR/Mo.lumped.son
@@ -0,0 +1,11 @@
+lumped_element_external_list{
+
+    afrac(MO92)  = 0.1484
+    afrac(MO94)  = 0.0925
+    afrac(MO95)  = 0.1592
+    afrac(MO96)  = 0.1668
+    afrac(MO97)  = 0.0955
+    afrac(MO98)  = 0.2413
+    afrac(MO100) = 0.0963
+
+}
diff --git a/tutorial/Sample_7_ABTR_GAMSOR/README.md b/tutorial/Sample_7_ABTR_GAMSOR/README.md
new file mode 100755
index 0000000000000000000000000000000000000000..0428af1912f91862c8b0121c989b943d9fed832e
--- /dev/null
+++ b/tutorial/Sample_7_ABTR_GAMSOR/README.md
@@ -0,0 +1,80 @@
+
+# Sample 7
+
+## Introduction
+
+This input introduces simple geometry modeling for DIF3D diffusion calculation with VARIANT neutron solver option.
+
+## Input Description
+
+The [__input__](ABTR_Tutorial_Sample7.son) displays the full input.
+
+The core geometry is similar to the one described in [__Sample1__](../Sample_1_ABTR_MCC3_DIF3DFD/ABTR_Tutorial_Sample1.son).
+
+The calculations in this sample uses dif3d/VARIANT (with similar input as in [__Sample2__](../Sample_2_ABTR_VARIANT/ABTR_Tutorial_Sample2.son)). GAMSOR is used for gamma transport calculations with the following simple input. The Gamma calculations use a 21-group energy structure. GAMSOR calculations are performed over depletion steps 0 (if REBUS depletion calculations are performed, GAMSOR can be done over as many depletion steps as necessary using `depletion_steps = [0 1 3 5 ...]`). GAMSOR requires running MC2-3 to compute the gamma cross-sections (GAMISO) and PMATRIX file that contains the photon production based cross sections and the power conversion KERMA cross sections.
+
+```javascript
+    dif3d{
+        power                = 250.0e6    % core power in Watts
+        geometry_type        = hexagonal_third_core
+        isotxs               = "ABTR_Tutorial_Sample4.isotxs"
+        max_axial_mesh_size  = 0.05   % max. distance between each axial nodes in m - for Hex-z geometries
+        variant_options {
+            polynomial_approx_source      = 2
+            polynomial_approx_fluxes      = 4
+            polynomial_approx_leakages    = 1
+            angular_approx                = 3
+            anisotropic_scattering_approx = 1
+        }
+        run_dif3d = false
+        gamsor {
+          egroupname = ANL21G
+          depletion_steps = [ 0 ]
+        }
+    }
+```
+
+## Output Description
+
+* [__summary__](ABTR_Tutorial_Sample7.summary): `ABTR_Tutorial_Sample7.summary` - summary output file with main results - similar to [__Sample_1__](../Sample_1_ABTR_MCC3_DIF3DFD/ABTR_Tutorial_Sample1.summary). The only change is with the printout of integrated neutron and gamma power per assembly:
+
+```javascript
+************************ DIF3D/GAMSOR SUMMARY for Time-Step 0 ***************************
+DAY=    0.00 
+TOTAL GAMMA + NEUTRON POWER [MW] = 8.202740e+07
+        Assembly|      Ring|     Index|Int Neutr Power|Int Gamma Power|Int Total Power
+              ID|         #|         #|            [W]|            [W]|            [W]
+ ---------------|----------|----------|---------------|---------------|---------------|
+            R000|         1|         1|      2.618e+04|      1.999e+04|      4.617e+04| 
+            R100|         2|         1|      4.576e+06|      5.106e+05|      5.086e+06| 
+...
+```
+
+* [__visit__](ABTR_Tutorial_Sample7_GAMMA_0.vtk): "ABTR_Tutorial_Sample7_GAMMA_0.vtk" - vtk file containing gamma and neutron power profiles to display with VisIts
+
+Not displayed here:
+
+* `ABTR_Tutorial_Sample7.zip` - gathers all input, output, isotxs, and summary files + `gamsor_table_0.out` that contains detailed information:
+
+```javascript
+REGION/AREA POWER TABLE FOR GAMSOR WITH TOTAL DOMAIN POWER(W) OF  8.202744E+07
+REGION REGION  NEUTRON POWER(W)  GAMMA POWER(W)    TOTAL POWER(W)   VOLUME (CC)    GEODST VOL(CC)
+     1 R00000   8.314591E+03      1.608612E+04      2.440071E+04    2.583720E+04    8.612398E+03
+     2 R00001   1.786812E+04      3.901718E+03      2.176984E+04    2.214617E+04    7.382056E+03
+     3 R10000   2.385780E+03      2.203659E+04      2.442237E+04    2.214617E+04    1.107308E+04
+...
+AREA   AREA    NEUTRON POWER(W)  GAMMA POWER(W)    TOTAL POWER(W)   VOLUME (CC)    GEODST VOL(CC)
+     1 CORE     7.304287E+07      8.984569E+06      8.202744E+07    3.550769E+06    3.182896E+06
+     2 L101E    1.647716E+04      1.542009E+05      1.706780E+05    1.107308E+05    8.858467E+04
+     3 F102A    3.227368E+07      3.405671E+06      3.567935E+07    1.476411E+05    1.181129E+05
+...
+```
+
+* `ABTR_Tutorial_Sample7.inp` - all input files concatenated
+* `ABTR_Tutorial_Sample7.out` - all output files concatenated
+* `ABTR_Tutorial_Sample7.isotxs_R_0` - Binary file of 33gp cross-sections for Reference (un-perturbed), time-step 0
+* `ABTR_Tutorial_Sample7.isotxs_GAMMA_GAMISO_0` - Binary file of 21gp gamma cross-sections for Reference (un-perturbed), time-step 0
+* `ABTR_Tutorial_Sample7.isotxs_GAMMA_ISOTXS_0` - Binary file of 33gp neutron cross-sections for Reference (un-perturbed), time-step 0
+* `ABTR_Tutorial_Sample7.isotxs_GAMMA_PMATRX_0` - Binary file that contains the neutron to gamma production based cross sections and the power conversion KERMA cross sections
+* `ABTR_Tutorial_Sample7.timeline.out` - timeline of calculation
+* `ABTR_Tutorial_Sample7.extended.summary` - extended summary file