Chi-Tech
lbs__SteadyStateSolver.h
Go to the documentation of this file.
1/** \defgroup lbs__SteadyStateSolver lbs.SteadyStateSolver
2
3
4\ingroup LBSExecutors
5Generalized implementation of a steady state solver. This solver calls the Across-Groupset (AGS) solver for the lbs-data block.
6
7
8## Example usage:
9Create this object:
10\code
11params =
12{
13 param_name1 = value1,
14 param_name2 = value2,
15 --etc.
16}
17lbs.SteadyStateSolver.Create(params)
18\endcode
19## Required Input parameters
20\htmlonly
21
22<div style="display: block;">
23<button type="button" class="droppy2" style=
24"
25background-color: #edf0f5;
26color: #9373A5;
27cursor: pointer;
28border: none;
29text-align: left;
30outline: none;
31font-size: 15px;
32margin: 2px 2px;
33border: 2px solid #687372;
34display: block;
35width: 100%;
36vertical-align: middle;
37padding-top: 4px;
38padding-bottom: 0px;
39"
40><span class="arrow" style="padding-left: 0px;">►</span><TT><B>lbs_solver_handle</B></TT><span style="color: #c4c1c0;">&nbsp &nbsp &nbsp &nbspHandle to an existing lbs solver</span></button>
41<div class="content" style="display: none;">
42 <p><I>type=</I><span style="color: blue;"><TT>INTEGER</TT></span>. Handle to an existing lbs solver
43</p>
44</div>
45
46</div>
47\endhtmlonly
48
49## Optional Input parameters
50\htmlonly
51
52<div style="display: block;">
53<button type="button" class="droppy2" style=
54"
55background-color: #edf0f5;
56color: #9373A5;
57cursor: pointer;
58border: none;
59text-align: left;
60outline: none;
61font-size: 15px;
62margin: 2px 2px;
63border: 2px solid #687372;
64display: block;
65width: 100%;
66vertical-align: middle;
67padding-top: 4px;
68padding-bottom: 0px;
69"
70><span class="arrow" style="padding-left: 0px;">►</span><TT><B>dt</B></TT><span style="color: #c4c1c0;">&nbsp &nbsp &nbsp &nbspDesired initial timestep size</span></button>
71<div class="content" style="display: none;">
72 <p><I>type=</I><span style="color: blue;"><TT>FLOAT</TT></span>. Desired initial timestep size.
73</p>
74 <p>Default value: <TT style="color:grey">0.01(double)</TT></p>
75 <p>Allowable values: <TT>>= 1e-12(double)</TT></p>
76</div>
77
78<button type="button" class="droppy2" style=
79"
80background-color: #edf0f5;
81color: #9373A5;
82cursor: pointer;
83border: none;
84text-align: left;
85outline: none;
86font-size: 15px;
87margin: 2px 2px;
88border: 2px solid #687372;
89display: block;
90width: 100%;
91vertical-align: middle;
92padding-top: 4px;
93padding-bottom: 0px;
94"
95><span class="arrow" style="padding-left: 0px;">►</span><TT><B>end_time</B></TT><span style="color: #c4c1c0;">&nbsp &nbsp &nbsp &nbspTransient end-time if applicable</span></button>
96<div class="content" style="display: none;">
97 <p><I>type=</I><span style="color: blue;"><TT>FLOAT</TT></span>. Transient end-time if applicable.
98</p>
99 <p>Default value: <TT style="color:grey">1(double)</TT></p>
100</div>
101
102<button type="button" class="droppy2" style=
103"
104background-color: #edf0f5;
105color: #9373A5;
106cursor: pointer;
107border: none;
108text-align: left;
109outline: none;
110font-size: 15px;
111margin: 2px 2px;
112border: 2px solid #687372;
113display: block;
114width: 100%;
115vertical-align: middle;
116padding-top: 4px;
117padding-bottom: 0px;
118"
119><span class="arrow" style="padding-left: 0px;">►</span><TT><B>max_time_steps</B></TT><span style="color: #c4c1c0;">&nbsp &nbsp &nbsp &nbspMaximum number of timesteps to allow</span></button>
120<div class="content" style="display: none;">
121 <p><I>type=</I><span style="color: blue;"><TT>INTEGER</TT></span>. Maximum number of timesteps to allow. Negative values disables this.
122</p>
123 <p>Default value: <TT style="color:grey">-1</TT></p>
124</div>
125
126<button type="button" class="droppy2" style=
127"
128background-color: #edf0f5;
129color: #9373A5;
130cursor: pointer;
131border: none;
132text-align: left;
133outline: none;
134font-size: 15px;
135margin: 2px 2px;
136border: 2px solid #687372;
137display: block;
138width: 100%;
139vertical-align: middle;
140padding-top: 4px;
141padding-bottom: 0px;
142"
143><span class="arrow" style="padding-left: 0px;">►</span><TT><B>name</B></TT><span style="color: #c4c1c0;">&nbsp &nbsp &nbsp &nbspA text name to associate with the solver</span></button>
144<div class="content" style="display: none;">
145 <p><I>type=</I><span style="color: blue;"><TT>STRING</TT></span>. A text name to associate with the solver. This name will be used in status messages and verbose iterative convergence monitors.
146</p>
147 <p>Default value: <TT style="color:grey">"SteadyStateSolver"</TT></p>
148</div>
149
150<button type="button" class="droppy2" style=
151"
152background-color: #edf0f5;
153color: #9373A5;
154cursor: pointer;
155border: none;
156text-align: left;
157outline: none;
158font-size: 15px;
159margin: 2px 2px;
160border: 2px solid #687372;
161display: block;
162width: 100%;
163vertical-align: middle;
164padding-top: 4px;
165padding-bottom: 0px;
166"
167><span class="arrow" style="padding-left: 0px;">►</span><TT><B>start_time</B></TT><span style="color: #c4c1c0;">&nbsp &nbsp &nbsp &nbspTransient start-time if applicable</span></button>
168<div class="content" style="display: none;">
169 <p><I>type=</I><span style="color: blue;"><TT>FLOAT</TT></span>. Transient start-time if applicable.
170</p>
171 <p>Default value: <TT style="color:grey">0(double)</TT></p>
172</div>
173
174<button type="button" class="droppy2" style=
175"
176background-color: #edf0f5;
177color: #9373A5;
178cursor: pointer;
179border: none;
180text-align: left;
181outline: none;
182font-size: 15px;
183margin: 2px 2px;
184border: 2px solid #687372;
185display: block;
186width: 100%;
187vertical-align: middle;
188padding-top: 4px;
189padding-bottom: 0px;
190"
191><span class="arrow" style="padding-left: 0px;">►</span><TT><B>time</B></TT><span style="color: #c4c1c0;">&nbsp &nbsp &nbsp &nbspCurrent time of the solver</span></button>
192<div class="content" style="display: none;">
193 <p><I>type=</I><span style="color: blue;"><TT>FLOAT</TT></span>. Current time of the solver.
194</p>
195 <p>Default value: <TT style="color:grey">0(double)</TT></p>
196</div>
197
198<button type="button" class="droppy2" style=
199"
200background-color: #edf0f5;
201color: #9373A5;
202cursor: pointer;
203border: none;
204text-align: left;
205outline: none;
206font-size: 15px;
207margin: 2px 2px;
208border: 2px solid #687372;
209display: block;
210width: 100%;
211vertical-align: middle;
212padding-top: 4px;
213padding-bottom: 0px;
214"
215><span class="arrow" style="padding-left: 0px;">►</span><TT><B>timestepper</B></TT><span style="color: #c4c1c0;">&nbsp &nbsp &nbsp &nbspHandle to a timestepper</span></button>
216<div class="content" style="display: none;">
217 <p><I>type=</I><span style="color: blue;"><TT>INTEGER</TT></span>. Handle to a timestepper. If not supplied then a ConstantTimeStepper will be created.
218</p>
219 <p>Default value: <TT style="color:grey">0</TT></p>
220</div>
221
222</div>
223\endhtmlonly
224
225\htmlonly
226
227<script>
228
229{
230 var coll = document.getElementsByClassName("droppy2");
231 var i;
232
233 for (i = 0; i < coll.length; i++) {
234 coll[i].addEventListener("click", function() {
235 this.classList.toggle("active");
236 var content = this.nextElementSibling;
237 if (content.style.display === "block") {
238 content.style.display = "none";
239 this.childNodes[0].innerText = "►"
240 } else {
241 content.style.display = "block";
242 this.children[0].innerText = "▼"
243 }
244 });
245 }
246}</script>
247
248\endhtmlonly
249
250### Usage Examples:
251\ref test_framework_tutorials_tutorial_93_raytracing_lua
252\ref test_modules_LinearBoltzmannSolvers_Transport_Steady_Cyl_Transport2DCyl_1Monoenergetic_lua
253\ref test_modules_LinearBoltzmannSolvers_Transport_Steady_Cyl_Transport2DCyl_2Multigroup_lua
254\ref test_modules_LinearBoltzmannSolvers_Transport_SteadyCBC_Transport2D_1Poly_lua
255\ref test_modules_LinearBoltzmannSolvers_Transport_SteadyCBC_Transport1D_1_lua
256\ref test_modules_LinearBoltzmannSolvers_Transport_Adjoint_Adjoint2D_3c_response_lua
257\ref test_modules_LinearBoltzmannSolvers_Transport_Adjoint_Adjoint2D_1a_forward_lua
258\ref test_modules_LinearBoltzmannSolvers_Transport_Adjoint_Adjoint2D_2a_forward_lua
259\ref test_modules_LinearBoltzmannSolvers_Transport_Adjoint_Adjoint2D_2b_adjoint_lua
260\ref test_modules_LinearBoltzmannSolvers_Transport_Adjoint_Adjoint2D_1b_adjoint_lua
261\ref test_modules_LinearBoltzmannSolvers_Transport_Adjoint_Adjoint2D_2c_response_lua
262\ref test_modules_LinearBoltzmannSolvers_Transport_Adjoint_Adjoint2D_3a_forward_lua
263\ref test_modules_LinearBoltzmannSolvers_Transport_Adjoint_Adjoint2D_3b_adjoint_lua
264\ref test_modules_LinearBoltzmannSolvers_Transport_Adjoint_Adjoint2D_1c_response_lua
265\ref test_modules_LinearBoltzmannSolvers_Transport_Steady_Transport2D_3Poly_quad_mod_lua
266\ref test_modules_LinearBoltzmannSolvers_Transport_Steady_Transport2D_5PolyA_AniHeteroBndry_lua
267\ref test_modules_LinearBoltzmannSolvers_Transport_Steady_Transport2D_1Poly_Balance_lua
268\ref test_modules_LinearBoltzmannSolvers_Transport_Steady_Transport3D_5Cycles2_lua
269\ref test_modules_LinearBoltzmannSolvers_Transport_Steady_Transport2D_4b_DSA_ortho_lua
270\ref test_modules_LinearBoltzmannSolvers_Transport_Steady_Transport2D_1Poly_BalanceMG_lua
271\ref test_modules_LinearBoltzmannSolvers_Transport_Steady_Transport2D_1Poly_lua
272\ref test_modules_LinearBoltzmannSolvers_Transport_Steady_Transport3D_1a_Extruder_lua
273\ref test_modules_LinearBoltzmannSolvers_Transport_Steady_Transport2D_4a_DSA_ortho_lua
274\ref test_modules_LinearBoltzmannSolvers_Transport_Steady_Transport3D_6ASplitMesh_lua
275\ref test_modules_LinearBoltzmannSolvers_Transport_Steady_Transport3D_3a_DSA_ortho_lua
276\ref test_modules_LinearBoltzmannSolvers_Transport_Steady_Transport3D_1Poly_qmom_part1_lua
277\ref test_modules_LinearBoltzmannSolvers_Transport_Steady_Transport3D_2Unstructured_lua
278\ref test_modules_LinearBoltzmannSolvers_Transport_Steady_Transport3D_6BSplitMesh_lua
279\ref test_modules_LinearBoltzmannSolvers_Transport_Steady_Transport1D_1_lua
280\ref test_modules_LinearBoltzmannSolvers_Transport_Steady_Transport1D_3a_DSA_ortho_lua
281\ref test_modules_LinearBoltzmannSolvers_Transport_Steady_Transport3D_1Poly_qmom_part2_lua
282\ref test_modules_LinearBoltzmannSolvers_Transport_Steady_Transport1D_4_DSA_ortho_inf_lua
283\ref test_modules_LinearBoltzmannSolvers_Transport_Steady_Transport3D_4Cycles1_lua
284\ref test_modules_LinearBoltzmannSolvers_Transport_Steady_Transport3D_1b_Ortho_lua
285\ref test_modules_LinearBoltzmannSolvers_Transport_Steady_Transport2D_2Unstructured_lua
286\ref test_modules_LinearBoltzmannSolvers_Transport_Steady_Transport3D_1Poly_parmetis_lua
287\ref test_modules_LinearBoltzmannSolvers_MGDiffusion_Steady_MIPDiffusion3D_3a_DSA_ortho_lua
288\ref test_modules_LinearBoltzmannSolvers_MGDiffusion_Steady_MIPDiffusion3D_1b_Ortho_lua
289*/