Changeset 14891
- Timestamp:
- 05/04/13 21:39:46 (12 years ago)
- Location:
- issm/trunk-jpl/src/c
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/classes/FemModel.cpp
r14822 r14891 641 641 xDelete<IssmDouble>(thickness); 642 642 xDelete<IssmDouble>(bed); 643 xdelete(&vz);643 delete vz; 644 644 return 1; 645 645 } … … 887 887 /*Assign output pointers: */ 888 888 if(pKff) *pKff=Kff; 889 else xdelete(&Kff);889 else delete Kff; 890 890 if(pKfs) *pKfs=Kfs; 891 else xdelete(&Kfs);891 else delete Kfs; 892 892 if(ppf) *ppf=pf; 893 else xdelete(&pf);893 else delete pf; 894 894 if(pdf) *pdf=df; 895 else xdelete(&df);895 else delete df; 896 896 if(pkmax) *pkmax=kmax; 897 897 } -
issm/trunk-jpl/src/c/classes/objects/Params/MatrixParam.cpp
r13761 r14891 39 39 /*FUNCTION MatrixParam::~MatrixParam(){{{*/ 40 40 MatrixParam::~MatrixParam(){ 41 xdelete(&value);41 delete value; 42 42 } 43 43 /*}}}*/ … … 98 98 99 99 /*avoid leak: */ 100 xdelete(&value);100 delete value; 101 101 102 102 /*copy: */ -
issm/trunk-jpl/src/c/solvers/solver_adjoint_linear.cpp
r13877 r14891 28 28 femmodel->SystemMatricesx(&Kff, &Kfs, &pf, &df, NULL); 29 29 CreateNodalConstraintsx(&ys,femmodel->nodes,configuration_type); 30 Reduceloadx(pf, Kfs, ys,true); xdelete(&Kfs); //true means spc = 031 Solverx(&uf, Kff, pf, NULL, df, femmodel->parameters); xdelete(&Kff); xdelete(&pf); xdelete(&df);32 Mergesolutionfromftogx(&ug, uf,ys,femmodel->nodes,femmodel->parameters,true); xdelete(&uf);xdelete(&ys); //true means spc030 Reduceloadx(pf, Kfs, ys,true); delete Kfs; //true means spc = 0 31 Solverx(&uf, Kff, pf, NULL, df, femmodel->parameters); delete Kff; delete pf; delete df; 32 Mergesolutionfromftogx(&ug, uf,ys,femmodel->nodes,femmodel->parameters,true); delete ys; //true means spc0 33 33 InputUpdateFromSolutionx(femmodel->elements,femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,ug); 34 xdelete(&ug); xdelete(&uf);34 delete ug; delete uf; 35 35 } -
issm/trunk-jpl/src/c/solvers/solver_hydro_nonlinear.cpp
r14769 r14891 48 48 femmodel->SystemMatricesx(&Kff, &Kfs, &pf,&df, &sediment_kmax); 49 49 CreateNodalConstraintsx(&ys,femmodel->nodes,HydrologyDCInefficientAnalysisEnum); 50 Reduceloadx(pf,Kfs,ys); xdelete(&Kfs); xdelete(&uf);50 Reduceloadx(pf,Kfs,ys); delete Kfs; delete uf; 51 51 Solverx(&uf, Kff, pf,uf_old, df, femmodel->parameters); 52 xdelete(&uf_old); uf_old=uf->Duplicate();53 xdelete(&Kff);xdelete(&pf);xdelete(&ug); xdelete(&df);54 Mergesolutionfromftogx(&ug,uf,ys,femmodel->nodes,femmodel->parameters); xdelete(&ys);52 delete uf_old; uf_old=uf->Duplicate(); 53 delete Kff; delete pf; delete ug; delete df; 54 Mergesolutionfromftogx(&ug,uf,ys,femmodel->nodes,femmodel->parameters); delete ys; 55 55 InputUpdateFromSolutionx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,ug); 56 56 … … 85 85 femmodel->SystemMatricesx(&Kff, &Kfs, &pf,&df,NULL); 86 86 CreateNodalConstraintsx(&ys,femmodel->nodes,HydrologyDCEfficientAnalysisEnum); 87 Reduceloadx(pf,Kfs,ys); xdelete(&Kfs); xdelete(&uf);87 Reduceloadx(pf,Kfs,ys); delete Kfs; delete uf; 88 88 Solverx(&uf, Kff, pf,uf_old, df, femmodel->parameters); 89 xdelete(&uf_old); uf_old=uf->Duplicate();90 xdelete(&Kff);xdelete(&pf);xdelete(&ug); xdelete(&df);91 Mergesolutionfromftogx(&ug,uf,ys,femmodel->nodes,femmodel->parameters); xdelete(&ys);89 delete uf_old; uf_old=uf->Duplicate(); 90 delete Kff;delete pf; delete ug; delete df; 91 Mergesolutionfromftogx(&ug,uf,ys,femmodel->nodes,femmodel->parameters); delete ys; 92 92 InputUpdateFromSolutionx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,ug); 93 93 … … 118 118 119 119 /*Free ressources: */ 120 xdelete(&ug); 121 xdelete(&uf); 122 xdelete(&uf_old); 123 xdelete(&ys); 120 delete ug; 121 delete uf; 122 delete uf_old; 124 123 } -
issm/trunk-jpl/src/c/solvers/solver_linear.cpp
r13877 r14891 26 26 femmodel->SystemMatricesx(&Kff, &Kfs, &pf, &df, NULL); 27 27 CreateNodalConstraintsx(&ys,femmodel->nodes,configuration_type); 28 Reduceloadx(pf, Kfs, ys); xdelete(&Kfs);28 Reduceloadx(pf, Kfs, ys); delete Kfs; 29 29 Solverx(&uf, Kff, pf, NULL, df, femmodel->parameters); 30 xdelete(&Kff); xdelete(&pf); xdelete(&df);30 delete Kff; delete pf; delete df; 31 31 //#ifdef _HAVE_ADOLC_ 32 32 // for (int i =0; i<uf->svector->M; ++i) { … … 34 34 // } 35 35 //#endif 36 Mergesolutionfromftogx(&ug, uf,ys,femmodel->nodes,femmodel->parameters); xdelete(&uf); xdelete(&ys);36 Mergesolutionfromftogx(&ug, uf,ys,femmodel->nodes,femmodel->parameters);delete uf; delete ys; 37 37 InputUpdateFromSolutionx( femmodel->elements,femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,ug); 38 xdelete(&ug); xdelete(&uf);38 delete ug; 39 39 } -
issm/trunk-jpl/src/c/solvers/solver_newton.cpp
r14416 r14891 53 53 for(;;){ 54 54 55 xdelete(&old_ug);old_ug=ug;56 xdelete(&old_uf);old_uf=uf;55 delete old_ug;old_ug=ug; 56 delete old_uf;old_uf=uf; 57 57 58 58 /*Solver forward model*/ … … 60 60 femmodel->SystemMatricesx(&Kff, &Kfs, &pf, &df, NULL); 61 61 CreateNodalConstraintsx(&ys,femmodel->nodes,configuration_type); 62 Reduceloadx(pf,Kfs,ys); xdelete(&Kfs);63 Solverx(&uf,Kff,pf,old_uf,df,femmodel->parameters); xdelete(&df);64 Mergesolutionfromftogx(&ug,uf,ys,femmodel->nodes,femmodel->parameters); xdelete(&ys);65 InputUpdateFromSolutionx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,ug); xdelete(&ug);66 xdelete(&old_ug);old_ug=ug;67 xdelete(&old_uf);old_uf=uf;62 Reduceloadx(pf,Kfs,ys);delete Kfs; 63 Solverx(&uf,Kff,pf,old_uf,df,femmodel->parameters);delete df; 64 Mergesolutionfromftogx(&ug,uf,ys,femmodel->nodes,femmodel->parameters);delete ys; 65 InputUpdateFromSolutionx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,ug);delete ug; 66 delete old_ug;old_ug=ug; 67 delete old_uf;old_uf=uf; 68 68 } 69 69 uf=old_uf->Duplicate(); old_uf->Copy(uf); 70 70 71 71 /*Prepare next iteration using Newton's method*/ 72 femmodel->SystemMatricesx(&Kff, &Kfs, &pf, &df, NULL); xdelete(&df);72 femmodel->SystemMatricesx(&Kff, &Kfs, &pf, &df, NULL);delete df; 73 73 CreateNodalConstraintsx(&ys,femmodel->nodes,configuration_type); 74 Reduceloadx(pf,Kfs,ys); xdelete(&Kfs);74 Reduceloadx(pf,Kfs,ys);delete Kfs; 75 75 76 76 pJf=pf->Duplicate(); 77 Kff->MatMult(uf,pJf);// xdelete(&Kff);78 pJf->Scale(-1.0); pJf->AXPY(pf,+1.0); // xdelete(&pf);77 Kff->MatMult(uf,pJf);// delete Kff); 78 pJf->Scale(-1.0); pJf->AXPY(pf,+1.0); //delete pf); 79 79 80 80 femmodel->CreateJacobianMatrixx(&Jff,kmax); 81 Solverx(&duf,Jff,pJf,NULL,NULL,femmodel->parameters); xdelete(&Jff); xdelete(&pJf);82 uf->AXPY(duf, 1.0); xdelete(&duf);83 Mergesolutionfromftogx(&ug,uf,ys,femmodel->nodes,femmodel->parameters); xdelete(&ys);81 Solverx(&duf,Jff,pJf,NULL,NULL,femmodel->parameters); delete Jff; delete pJf; 82 uf->AXPY(duf, 1.0); delete duf; 83 Mergesolutionfromftogx(&ug,uf,ys,femmodel->nodes,femmodel->parameters);delete ys; 84 84 InputUpdateFromSolutionx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,ug); 85 85 86 86 /*Check convergence*/ 87 87 convergence(&converged,Kff,pf,uf,old_uf,femmodel->parameters); 88 xdelete(&Kff); xdelete(&pf);88 delete Kff; delete pf; 89 89 if(converged==true){ 90 90 bool max_iteration_state=false; … … 109 109 110 110 /*clean-up*/ 111 xdelete(&uf);112 xdelete(&ug);113 xdelete(&old_ug);114 xdelete(&old_uf);111 delete uf; 112 delete ug; 113 delete old_ug; 114 delete old_uf; 115 115 } -
issm/trunk-jpl/src/c/solvers/solver_nonlinear.cpp
r13877 r14891 60 60 61 61 //save pointer to old velocity 62 xdelete(&old_ug);old_ug=ug;63 xdelete(&old_uf);old_uf=uf;62 delete old_ug;old_ug=ug; 63 delete old_uf;old_uf=uf; 64 64 65 65 femmodel->SystemMatricesx(&Kff, &Kfs, &pf, &df, NULL); 66 66 CreateNodalConstraintsx(&ys,femmodel->nodes,configuration_type); 67 Reduceloadx(pf, Kfs, ys); xdelete(&Kfs);67 Reduceloadx(pf, Kfs, ys); delete Kfs; 68 68 Solverx(&uf, Kff, pf, old_uf, df, femmodel->parameters); 69 Mergesolutionfromftogx(&ug, uf,ys,femmodel->nodes,femmodel->parameters); xdelete(&ys);69 Mergesolutionfromftogx(&ug, uf,ys,femmodel->nodes,femmodel->parameters);delete ys; 70 70 71 convergence(&converged,Kff,pf,uf,old_uf,femmodel->parameters); xdelete(&Kff); xdelete(&pf); xdelete(&df);71 convergence(&converged,Kff,pf,uf,old_uf,femmodel->parameters); delete Kff; delete pf; delete df; 72 72 InputUpdateFromConstantx( femmodel->elements,femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,converged,ConvergedEnum); 73 73 InputUpdateFromSolutionx( femmodel->elements,femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,ug); … … 113 113 femmodel->loads=savedloads; 114 114 } 115 xdelete(&uf);116 xdelete(&ug);117 xdelete(&old_ug);118 xdelete(&old_uf);115 delete uf; 116 delete ug; 117 delete old_ug; 118 delete old_uf; 119 119 } -
issm/trunk-jpl/src/c/solvers/solver_stokescoupling_nonlinear.cpp
r13877 r14891 57 57 //Update once again the solution to make sure that vx and vxold are similar (for next step in transient or steadystate) 58 58 InputUpdateFromSolutionx(femmodel->elements,femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,ug_horiz); 59 xdelete(&ug_horiz);59 delete ug_horiz; 60 60 61 61 //save pointer to old velocity 62 xdelete(&old_uf_horiz); old_uf_horiz=uf_horiz;62 delete old_uf_horiz; old_uf_horiz=uf_horiz; 63 63 64 64 /*solve: */ 65 65 femmodel->SystemMatricesx(&Kff_horiz, &Kfs_horiz, &pf_horiz, &df_horiz, NULL); 66 66 CreateNodalConstraintsx(&ys,femmodel->nodes,configuration_type); 67 Reduceloadx(pf_horiz, Kfs_horiz, ys); xdelete(&Kfs_horiz);67 Reduceloadx(pf_horiz, Kfs_horiz, ys); delete Kfs_horiz; 68 68 Solverx(&uf_horiz, Kff_horiz, pf_horiz, old_uf_horiz, df_horiz,femmodel->parameters); 69 Mergesolutionfromftogx(&ug_horiz, uf_horiz,ys,femmodel->nodes,femmodel->parameters); xdelete(&ys);69 Mergesolutionfromftogx(&ug_horiz, uf_horiz,ys,femmodel->nodes,femmodel->parameters); delete ys; 70 70 InputUpdateFromSolutionx( femmodel->elements,femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,ug_horiz); 71 71 72 convergence(&converged,Kff_horiz,pf_horiz,uf_horiz,old_uf_horiz,femmodel->parameters); xdelete(&Kff_horiz); xdelete(&pf_horiz); xdelete(&df_horiz);72 convergence(&converged,Kff_horiz,pf_horiz,uf_horiz,old_uf_horiz,femmodel->parameters); delete Kff_horiz; delete pf_horiz; delete df_horiz; 73 73 74 74 /*Second compute vertical velocity: */ … … 79 79 femmodel->SystemMatricesx(&Kff_vert, &Kfs_vert, &pf_vert, &df_vert,NULL); 80 80 CreateNodalConstraintsx(&ys,femmodel->nodes,configuration_type); 81 Reduceloadx(pf_vert, Kfs_vert, ys); xdelete(&Kfs_vert);82 Solverx(&uf_vert, Kff_vert, pf_vert, NULL, df_vert,femmodel->parameters); xdelete(&Kff_vert); xdelete(&pf_vert); xdelete(&df_vert);83 Mergesolutionfromftogx(&ug_vert, uf_vert,ys,femmodel->nodes,femmodel->parameters); xdelete(&uf_vert); xdelete(&ys);81 Reduceloadx(pf_vert, Kfs_vert, ys); delete Kfs_vert; 82 Solverx(&uf_vert, Kff_vert, pf_vert, NULL, df_vert,femmodel->parameters); delete Kff_vert; delete pf_vert; delete df_vert; 83 Mergesolutionfromftogx(&ug_vert, uf_vert,ys,femmodel->nodes,femmodel->parameters);delete uf_vert; delete ys; 84 84 InputUpdateFromSolutionx( femmodel->elements,femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,ug_vert); 85 xdelete(&ug_vert); xdelete(&uf_vert);85 delete ug_vert; delete uf_vert; 86 86 87 87 /*Increase count: */ … … 95 95 96 96 /*clean-up*/ 97 xdelete(&old_uf_horiz);98 xdelete(&uf_horiz);99 xdelete(&ug_horiz);100 xdelete(&ys);97 delete old_uf_horiz; 98 delete uf_horiz; 99 delete ug_horiz; 100 delete ys; 101 101 } -
issm/trunk-jpl/src/c/solvers/solver_thermal_nonlinear.cpp
r14769 r14891 51 51 femmodel->SystemMatricesx(&Kff, &Kfs, &pf,&df, &melting_offset); 52 52 CreateNodalConstraintsx(&ys,femmodel->nodes,configuration_type); 53 Reduceloadx(pf, Kfs, ys); xdelete(&Kfs); xdelete(&tf);53 Reduceloadx(pf, Kfs, ys); delete Kfs; delete tf; 54 54 Solverx(&tf, Kff, pf,tf_old, df, femmodel->parameters); 55 xdelete(&tf_old); tf_old=tf->Duplicate();56 xdelete(&Kff);xdelete(&pf);xdelete(&tg); xdelete(&df);57 Mergesolutionfromftogx(&tg, tf,ys,femmodel->nodes,femmodel->parameters); xdelete(&ys);55 delete tf_old; tf_old=tf->Duplicate(); 56 delete Kff;delete pf;delete tg; delete df; 57 Mergesolutionfromftogx(&tg, tf,ys,femmodel->nodes,femmodel->parameters); delete ys; 58 58 InputUpdateFromSolutionx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,tg); 59 59 … … 79 79 80 80 /*Free ressources: */ 81 xdelete(&tg); 82 xdelete(&tf); 83 xdelete(&tf_old); 84 xdelete(&ys); 81 delete tg; 82 delete tf; 83 delete tf_old; 85 84 }
Note:
See TracChangeset
for help on using the changeset viewer.