[19759] | 1 | //AUTODIFF class definition
|
---|
| 2 | //
|
---|
| 3 | // Usage:
|
---|
| 4 | // autodiff=new autodiff();
|
---|
| 5 |
|
---|
| 6 | function autodiff (){
|
---|
| 7 | //methods
|
---|
| 8 | this.setdefaultparameters = function(){// {{{
|
---|
| 9 |
|
---|
| 10 | this.obufsize = 524288;
|
---|
| 11 | this.lbufsize = 524288;
|
---|
| 12 | this.cbufsize = 524288;
|
---|
| 13 | this.tbufsize = 524288;
|
---|
| 14 | this.gcTriggerRatio=2.0;
|
---|
| 15 | this.gcTriggerMaxSize=65536;
|
---|
| 16 |
|
---|
| 17 | }// }}}
|
---|
| 18 | this.disp= function(){// {{{
|
---|
| 19 |
|
---|
| 20 | console.log(sprintf(' automatic differentiation parameters:'));
|
---|
| 21 | fielddisplay(this,'isautodiff','indicates if the automatic differentiation is activated');
|
---|
| 22 | fielddisplay(this,'dependents','list of dependent variables');
|
---|
| 23 | fielddisplay(this,'independents','list of independent variables');
|
---|
| 24 | fielddisplay(this,'driver',"ADOLC driver ('fos_forward' or 'fov_forward')");
|
---|
| 25 | fielddisplay(this,'obufsize','Number of operations per buffer (==OBUFSIZE in usrparms.h)');
|
---|
| 26 | fielddisplay(this,'lbufsize','Number of locations per buffer (==LBUFSIZE in usrparms.h)');
|
---|
| 27 | fielddisplay(this,'cbufsize','Number of values per buffer (==CBUFSIZE in usrparms.h)');
|
---|
| 28 | fielddisplay(this,'tbufsize','Number of taylors per buffer (<=TBUFSIZE in usrparms.h)');
|
---|
| 29 | fielddisplay(this,'gcTriggerRatio','free location block sorting/consolidation triggered if the ratio between allocated and used locations exceeds gcTriggerRatio');
|
---|
| 30 | fielddisplay(this,'gcTriggerMaxSize','free location block sorting/consolidation triggered if the allocated locations exceed gcTriggerMaxSize');
|
---|
| 31 |
|
---|
| 32 | }// }}}
|
---|
| 33 | //properties
|
---|
| 34 | // {{{
|
---|
| 35 | this.isautodiff = false;
|
---|
| 36 | this.dependents = {};
|
---|
| 37 | this.independents = {};
|
---|
| 38 | this.driver = 'fos_forward';
|
---|
| 39 | this.obufsize = NaN;
|
---|
| 40 | this.lbufsize = NaN;
|
---|
| 41 | this.cbufsize = NaN;
|
---|
| 42 | this.tbufsize = NaN;
|
---|
| 43 | this.gcTriggerRatio = NaN;
|
---|
| 44 | this.gcTriggerMaxSize = NaN;
|
---|
| 45 |
|
---|
| 46 | this.setdefaultparameters();
|
---|
| 47 | //}}}
|
---|
| 48 | }
|
---|