Commit graph

66 commits

Author SHA1 Message Date
Bryan W. Weber
bce4210e1b [1D] Adds getRefineCriteria function 2017-08-09 18:46:47 -04:00
Ray Speth
0bfdf146c0 [1D] Include transport derivatives when computing Jacobian for adjoint 2016-11-12 14:48:01 -05:00
Ray Speth
ca8b101acc [1D] Add general support for calculating adjoint sensitivities 2016-11-12 14:48:01 -05:00
Bryan W. Weber
0a363a108d [1D] Exceeding the max number of grid points should be an error 2016-11-11 17:40:46 -05:00
Bryan W. Weber
6acf755670 [1D] Add maxPoints and maxGridPoints functions 2016-11-11 17:40:46 -05:00
Ray Speth
40630a3ab4 Fix const-ness of some function arguments 2016-10-15 20:50:15 -04:00
Ray Speth
ae6e7fdff7 Add license/copyright info to files that were missing it 2016-10-10 22:48:23 -04:00
Ray Speth
4582e724ee Eliminate compiler warnings issued by Visual Studio 2015 2016-07-30 23:09:17 -04:00
Ray Speth
cd958a343b [1D] Make better use of local variables 2016-06-28 17:35:40 -04:00
Ray Speth
efe43b389e [1D] Add callback hooks to make debugging 1D solver easier
This allows one to define functions in Python which will be called after each
successful time step or steady state solve, from which the state of the solver
can be inspected.
2016-05-14 17:24:16 -04:00
Ray Speth
6003af01a3 [XML] Add version of XML_Node::build that takes file name directly 2016-05-03 15:03:51 -04:00
Ray Speth
f4ad150905 [1D] Sim1D::setProfile checks range of position array 2016-04-18 20:00:15 -04:00
Ray Speth
4c5301d6cd [1D] Initialize number-of-steps counter at start of solve
Fixes the enforcement of the maximum number of steps constraint if solve() is
called again after an exception.
2016-03-28 17:13:24 -04:00
Ray Speth
059e657fe4 [1D/Examples] Use new default values for Jacobian and time stepping settings
These values were selected for optimal performance across a large set of flames
in each configuration and using mechanisms of various sizes to give good average
performance. It should not generally be necessary for users to change these
values.
2016-03-27 17:07:36 -04:00
Ray Speth
5e35ca5486 [1D] Allow replacing flow domain grid after creating Sim1D
This makes it possible to try solving on a different grid if the initial
solution attempt fails without needing to recreate the Sim1D object.
2016-03-27 17:07:36 -04:00
Ray Speth
9353a79da2 [1D] Switch to "steady mode" before attempting steady-state solve
The solver could previously get left in transient mode if an exception occurred
during time stepping, making it impossible to make a new attempt at solving the
steady-state problem.
2016-03-27 17:07:36 -04:00
Ray Speth
1f3e8dd0d7 [1D] Raise exception if previous solution does not exist 2016-03-27 17:07:36 -04:00
Ray Speth
81074b2b4a [1D] Add function for restoring last successful steady-state solution 2016-03-27 17:07:36 -04:00
Ray Speth
832ee88692 [1D] Add ability to access last successful timestepped solution
This can be helpful when debugging 1D solver failures.
2016-03-25 12:21:19 -04:00
Ray Speth
f44b5fed57 Replace usage of int2str with cppformat and deprecate int2str 2016-02-04 19:11:49 -05:00
Ray Speth
f91afda8cb Replace usage of fp2str with cppformat and deprecate fp2str 2016-02-04 19:11:45 -05:00
Ray Speth
4887775109 Eliminate unnecessary counter member variables 2015-12-01 15:54:55 -05:00
Ray Speth
f5ff849b47 Replace std::copy with simpler direct assignment where possible 2015-11-12 17:35:30 -05:00
Ray Speth
34ff39e3df Clean up Doxygen docs and comments in OneD classes 2015-11-12 11:41:34 -05:00
Ray Speth
0647823ada Replace DATA_PTR macro with calls to data() 2015-10-17 18:58:50 -04:00
Ray Speth
a945ef2c23 Make use of initializer lists where appropriate 2015-10-17 18:58:50 -04:00
Ray Speth
c3a16ec1fb Update AssertThrowMsg and AssertFinite to use cppformat 2015-10-14 18:45:23 -04:00
Ray Speth
3f6d8b0aca Use cppformat instead of int2str and fp2str 2015-10-14 18:45:23 -04:00
Ray Speth
71bb73b728 Eliminate unnecessary calles to std::string.c_str() 2015-10-14 18:45:22 -04:00
Ray Speth
1411419b0f [1D] Eliminate sprintf-style string formatting 2015-10-14 18:45:22 -04:00
Ray Speth
41527b1ea7 Rename two-argument version of writelog 'debuglog'
This is a prerequisite to allowing writelog to take an arbitrary number
of arguments.
2015-10-14 18:45:22 -04:00
Ray Speth
acdf9cf0ed Clean up interstitial whitespace
Remove extra space around operators, between words, etc.
2015-08-02 23:06:16 -04:00
Ray Speth
6a04193646 Fix un-bracketed if, for, and else statements 2015-08-02 23:06:15 -04:00
Ray Speth
e4c45b6429 General whitespace cleanup
Remove unnecessary blank lines and trailing whitespace. Replace tabs with
spaces.
2015-08-02 23:06:15 -04:00
Ray Speth
2e53890adf Minor cleanup of constructors and destructors 2015-02-26 21:58:42 +00:00
Ray Speth
b8a99b4b83 Remove unnecessary explicit calls to default constructors 2015-01-22 00:04:12 +00:00
Ray Speth
a208c54d1c Add a version of XML_Node::getChildren with a simpler interface 2014-10-22 21:48:04 +00:00
Ray Speth
002c158761 Cleanup include statements
Move includes from header to implementation files where possible, and remove
unnecessary includes.
2014-08-28 16:54:13 +00:00
Ray Speth
b5396837b2 Make use of std::min, std::max, and clip 2014-06-03 16:52:43 +00:00
Ray Speth
6c0cea5ee4 Standardize function used for writing a line of repeated characters 2014-05-27 02:53:06 +00:00
Ray Speth
789574ac80 Remove commented-out code 2014-05-27 02:52:21 +00:00
Ray Speth
a33c57d1f1 [1D] Remove unused method 'setAdiabaticFlame' 2014-01-23 04:20:42 +00:00
Ray Speth
cf0ff0c6fd [1D] Move m_zfixed and m_tfixed variables from Domain1D to FreeFlame
FreeFlame is the only subclass of Domain1D where these variables are used.
2014-01-21 17:21:43 +00:00
Ray Speth
c76ddefa5f Fix spelling errors 2013-07-26 21:33:50 +00:00
Ray Speth
65a97d9b62 [1D] Restore domains based on sequence rather than name
Instead of searching the XML tree for nodes where the "id" attribute matches,
require that the domains occur in order from left to right (corresponding to how
they are saved).

Fixes Issue 164.
2013-06-26 00:23:07 +00:00
Ray Speth
d253fc0d63 Eliminate redundant standard library includes 2013-06-05 17:08:13 +00:00
Ray Speth
f75ba112f9 Clean up Doxygen docs for 1D simulation classes 2013-06-05 03:09:03 +00:00
Ray Speth
2326b07c68 [1D] Reset timestep after grid refinement
This addresses a performance issue where many failed timesteps would be
taken after adding new grid points. These failed timesteps are slow because
they require additional Jacobian re-evaluations. It is more efficient to
preemptively reduce the time step after adding new grid points.

Resolves Issue 155.
2013-04-12 23:06:05 +00:00
Ray Speth
1e43e4f333 Added a version of writelog which takes the log level as an argument 2012-12-30 00:17:08 +00:00
Ray Speth
14426bfc86 [1D] Added loglevel argument to control output from save and restore
Passing loglevel=0 to Sim1D::save or Sim1D::restore will suppress all output
from these functions. The default loglevel maintains the normal level of output.
2012-12-18 00:09:29 +00:00