Changeset 12441 for issm/trunk-jpl/src/c/objects/Numerics/ElementVector.cpp
- Timestamp:
- 06/18/12 09:17:08 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/objects/Numerics/ElementVector.cpp
r12365 r12441 54 54 55 55 /*Initialize itransformation matrix pe[P[i]] = pe2[i]*/ 56 P= (int*)xmalloc(pe2->nrows*sizeof(int));56 P=xNew<int>(pe2->nrows); 57 57 58 58 /*1: Get the new numbering of pe2 and get size of the new matrix*/ … … 74 74 75 75 /*Gset and values*/ 76 this->gglobaldoflist= (int*)xmalloc(this->nrows*sizeof(int));77 this->values= (double*)xcalloc(this->nrows,sizeof(double));76 this->gglobaldoflist=xNew<int>(this->nrows); 77 this->values=xNewInit<double>(this->nrows,0.0); 78 78 for(i=0;i<pe1->nrows;i++){ 79 79 this->values[i] += pe1->values[i]; … … 92 92 this->fsize=fsize; 93 93 if(fsize){ 94 this->flocaldoflist = (int*)xmalloc(fsize*sizeof(int));95 this->fglobaldoflist= (int*)xmalloc(fsize*sizeof(int));94 this->flocaldoflist =xNew<int>(fsize); 95 this->fglobaldoflist=xNew<int>(fsize); 96 96 for(i=0;i<pe1->fsize;i++){ 97 97 this->flocaldoflist[i] =pe1->flocaldoflist[i]; … … 113 113 114 114 /*clean-up*/ 115 x free((void**)&P);115 xDelete<int>(P); 116 116 } 117 117 /*}}}*/ … … 138 138 139 139 /*fill values with 0: */ 140 this->values= (double*)xcalloc(this->nrows,sizeof(double));140 this->values=xNewInit<double>(this->nrows,0.0); 141 141 142 142 /*g list*/ … … 152 152 ElementVector::~ElementVector(){ 153 153 154 x free((void**)&this->values);155 x free((void**)&this->gglobaldoflist);156 x free((void**)&this->flocaldoflist);157 x free((void**)&this->fglobaldoflist);154 xDelete<double>(this->values); 155 xDelete<int>(this->gglobaldoflist); 156 xDelete<int>(this->flocaldoflist); 157 xDelete<int>(this->fglobaldoflist); 158 158 } 159 159 /*}}}*/ … … 171 171 if(this->fsize){ 172 172 /*first, retrieve values that are in the f-set from the g-set values vector: */ 173 localvalues= (double*)xmalloc(this->fsize*sizeof(double));173 localvalues=xNew<double>(this->fsize); 174 174 for(i=0;i<this->fsize;i++){ 175 175 localvalues[i]=this->values[this->flocaldoflist[i]]; … … 179 179 180 180 /*Free ressources:*/ 181 x free((void**)&localvalues);181 xDelete<double>(localvalues); 182 182 } 183 183 … … 192 192 if(this->fsize){ 193 193 /*first, retrieve values that are in the f-set from the g-set values vector: */ 194 localvalues= (double*)xmalloc(this->fsize*sizeof(double));194 localvalues=xNew<double>(this->fsize); 195 195 for(i=0;i<this->fsize;i++){ 196 196 localvalues[i]=this->values[this->flocaldoflist[i]]; … … 200 200 201 201 /*Free ressources:*/ 202 x free((void**)&localvalues);202 xDelete<double>(localvalues); 203 203 } 204 204 … … 245 245 this->nrows =pe->nrows; 246 246 247 this->values= (double*)xmalloc(this->nrows*sizeof(double));247 this->values=xNew<double>(this->nrows); 248 248 memcpy(this->values,pe->values,this->nrows*sizeof(double)); 249 249 250 this->gglobaldoflist= (int*)xmalloc(this->nrows*sizeof(int));250 this->gglobaldoflist=xNew<int>(this->nrows); 251 251 memcpy(this->gglobaldoflist,pe->gglobaldoflist,this->nrows*sizeof(int)); 252 252 253 253 this->fsize=pe->fsize; 254 254 if(this->fsize){ 255 this->flocaldoflist= (int*)xmalloc(this->fsize*sizeof(int));255 this->flocaldoflist=xNew<int>(this->fsize); 256 256 memcpy(this->flocaldoflist,pe->flocaldoflist,this->fsize*sizeof(int)); 257 this->fglobaldoflist= (int*)xmalloc(this->fsize*sizeof(int));257 this->fglobaldoflist=xNew<int>(this->fsize); 258 258 memcpy(this->fglobaldoflist,pe->fglobaldoflist,this->fsize*sizeof(int)); 259 259 }
Note:
See TracChangeset
for help on using the changeset viewer.