Changeset 62
- Timestamp:
- 04/27/09 10:48:39 (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk/src/m/solutions/cielo/diagnostic_core_nonlinear.m
r1 r62 66 66 % Figure out if convergence is reached. 67 67 if(count>=3), 68 dug=soln(count).u_g-soln(count-1).u_g; ndu =norm(dug,2); nu=norm(soln(count-1).u_g,2);68 dug=soln(count).u_g-soln(count-1).u_g; nduinf=norm(dug,inf)*m.parameters.yts; ndu=norm(dug,2); nu=norm(soln(count-1).u_g,2); 69 69 if (ndu/nu<=m.parameters.eps_rel), 70 if constraints_converged, 71 converged=1; 70 if (isnan(m.parameters.eps_abs) | nduinf<=m.parameters.eps_abs), 71 if constraints_converged, 72 converged=1; 73 end 72 74 end 73 75 end … … 75 77 if m.parameters.debug, 76 78 disp(sprintf('%s %g %s %g',' convergence criterion: norm(du)/norm(u)=',ndu/nu,' > ',m.parameters.eps_rel)); 79 if ~isnan(m.parameters.eps_abs) 80 disp(sprintf('%s %g %s %g',' convergence criterion: max(du)=',nduinf,' > ',m.parameters.eps_abs)); 81 end 77 82 disp(sprintf('%s %i',' number of unstable constraints=',num_unstable_constraints)); 78 83 end
Note:
See TracChangeset
for help on using the changeset viewer.