@@ -248,11 +248,8 @@ void FlatSourceDomain::set_flux_to_flux_plus_source(
248248 double scalar_flux_rhs_bd = source_regions_.scalar_flux_rhs_bd (sr, g);
249249 double A0 =
250250 (bd_coefficients_first_order_.at (RandomRay::bd_order_))[0 ] / settings::dt;
251-
252- double sigma_t = 1.0 ;
253- if (material != MATERIAL_VOID)
254- sigma_t = sigma_t_[material * negroups_ + g];
255-
251+ // TODO: Add support for expicit void regions
252+ double sigma_t = sigma_t_[material * negroups_ + g];
256253 source_regions_.scalar_flux_new (sr, g) -=
257254 scalar_flux_rhs_bd * inverse_vbar / sigma_t ;
258255 source_regions_.scalar_flux_new (sr, g) /= 1 + A0 * inverse_vbar / sigma_t ;
@@ -1726,6 +1723,11 @@ SourceRegionHandle FlatSourceDomain::get_subdivided_source_region_handle(
17261723 }
17271724 }
17281725
1726+ if (settings::kinetic_simulation && material == MATERIAL_VOID) {
1727+ fatal_error (" Explicit void treatment for kinetic simulations "
1728+ " is not currently supported." );
1729+ }
1730+
17291731 handle.material () = material;
17301732
17311733 // Store the mesh index (if any) assigned to this source region
@@ -1935,9 +1937,8 @@ void FlatSourceDomain::compute_single_phi_prime(SourceRegionHandle& srh)
19351937 int material = srh.material ();
19361938 for (int g = 0 ; g < negroups_; g++) {
19371939 double inverse_vbar = inverse_vbar_[material * negroups_ + g];
1938- double sigma_t = 1.0 ;
1939- if (material != MATERIAL_VOID)
1940- sigma_t = sigma_t_[material * negroups_ + g];
1940+ // TODO: add support for explicit void
1941+ double sigma_t = sigma_t_[material * negroups_ + g];
19411942
19421943 double scalar_flux_time_derivative =
19431944 A0 * srh.scalar_flux_old (g) + srh.scalar_flux_rhs_bd (g);
@@ -1955,9 +1956,8 @@ void FlatSourceDomain::compute_single_T1(SourceRegionHandle& srh)
19551956 int material = srh.material ();
19561957 for (int g = 0 ; g < negroups_; g++) {
19571958 double inverse_vbar = inverse_vbar_[material * negroups_ + g];
1958- double sigma_t = 1.0 ;
1959- if (material != MATERIAL_VOID)
1960- sigma_t = sigma_t_[material * negroups_ + g];
1959+ // TODO: add support for explicit void
1960+ double sigma_t = sigma_t_[material * negroups_ + g];
19611961
19621962 // Multiply out sigma_t to correctly compute the derivative term
19631963 float source_time_derivative =
@@ -2140,12 +2140,10 @@ void FlatSourceDomain::store_time_step_quantities(bool increment_not_initialize)
21402140 source_regions_.scalar_flux_final (sr, g), increment_not_initialize,
21412141 RandomRay::bd_order_ + j);
21422142 if (RandomRay::time_method_ == RandomRayTimeMethod::PROPAGATION) {
2143- // TODO: add support for void regions
21442143 // Multiply out sigma_t to store the base source
21452144 int material = source_regions_.material (sr);
2146- double sigma_t = 1.0 ;
2147- if (material != MATERIAL_VOID)
2148- sigma_t = sigma_t_[source_regions_.material (sr) * negroups_ + g];
2145+ // TODO: add support for explicit void regions
2146+ double sigma_t = sigma_t_[source_regions_.material (sr) * negroups_ + g];
21492147 float source = source_regions_.source_final (sr, g) * sigma_t ;
21502148 add_value_to_bd_vector (source_regions_.source_bd (sr, g), source,
21512149 increment_not_initialize, RandomRay::bd_order_);
0 commit comments