/[escript]/trunk/modellib/py_src/geometry.py
ViewVC logotype

Diff of /trunk/modellib/py_src/geometry.py

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

revision 406 by gross, Fri Dec 23 00:39:59 2005 UTC revision 628 by elspeth, Thu Mar 23 02:27:57 2006 UTC
# Line 1  Line 1 
1  # $Id$  # $Id$
2    
3    __copyright__="""  Copyright (c) 2006 by ACcESS MNRF
4                        http://www.access.edu.au
5                    Primary Business: Queensland, Australia"""
6    __license__="""Licensed under the Open Software License version 3.0
7                 http://www.opensource.org/licenses/osl-3.0.php"""
8    
9    
10  from esys.escript import *  from esys.escript import *
11  from esys.escript.modelframe import Model,ParameterSet  from esys.escript.modelframe import Model,ParameterSet
# Line 96  class ConstrainValue(Model): Line 102  class ConstrainValue(Model):
102             """             """
103             initialize time stepping             initialize time stepping
104             """             """
105               tol=1.e-8
106             x=self.domain.getX()             x=self.domain.getX()
107             d=self.domain.getDim()             d=self.domain.getDim()
108             self.location_constrained_value=0             self.location_constrained_value=0
109             x0=x[0]             x0=x[0]
110               mx=sup(x0)
111               mn=inf(x0)
112             if self.left:             if self.left:
113                 self.location_constrained_value=self.location_constrained_value+whereZero(x0-inf(x0))                 self.location_constrained_value=self.location_constrained_value+whereZero(x0-mn,tol*(mx-mn))
114             if self.right:             if self.right:
115                 self.location_constrained_value=self.location_constrained_value+whereZero(x0-sup(x0))                 self.location_constrained_value=self.location_constrained_value+whereZero(x0-mx,tol*(mx-mn))
116             x0=x[d-1]             x0=x[d-1]
117             if self.buttom:             mx=sup(x0)
118                 self.location_constrained_value=self.location_constrained_value+whereZero(x0-inf(x0))             mn=inf(x0)
119               if self.bottom:
120                   self.location_constrained_value=self.location_constrained_value+whereZero(x0-mn,tol*(mx-mn))
121             if self.top:             if self.top:
122                 self.location_constrained_value=self.location_constrained_value+whereZero(x0-sup(x0))                 self.location_constrained_value=self.location_constrained_value+whereZero(x0-mx,tol*(mx-mn))
123             if d>2:             if d>2:
124                x0=x[1]                x0=x[1]
125                  mx=sup(x0)
126                  mn=inf(x0)
127                if self.front:                if self.front:
128                   self.location_constrained_value=self.location_constrained_value+whereZero(x0-inf(x0))                   self.location_constrained_value=self.location_constrained_value+whereZero(x0-mn,tol*(mx-mn))
129                if self.back:                if self.back:
130                   self.location_constrained_value=self.location_constrained_value+whereZero(x0-sup(x0))                             self.location_constrained_value=self.location_constrained_value+whereZero(x0-mx,tol*(mx-mn))          
131             self.constrain_value=self.value*self.location_constrained_value             self.constrain_value=self.value*self.location_constrained_value
132                        
133  class ScalarConstrainer(ParameterSet):  class ScalarConstrainer(ParameterSet):

Legend:
Removed from v.406  
changed lines
  Added in v.628

  ViewVC Help
Powered by ViewVC 1.1.26