- Timestamp:
- 09/24/12 22:26:49 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/modules/RequestedDependentsx/RequestedDependentsx.cpp
r13285 r13432 14 14 15 15 int i; 16 int output_enum;17 16 bool isautodiff = false; 18 17 IssmDouble output_value; 19 Element *element = NULL;20 int *dependent_enums = NULL;21 18 22 19 int num_dependents; 23 20 IssmPDouble *dependents; 21 DataSet* dependent_objects=NULL; 24 22 25 23 /*AD mode on?: */ … … 29 27 #ifdef _HAVE_ADOLC_ 30 28 parameters->FindParam(&num_dependents,AutodiffNumDependentsEnum); 29 parameters->FindParam(&dependent_objects,AutodiffDependentObjectsEnum); 31 30 if(num_dependents){ 32 31 dependents=xNew<IssmPDouble>(num_dependents); 33 parameters->FindParam(&dependent_enums,&num_dependents,AutodiffDependentsEnum);34 32 35 33 /*Go through our dependent variables, and compute the response:*/ 36 for(i=0;i<num_dependents;i++){ 37 Responsex(&output_value,elements,nodes,vertices,loads,materials,parameters,dependent_enums[i],false,0); 34 for(i=0;i<dependent_objects->Size();i++){ 35 DependentObject* dep=(DependentObject*)dependent_objects->GetObjectByOffset(i); 36 Responsex(&output_value,elements,nodes,vertices,loads,materials,parameters,dep->name,false,0); 38 37 output_value>>=dependents[i]; 39 38 } 40 39 } 40 delete dependent_objects; 41 41 #else 42 42 _error_("Should not be requesting dependents when an AD library is not available!");
Note:
See TracChangeset
for help on using the changeset viewer.