Chi-Tech
lbs__TransientSolver.h
Go to the documentation of this file.
1/** \defgroup lbs__TransientSolver lbs.TransientSolver
2
3
4\ingroup LBSExecutors
5Generalized implementation of a transient 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.TransientSolver.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<button type="button" class="droppy2" style=
47"
48background-color: #edf0f5;
49color: #9373A5;
50cursor: pointer;
51border: none;
52text-align: left;
53outline: none;
54font-size: 15px;
55margin: 2px 2px;
56border: 2px solid #687372;
57display: block;
58width: 100%;
59vertical-align: middle;
60padding-top: 4px;
61padding-bottom: 0px;
62"
63><span class="arrow" style="padding-left: 0px;">►</span><TT><B>time_integration</B></TT><span style="color: #c4c1c0;">&nbsp &nbsp &nbsp &nbspHandle to a time integration scheme to use</span></button>
64<div class="content" style="display: none;">
65 <p><I>type=</I><span style="color: blue;"><TT>INTEGER</TT></span>. Handle to a time integration scheme to use
66</p>
67</div>
68
69</div>
70\endhtmlonly
71
72## Optional Input parameters
73\htmlonly
74
75<div style="display: block;">
76<button type="button" class="droppy2" style=
77"
78background-color: #edf0f5;
79color: #9373A5;
80cursor: pointer;
81border: none;
82text-align: left;
83outline: none;
84font-size: 15px;
85margin: 2px 2px;
86border: 2px solid #687372;
87display: block;
88width: 100%;
89vertical-align: middle;
90padding-top: 4px;
91padding-bottom: 0px;
92"
93><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>
94<div class="content" style="display: none;">
95 <p><I>type=</I><span style="color: blue;"><TT>FLOAT</TT></span>. Desired initial timestep size.
96</p>
97 <p>Default value: <TT style="color:grey">0.01(double)</TT></p>
98 <p>Allowable values: <TT>>= 1e-12(double)</TT></p>
99</div>
100
101<button type="button" class="droppy2" style=
102"
103background-color: #edf0f5;
104color: #9373A5;
105cursor: pointer;
106border: none;
107text-align: left;
108outline: none;
109font-size: 15px;
110margin: 2px 2px;
111border: 2px solid #687372;
112display: block;
113width: 100%;
114vertical-align: middle;
115padding-top: 4px;
116padding-bottom: 0px;
117"
118><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>
119<div class="content" style="display: none;">
120 <p><I>type=</I><span style="color: blue;"><TT>FLOAT</TT></span>. Transient end-time if applicable.
121</p>
122 <p>Default value: <TT style="color:grey">1(double)</TT></p>
123</div>
124
125<button type="button" class="droppy2" style=
126"
127background-color: #edf0f5;
128color: #9373A5;
129cursor: pointer;
130border: none;
131text-align: left;
132outline: none;
133font-size: 15px;
134margin: 2px 2px;
135border: 2px solid #687372;
136display: block;
137width: 100%;
138vertical-align: middle;
139padding-top: 4px;
140padding-bottom: 0px;
141"
142><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>
143<div class="content" style="display: none;">
144 <p><I>type=</I><span style="color: blue;"><TT>INTEGER</TT></span>. Maximum number of timesteps to allow. Negative values disables this.
145</p>
146 <p>Default value: <TT style="color:grey">-1</TT></p>
147</div>
148
149<button type="button" class="droppy2" style=
150"
151background-color: #edf0f5;
152color: #9373A5;
153cursor: pointer;
154border: none;
155text-align: left;
156outline: none;
157font-size: 15px;
158margin: 2px 2px;
159border: 2px solid #687372;
160display: block;
161width: 100%;
162vertical-align: middle;
163padding-top: 4px;
164padding-bottom: 0px;
165"
166><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>
167<div class="content" style="display: none;">
168 <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.
169</p>
170 <p>Default value: <TT style="color:grey">"TransientSolver"</TT></p>
171</div>
172
173<button type="button" class="droppy2" style=
174"
175background-color: #edf0f5;
176color: #9373A5;
177cursor: pointer;
178border: none;
179text-align: left;
180outline: none;
181font-size: 15px;
182margin: 2px 2px;
183border: 2px solid #687372;
184display: block;
185width: 100%;
186vertical-align: middle;
187padding-top: 4px;
188padding-bottom: 0px;
189"
190><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>
191<div class="content" style="display: none;">
192 <p><I>type=</I><span style="color: blue;"><TT>FLOAT</TT></span>. Transient start-time if applicable.
193</p>
194 <p>Default value: <TT style="color:grey">0(double)</TT></p>
195</div>
196
197<button type="button" class="droppy2" style=
198"
199background-color: #edf0f5;
200color: #9373A5;
201cursor: pointer;
202border: none;
203text-align: left;
204outline: none;
205font-size: 15px;
206margin: 2px 2px;
207border: 2px solid #687372;
208display: block;
209width: 100%;
210vertical-align: middle;
211padding-top: 4px;
212padding-bottom: 0px;
213"
214><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>
215<div class="content" style="display: none;">
216 <p><I>type=</I><span style="color: blue;"><TT>FLOAT</TT></span>. Current time of the solver.
217</p>
218 <p>Default value: <TT style="color:grey">0(double)</TT></p>
219</div>
220
221<button type="button" class="droppy2" style=
222"
223background-color: #edf0f5;
224color: #9373A5;
225cursor: pointer;
226border: none;
227text-align: left;
228outline: none;
229font-size: 15px;
230margin: 2px 2px;
231border: 2px solid #687372;
232display: block;
233width: 100%;
234vertical-align: middle;
235padding-top: 4px;
236padding-bottom: 0px;
237"
238><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>
239<div class="content" style="display: none;">
240 <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.
241</p>
242 <p>Default value: <TT style="color:grey">0</TT></p>
243</div>
244
245</div>
246\endhtmlonly
247
248\htmlonly
249
250<script>
251
252{
253 var coll = document.getElementsByClassName("droppy2");
254 var i;
255
256 for (i = 0; i < coll.length; i++) {
257 coll[i].addEventListener("click", function() {
258 this.classList.toggle("active");
259 var content = this.nextElementSibling;
260 if (content.style.display === "block") {
261 content.style.display = "none";
262 this.childNodes[0].innerText = "►"
263 } else {
264 content.style.display = "block";
265 this.children[0].innerText = "▼"
266 }
267 });
268 }
269}</script>
270
271\endhtmlonly
272
273*/