- Timestamp:
- 02/24/12 08:12:47 (13 years ago)
- Location:
- issm/trunk
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk
-
issm/trunk/src/c
- Property svn:ignore
-
old new 3 3 .ignore.txt 4 4 *.o 5 *.obj 5 6 *.exe 6 7 appscan.*
-
- Property svn:ignore
-
issm/trunk/src/c/modules/ControlInputGetGradientx/ControlInputGetGradientx.cpp
r7177 r11527 9 9 #include "../../EnumDefinitions/EnumDefinitions.h" 10 10 11 void ControlInputGetGradientx( Vec* pgradient, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials, Parameters* parameters , int name){11 void ControlInputGetGradientx( Vec* pgradient, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials, Parameters* parameters){ 12 12 13 Vec gradient=NULL; 14 gradient=NewVec(vertices->NumberOfVertices()); 13 /*Intermediaries*/ 14 int num_controls; 15 int *control_type = NULL; 16 Vec gradient=NULL; 15 17 16 for(int i=0;i<elements->Size();i++){ 17 Element* element=(Element*)elements->GetObjectByOffset(i); 18 element->ControlInputGetGradient(gradient,name); 18 /*Retrieve some parameters*/ 19 parameters->FindParam(&num_controls,InversionNumControlParametersEnum); 20 parameters->FindParam(&control_type,NULL,InversionControlParametersEnum); 21 22 /*Allocate and populate gradient*/ 23 gradient=NewVec(num_controls*vertices->NumberOfVertices()); 24 25 for(int i=0;i<num_controls;i++){ 26 for(int j=0;j<elements->Size();j++){ 27 Element* element=(Element*)elements->GetObjectByOffset(j); 28 element->ControlInputGetGradient(gradient,control_type[i],i); 29 } 19 30 } 20 31 … … 22 33 VecAssemblyEnd(gradient); 23 34 24 /*Assign output pointers:*/ 35 /*Clean up and return*/ 36 xfree((void**)&control_type); 25 37 *pgradient=gradient; 26 38 }
Note:
See TracChangeset
for help on using the changeset viewer.