/[escript]/trunk/escriptcore/py_src/flows.py
ViewVC logotype

Diff of /trunk/escriptcore/py_src/flows.py

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1467 by gross, Wed Apr 2 08:10:37 2008 UTC revision 1519 by artak, Tue Apr 22 03:45:36 2008 UTC
# Line 105  class StokesProblemCartesian(Homogeneous Line 105  class StokesProblemCartesian(Homogeneous
105           solves Av=f-Au-B^*p (v=0 on fixed_u_mask)           solves Av=f-Au-B^*p (v=0 on fixed_u_mask)
106           """           """
107           self.__pde_u.setTolerance(self.getSubProblemTolerance())           self.__pde_u.setTolerance(self.getSubProblemTolerance())
108           self.__pde_u.setValue(X=-self.getStress(u)+p*util.kronecker(self.domain))           self.__pde_u.setValue(X=-self.getStress(u)-p*util.kronecker(self.domain))
109           return  self.__pde_u.getSolution(verbose=self.show_details)           return  self.__pde_u.getSolution(verbose=self.show_details)
110    
111        def solve_prec(self,p):        def solve_prec(self,p):
# Line 123  class StokesProblemCartesian(Homogeneous Line 123  class StokesProblemCartesian(Homogeneous
123                return True                return True
124            else:            else:
125                return False                return False
126        def stoppingcriterium_GMRES(self,norm_r,norm_b):        def stoppingcriterium2(self,norm_r,norm_b,solver='GMRES',TOL=None):
127            if self.verbose: print "GMRES step %s: L2(r) = %s, L2(b)*TOL=%s"%(self.iter,norm_r,norm_b*self.getTolerance())        if TOL==None:
128                 TOL=self.getTolerance()
129              if self.verbose: print "%s step %s: L2(r) = %s, L2(b)*TOL=%s"%(solver,self.iter,norm_r,norm_b*TOL)
130            self.iter+=1            self.iter+=1
131            if norm_r <= norm_b*self.getTolerance():            
132                if self.verbose: print "GMRES terminated after %s steps."%self.iter            if norm_r <= norm_b*TOL:
133                  if self.verbose: print "%s terminated after %s steps."%(solver,self.iter)
134                return True                return True
135            else:            else:
136                return False                return False
137    
138    

Legend:
Removed from v.1467  
changed lines
  Added in v.1519

  ViewVC Help
Powered by ViewVC 1.1.26