Chi-Tech
chi_math__NonLinearSolverOptions.h
Go to the documentation of this file.
1/** \defgroup chi_math__NonLinearSolverOptions chi_math.NonLinearSolverOptions
2
3
4\ingroup LuaMath
5Options available on NonLinearSolver
6
7<B>Note:</B> This object is not constructable
8## Optional Input parameters
9\htmlonly
10
11<div style="display: block;">
12<button type="button" class="droppy2" style=
13"
14background-color: #edf0f5;
15color: #9373A5;
16cursor: pointer;
17border: none;
18text-align: left;
19outline: none;
20font-size: 15px;
21margin: 2px 2px;
22border: 2px solid #687372;
23display: block;
24width: 100%;
25vertical-align: middle;
26padding-top: 4px;
27padding-bottom: 0px;
28"
29><span class="arrow" style="padding-left: 0px;">►</span><TT><B>l_abs_tol</B></TT><span style="color: #c4c1c0;">&nbsp &nbsp &nbsp &nbspLinear absolute tolerance</span></button>
30<div class="content" style="display: none;">
31 <p><I>type=</I><span style="color: blue;"><TT>FLOAT</TT></span>. Linear absolute tolerance
32</p>
33 <p>Default value: <TT style="color:grey">1e-08(double)</TT></p>
34</div>
35
36<button type="button" class="droppy2" style=
37"
38background-color: #edf0f5;
39color: #9373A5;
40cursor: pointer;
41border: none;
42text-align: left;
43outline: none;
44font-size: 15px;
45margin: 2px 2px;
46border: 2px solid #687372;
47display: block;
48width: 100%;
49vertical-align: middle;
50padding-top: 4px;
51padding-bottom: 0px;
52"
53><span class="arrow" style="padding-left: 0px;">►</span><TT><B>l_div_tol</B></TT><span style="color: #c4c1c0;">&nbsp &nbsp &nbsp &nbspLinear divergence tolerance</span></button>
54<div class="content" style="display: none;">
55 <p><I>type=</I><span style="color: blue;"><TT>FLOAT</TT></span>. Linear divergence tolerance
56</p>
57 <p>Default value: <TT style="color:grey">1e+06(double)</TT></p>
58</div>
59
60<button type="button" class="droppy2" style=
61"
62background-color: #edf0f5;
63color: #9373A5;
64cursor: pointer;
65border: none;
66text-align: left;
67outline: none;
68font-size: 15px;
69margin: 2px 2px;
70border: 2px solid #687372;
71display: block;
72width: 100%;
73vertical-align: middle;
74padding-top: 4px;
75padding-bottom: 0px;
76"
77><span class="arrow" style="padding-left: 0px;">►</span><TT><B>l_gmres_breakdown_tol</B></TT><span style="color: #c4c1c0;">&nbsp &nbsp &nbsp &nbspGMRes breakdown tolerance</span></button>
78<div class="content" style="display: none;">
79 <p><I>type=</I><span style="color: blue;"><TT>FLOAT</TT></span>. GMRes breakdown tolerance
80</p>
81 <p>Default value: <TT style="color:grey">1e+06(double)</TT></p>
82</div>
83
84<button type="button" class="droppy2" style=
85"
86background-color: #edf0f5;
87color: #9373A5;
88cursor: pointer;
89border: none;
90text-align: left;
91outline: none;
92font-size: 15px;
93margin: 2px 2px;
94border: 2px solid #687372;
95display: block;
96width: 100%;
97vertical-align: middle;
98padding-top: 4px;
99padding-bottom: 0px;
100"
101><span class="arrow" style="padding-left: 0px;">►</span><TT><B>l_gmres_restart_intvl</B></TT><span style="color: #c4c1c0;">&nbsp &nbsp &nbsp &nbspGMRes restart interval</span></button>
102<div class="content" style="display: none;">
103 <p><I>type=</I><span style="color: blue;"><TT>INTEGER</TT></span>. GMRes restart interval
104</p>
105 <p>Default value: <TT style="color:grey">30</TT></p>
106</div>
107
108<button type="button" class="droppy2" style=
109"
110background-color: #edf0f5;
111color: #9373A5;
112cursor: pointer;
113border: none;
114text-align: left;
115outline: none;
116font-size: 15px;
117margin: 2px 2px;
118border: 2px solid #687372;
119display: block;
120width: 100%;
121vertical-align: middle;
122padding-top: 4px;
123padding-bottom: 0px;
124"
125><span class="arrow" style="padding-left: 0px;">►</span><TT><B>l_max_failed_iterations</B></TT><span style="color: #c4c1c0;">&nbsp &nbsp &nbsp &nbspThe maximum allowed non-linear iterations where the linear solver failed to converge</span></button>
126<div class="content" style="display: none;">
127 <p><I>type=</I><span style="color: blue;"><TT>INTEGER</TT></span>. The maximum allowed non-linear iterations where the linear solver failed to converge.
128</p>
129 <p>Default value: <TT style="color:grey">1000</TT></p>
130</div>
131
132<button type="button" class="droppy2" style=
133"
134background-color: #edf0f5;
135color: #9373A5;
136cursor: pointer;
137border: none;
138text-align: left;
139outline: none;
140font-size: 15px;
141margin: 2px 2px;
142border: 2px solid #687372;
143display: block;
144width: 100%;
145vertical-align: middle;
146padding-top: 4px;
147padding-bottom: 0px;
148"
149><span class="arrow" style="padding-left: 0px;">►</span><TT><B>l_max_its</B></TT><span style="color: #c4c1c0;">&nbsp &nbsp &nbsp &nbspLinear maximum iterations</span></button>
150<div class="content" style="display: none;">
151 <p><I>type=</I><span style="color: blue;"><TT>INTEGER</TT></span>. Linear maximum iterations
152</p>
153 <p>Default value: <TT style="color:grey">100</TT></p>
154</div>
155
156<button type="button" class="droppy2" style=
157"
158background-color: #edf0f5;
159color: #9373A5;
160cursor: pointer;
161border: none;
162text-align: left;
163outline: none;
164font-size: 15px;
165margin: 2px 2px;
166border: 2px solid #687372;
167display: block;
168width: 100%;
169vertical-align: middle;
170padding-top: 4px;
171padding-bottom: 0px;
172"
173><span class="arrow" style="padding-left: 0px;">►</span><TT><B>l_method</B></TT><span style="color: #c4c1c0;">&nbsp &nbsp &nbsp &nbspThe linear solver method to use</span></button>
174<div class="content" style="display: none;">
175 <p><I>type=</I><span style="color: blue;"><TT>STRING</TT></span>. The linear solver method to use.
176</p>
177 <p>Default value: <TT style="color:grey">"gmres"</TT></p>
178</div>
179
180<button type="button" class="droppy2" style=
181"
182background-color: #edf0f5;
183color: #9373A5;
184cursor: pointer;
185border: none;
186text-align: left;
187outline: none;
188font-size: 15px;
189margin: 2px 2px;
190border: 2px solid #687372;
191display: block;
192width: 100%;
193vertical-align: middle;
194padding-top: 4px;
195padding-bottom: 0px;
196"
197><span class="arrow" style="padding-left: 0px;">►</span><TT><B>l_rel_tol</B></TT><span style="color: #c4c1c0;">&nbsp &nbsp &nbsp &nbspLinear relative tolerance</span></button>
198<div class="content" style="display: none;">
199 <p><I>type=</I><span style="color: blue;"><TT>FLOAT</TT></span>. Linear relative tolerance
200</p>
201 <p>Default value: <TT style="color:grey">1e-08(double)</TT></p>
202</div>
203
204<button type="button" class="droppy2" style=
205"
206background-color: #edf0f5;
207color: #9373A5;
208cursor: pointer;
209border: none;
210text-align: left;
211outline: none;
212font-size: 15px;
213margin: 2px 2px;
214border: 2px solid #687372;
215display: block;
216width: 100%;
217vertical-align: middle;
218padding-top: 4px;
219padding-bottom: 0px;
220"
221><span class="arrow" style="padding-left: 0px;">►</span><TT><B>name</B></TT><span style="color: #c4c1c0;">&nbsp &nbsp &nbsp &nbspA name to assign to the solver</span></button>
222<div class="content" style="display: none;">
223 <p><I>type=</I><span style="color: blue;"><TT>STRING</TT></span>. A name to assign to the solver.
224</p>
225 <p>Default value: <TT style="color:grey">"NonLinearSolver"</TT></p>
226</div>
227
228<button type="button" class="droppy2" style=
229"
230background-color: #edf0f5;
231color: #9373A5;
232cursor: pointer;
233border: none;
234text-align: left;
235outline: none;
236font-size: 15px;
237margin: 2px 2px;
238border: 2px solid #687372;
239display: block;
240width: 100%;
241vertical-align: middle;
242padding-top: 4px;
243padding-bottom: 0px;
244"
245><span class="arrow" style="padding-left: 0px;">►</span><TT><B>nl_abs_tol</B></TT><span style="color: #c4c1c0;">&nbsp &nbsp &nbsp &nbspNon-linear absolute tolerance</span></button>
246<div class="content" style="display: none;">
247 <p><I>type=</I><span style="color: blue;"><TT>FLOAT</TT></span>. Non-linear absolute tolerance
248</p>
249 <p>Default value: <TT style="color:grey">1e-08(double)</TT></p>
250</div>
251
252<button type="button" class="droppy2" style=
253"
254background-color: #edf0f5;
255color: #9373A5;
256cursor: pointer;
257border: none;
258text-align: left;
259outline: none;
260font-size: 15px;
261margin: 2px 2px;
262border: 2px solid #687372;
263display: block;
264width: 100%;
265vertical-align: middle;
266padding-top: 4px;
267padding-bottom: 0px;
268"
269><span class="arrow" style="padding-left: 0px;">►</span><TT><B>nl_max_its</B></TT><span style="color: #c4c1c0;">&nbsp &nbsp &nbsp &nbspNon-linear maximum iterations</span></button>
270<div class="content" style="display: none;">
271 <p><I>type=</I><span style="color: blue;"><TT>INTEGER</TT></span>. Non-linear maximum iterations
272</p>
273 <p>Default value: <TT style="color:grey">50</TT></p>
274</div>
275
276<button type="button" class="droppy2" style=
277"
278background-color: #edf0f5;
279color: #9373A5;
280cursor: pointer;
281border: none;
282text-align: left;
283outline: none;
284font-size: 15px;
285margin: 2px 2px;
286border: 2px solid #687372;
287display: block;
288width: 100%;
289vertical-align: middle;
290padding-top: 4px;
291padding-bottom: 0px;
292"
293><span class="arrow" style="padding-left: 0px;">►</span><TT><B>nl_max_r_evaluations</B></TT><span style="color: #c4c1c0;">&nbsp &nbsp &nbsp &nbspThe maximum allowed residual evaluations</span></button>
294<div class="content" style="display: none;">
295 <p><I>type=</I><span style="color: blue;"><TT>INTEGER</TT></span>. The maximum allowed residual evaluations. Negative number disables this.
296</p>
297 <p>Default value: <TT style="color:grey">-1</TT></p>
298</div>
299
300<button type="button" class="droppy2" style=
301"
302background-color: #edf0f5;
303color: #9373A5;
304cursor: pointer;
305border: none;
306text-align: left;
307outline: none;
308font-size: 15px;
309margin: 2px 2px;
310border: 2px solid #687372;
311display: block;
312width: 100%;
313vertical-align: middle;
314padding-top: 4px;
315padding-bottom: 0px;
316"
317><span class="arrow" style="padding-left: 0px;">►</span><TT><B>nl_method</B></TT><span style="color: #c4c1c0;">&nbsp &nbsp &nbsp &nbspThe non-linear method to use</span></button>
318<div class="content" style="display: none;">
319 <p><I>type=</I><span style="color: blue;"><TT>STRING</TT></span>. The non-linear method to use.
320</p>
321 <p>Default value: <TT style="color:grey">"JFNK"</TT></p>
322 <p>Allowable values: <TT>"JFNK", "PJFNK", "NEWTON", "LINEAR"</TT></p>
323</div>
324
325<button type="button" class="droppy2" style=
326"
327background-color: #edf0f5;
328color: #9373A5;
329cursor: pointer;
330border: none;
331text-align: left;
332outline: none;
333font-size: 15px;
334margin: 2px 2px;
335border: 2px solid #687372;
336display: block;
337width: 100%;
338vertical-align: middle;
339padding-top: 4px;
340padding-bottom: 0px;
341"
342><span class="arrow" style="padding-left: 0px;">►</span><TT><B>nl_rel_tol</B></TT><span style="color: #c4c1c0;">&nbsp &nbsp &nbsp &nbspNon-linear relative tolerance</span></button>
343<div class="content" style="display: none;">
344 <p><I>type=</I><span style="color: blue;"><TT>FLOAT</TT></span>. Non-linear relative tolerance
345</p>
346 <p>Default value: <TT style="color:grey">1e-08(double)</TT></p>
347</div>
348
349<button type="button" class="droppy2" style=
350"
351background-color: #edf0f5;
352color: #9373A5;
353cursor: pointer;
354border: none;
355text-align: left;
356outline: none;
357font-size: 15px;
358margin: 2px 2px;
359border: 2px solid #687372;
360display: block;
361width: 100%;
362vertical-align: middle;
363padding-top: 4px;
364padding-bottom: 0px;
365"
366><span class="arrow" style="padding-left: 0px;">►</span><TT><B>nl_sol_tol</B></TT><span style="color: #c4c1c0;">&nbsp &nbsp &nbsp &nbspNon-linear solution tolerance</span></button>
367<div class="content" style="display: none;">
368 <p><I>type=</I><span style="color: blue;"><TT>FLOAT</TT></span>. Non-linear solution tolerance
369</p>
370 <p>Default value: <TT style="color:grey">1e-50(double)</TT></p>
371</div>
372
373<button type="button" class="droppy2" style=
374"
375background-color: #edf0f5;
376color: #9373A5;
377cursor: pointer;
378border: none;
379text-align: left;
380outline: none;
381font-size: 15px;
382margin: 2px 2px;
383border: 2px solid #687372;
384display: block;
385width: 100%;
386vertical-align: middle;
387padding-top: 4px;
388padding-bottom: 0px;
389"
390><span class="arrow" style="padding-left: 0px;">►</span><TT><B>pc_options</B></TT><span style="color: #c4c1c0;">&nbsp &nbsp &nbsp &nbspA table of parameters used in the preconditioner</span></button>
391<div class="content" style="display: none;">
392 <p><I>type=</I><span style="color: blue;"><TT>BLOCK</TT></span>. A table of parameters used in the preconditioner.
393</p>
394</div>
395
396<button type="button" class="droppy2" style=
397"
398background-color: #edf0f5;
399color: #9373A5;
400cursor: pointer;
401border: none;
402text-align: left;
403outline: none;
404font-size: 15px;
405margin: 2px 2px;
406border: 2px solid #687372;
407display: block;
408width: 100%;
409vertical-align: middle;
410padding-top: 4px;
411padding-bottom: 0px;
412"
413><span class="arrow" style="padding-left: 0px;">►</span><TT><B>petsc_snes_type</B></TT><span style="color: #c4c1c0;">&nbsp &nbsp &nbsp &nbspThe type passed to SNESSetType, if PETSc is used</span></button>
414<div class="content" style="display: none;">
415 <p><I>type=</I><span style="color: blue;"><TT>STRING</TT></span>. The type passed to SNESSetType, if PETSc is used. Consult PETSc's documentation for a list of available types.
416</p>
417 <p>Default value: <TT style="color:grey">"newtonls"</TT></p>
418</div>
419
420</div>
421\endhtmlonly
422
423\htmlonly
424
425<script>
426
427{
428 var coll = document.getElementsByClassName("droppy2");
429 var i;
430
431 for (i = 0; i < coll.length; i++) {
432 coll[i].addEventListener("click", function() {
433 this.classList.toggle("active");
434 var content = this.nextElementSibling;
435 if (content.style.display === "block") {
436 content.style.display = "none";
437 this.childNodes[0].innerText = "►"
438 } else {
439 content.style.display = "block";
440 this.children[0].innerText = "▼"
441 }
442 });
443 }
444}</script>
445
446\endhtmlonly
447
448*/