| 109 | |
| 110 | [[BR]] |
| 111 | == Protections == |
| 112 | This section is about the different options that can control density, momentum, and pressure protections. |
| 113 | |
| 114 | * '''''{{{lRestartOnDensityProtections:}}}''''' The code will restart the current time step if a density protection is triggered. |
| 115 | |
| 116 | * '''''{{{lTrackDensityProtections:}}}''''' A field is added to the q-array to keep track of density protections. Each time a protection is triggered, the cell at that location will increment by 1. This can then be visualized in visit in order to view the "history" of triggered protections throughout your simulation. |
| 117 | |
| 118 | * '''''{{{iDensityProtect:}}}''''' Controls how the density is protected. |
| 119 | * {{{0 -- Use MinDensity:}}} Sets cell density to the {{{MinDensity}}}. |
| 120 | * {{{1 -- Min Nearby Density:}}} Sets cell density to the minimum density of neighboring cells. |
| 121 | * {{{2 -- Average Nearby Densities:}}} Sets cell density to average density of neighboring cells. |
| 122 | |
| 123 | * '''''{{{iMomentumProtect:}}}''''' Controls how the momentum is protected. |
| 124 | * {{{0 -- Conserve:}}} Sets cell momentum to value that keeps momentum conserved. |
| 125 | * {{{1 -- Zero:}}} Sets cell momentum to zero. |
| 126 | * {{{2 -- Average Nearby Velocities:}}} Sets cell momentum to density x average velocity of neighboring cells. |
| 127 | |
| 128 | * '''''{{{MinDensity:}}}''''' Sets a minimum density within the domain. This does not need to be a large value; the default is 10^-30^, and 10^-10^ is most common value in the data files. Be wary of using large {{{MinDensity}}} values, which can undermine conservation laws by injecting extra matter into the system. Under no circumstances should {{{MinDensity}}} ever be ''less'' than 0. |
| 129 | |
| 130 | * '''''{{{lRestartOnPressureProtections:}}}''''' The code will restart the current time step if a pressure protection is triggered. |
| 131 | |
| 132 | * '''''{{{lTrackPressureProtections:}}}''''' A field is added to the q-array to keep track of pressure protections. Each time a protection is triggered, the cell at that location will increment by 1. This can then be visualized in visit in order to view the "history" of triggered protections throughout your simulation. |
| 133 | |
| 134 | * '''''{{{iPressureProtect:}}}''''' Controls how the pressure is protected. |
| 135 | * {{{0 -- Use MinTemp:}}} Sets cell temperature to the {{{MinTemp}}}. |
| 136 | * {{{1 -- Min Nearby Pressure:}}} Sets cell pressure to the minimum pressure of neighboring cells. |
| 137 | * {{{2 -- Average Nearby Pressures:}}} Sets cell pressure to average pressure of neighboring cells. |
| 138 | * {{{3 -- Min Nearby Temp:}}} Sets cell temperature to minimum temperature of neighboring cells. |
| 139 | * {{{4 -- Average Nearby Temps:}}} Sets cell temperature to average temperature of neighboring cells. |
| 140 | |
| 141 | * '''''{{{MinTemp:}}}''''' Sets a minimum temperature within the domain. This should be set to 0.0 if there is no cooling. If there is cooling, then start by setting it to something low, in the 10^-10^ to 10^-6^ range. If this parameter is set too high, then it could wind up injecting extra thermal energy into the system. |