Chi-Tech
lbs__XXPowerIterationKEigen.h
Go to the documentation of this file.
1/** \defgroup lbs__XXPowerIterationKEigen lbs.XXPowerIterationKEigen
2
3
4\ingroup LBSExecutors
5Generalized implementation of a k-Eigenvalue solver using Power Iteration.
6
7
8## Example usage:
9Create this object:
10\code
11params =
12{
13 param_name1 = value1,
14 param_name2 = value2,
15 --etc.
16}
17lbs.XXPowerIterationKEigen.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>k_tol</B></TT><span style="color: #c4c1c0;">&nbsp &nbsp &nbsp &nbspTolerance on the k-eigenvalue</span></button>
120<div class="content" style="display: none;">
121 <p><I>type=</I><span style="color: blue;"><TT>FLOAT</TT></span>. Tolerance on the k-eigenvalue
122</p>
123 <p>Default value: <TT style="color:grey">1e-10(double)</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>max_iters</B></TT><span style="color: #c4c1c0;">&nbsp &nbsp &nbsp &nbspMaximum power iterations allowed</span></button>
144<div class="content" style="display: none;">
145 <p><I>type=</I><span style="color: blue;"><TT>INTEGER</TT></span>. Maximum power iterations allowed
146</p>
147 <p>Default value: <TT style="color:grey">1000</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>max_time_steps</B></TT><span style="color: #c4c1c0;">&nbsp &nbsp &nbsp &nbspMaximum number of timesteps to allow</span></button>
168<div class="content" style="display: none;">
169 <p><I>type=</I><span style="color: blue;"><TT>INTEGER</TT></span>. Maximum number of timesteps to allow. Negative values disables this.
170</p>
171 <p>Default value: <TT style="color:grey">-1</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>name</B></TT><span style="color: #c4c1c0;">&nbsp &nbsp &nbsp &nbspA text name to associate with the solver</span></button>
192<div class="content" style="display: none;">
193 <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.
194</p>
195 <p>Default value: <TT style="color:grey">"XXPowerIterationKEigen"</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>reinit_phi_1</B></TT><span style="color: #c4c1c0;">&nbsp &nbsp &nbsp &nbspIf true, reinitializes scalar phi fluxes to 1</span></button>
216<div class="content" style="display: none;">
217 <p><I>type=</I><span style="color: blue;"><TT>BOOLEAN</TT></span>. If true, reinitializes scalar phi fluxes to 1
218</p>
219 <p>Default value: <TT style="color:grey">true</TT></p>
220</div>
221
222<button type="button" class="droppy2" style=
223"
224background-color: #edf0f5;
225color: #9373A5;
226cursor: pointer;
227border: none;
228text-align: left;
229outline: none;
230font-size: 15px;
231margin: 2px 2px;
232border: 2px solid #687372;
233display: block;
234width: 100%;
235vertical-align: middle;
236padding-top: 4px;
237padding-bottom: 0px;
238"
239><span class="arrow" style="padding-left: 0px;">►</span><TT><B>reset_solution</B></TT><span style="color: #c4c1c0;">&nbsp &nbsp &nbsp &nbspFlag, if set to true will initialize the phi-solution to all 1's before executing</span></button>
240<div class="content" style="display: none;">
241 <p><I>type=</I><span style="color: blue;"><TT>BOOLEAN</TT></span>. Flag, if set to true will initialize the phi-solution to all 1's before executing
242</p>
243 <p>Default value: <TT style="color:grey">true</TT></p>
244</div>
245
246<button type="button" class="droppy2" style=
247"
248background-color: #edf0f5;
249color: #9373A5;
250cursor: pointer;
251border: none;
252text-align: left;
253outline: none;
254font-size: 15px;
255margin: 2px 2px;
256border: 2px solid #687372;
257display: block;
258width: 100%;
259vertical-align: middle;
260padding-top: 4px;
261padding-bottom: 0px;
262"
263><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>
264<div class="content" style="display: none;">
265 <p><I>type=</I><span style="color: blue;"><TT>FLOAT</TT></span>. Transient start-time if applicable.
266</p>
267 <p>Default value: <TT style="color:grey">0(double)</TT></p>
268</div>
269
270<button type="button" class="droppy2" style=
271"
272background-color: #edf0f5;
273color: #9373A5;
274cursor: pointer;
275border: none;
276text-align: left;
277outline: none;
278font-size: 15px;
279margin: 2px 2px;
280border: 2px solid #687372;
281display: block;
282width: 100%;
283vertical-align: middle;
284padding-top: 4px;
285padding-bottom: 0px;
286"
287><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>
288<div class="content" style="display: none;">
289 <p><I>type=</I><span style="color: blue;"><TT>FLOAT</TT></span>. Current time of the solver.
290</p>
291 <p>Default value: <TT style="color:grey">0(double)</TT></p>
292</div>
293
294<button type="button" class="droppy2" style=
295"
296background-color: #edf0f5;
297color: #9373A5;
298cursor: pointer;
299border: none;
300text-align: left;
301outline: none;
302font-size: 15px;
303margin: 2px 2px;
304border: 2px solid #687372;
305display: block;
306width: 100%;
307vertical-align: middle;
308padding-top: 4px;
309padding-bottom: 0px;
310"
311><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>
312<div class="content" style="display: none;">
313 <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.
314</p>
315 <p>Default value: <TT style="color:grey">0</TT></p>
316</div>
317
318</div>
319\endhtmlonly
320
321\htmlonly
322
323<script>
324
325{
326 var coll = document.getElementsByClassName("droppy2");
327 var i;
328
329 for (i = 0; i < coll.length; i++) {
330 coll[i].addEventListener("click", function() {
331 this.classList.toggle("active");
332 var content = this.nextElementSibling;
333 if (content.style.display === "block") {
334 content.style.display = "none";
335 this.childNodes[0].innerText = "►"
336 } else {
337 content.style.display = "block";
338 this.children[0].innerText = "▼"
339 }
340 });
341 }
342}</script>
343
344\endhtmlonly
345
346### Usage Examples:
347\ref test_modules_LinearBoltzmannSolvers_MGDiffusion_KEigen_KEigenvalueMIP2D_1a_QBlock_lua
348\ref test_modules_LinearBoltzmannSolvers_Transport_Keigen_KEigenvalueTransport2D_1c_QBlock_CBC_lua
349\ref test_modules_LinearBoltzmannSolvers_Transport_Keigen_KEigenvalueTransport2D_1c_QBlock_lua
350\ref test_modules_LinearBoltzmannSolvers_Transport_Keigen_KEigenvalueTransport2D_1a_QBlock_CBC_lua
351\ref test_modules_LinearBoltzmannSolvers_Transport_Keigen_KEigenvalueTransport2D_1a_QBlock_lua
352\ref test_modules_LinearBoltzmannSolvers_Transport_Keigen_c5g7_c5g7_lua
353*/