/[escript]/trunk/finley/test/python/RecTest.py
ViewVC logotype

Diff of /trunk/finley/test/python/RecTest.py

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

revision 300 by jgs, Wed Nov 9 02:02:19 2005 UTC revision 301 by gross, Fri Dec 2 05:49:29 2005 UTC
# Line 29  def TheTest(msh,constraints,reduce): Line 29  def TheTest(msh,constraints,reduce):
29      for i in range(msh.getDim()):      for i in range(msh.getDim()):
30        u_ex*=sin(2*Pi*x[i])        u_ex*=sin(2*Pi*x[i])
31      mypde=LinearPDE(msh)      mypde=LinearPDE(msh)
     mypde.setValue(A=numarray.identity(msh.getDim()),D=sml,Y=(sml+4*Pi**2*msh.getDim())*u_ex,q=constraints,r=u_ex)  
32      mypde.setSymmetryOn()      mypde.setSymmetryOn()
33      mypde.setDebugOn()      mypde.setDebugOn()
34      mypde.setReducedOrderTo(reduce)      mypde.setReducedOrderTo(reduce)
35        mypde.setValue(A=numarray.identity(msh.getDim()),D=sml,Y=(sml+4*Pi**2*msh.getDim())*u_ex,q=constraints,r=u_ex)
36      return Lsup(mypde.getSolution()-u_ex)/Lsup(u_ex)      return Lsup(mypde.getSolution()-u_ex)/Lsup(u_ex)
37    
38  max_error=0  max_error=0
# Line 57  for onElements in [False,True]: Line 57  for onElements in [False,True]:
57                x=n.getX()                x=n.getX()
58                c=Scalar(0,what=n)                c=Scalar(0,what=n)
59                if i0==False:                if i0==False:
60                    c+=x[0].whereZero()+(x[0]-1.).whereZero()                    c+=whereZero(x[0])+whereZero(x[0]-1.)
61                if i1==False:                if i1==False:
62                    c+=x[1].whereZero()+(x[1]-1.).whereZero()                    c+=whereZero(x[1])+whereZero(x[1]-1.)
63                error=TheTest(msh,c,reduce)                error=TheTest(msh,c,reduce)
64                text="Rectangle order = %d%s%s, periodic0= %d, periodic1= %d: error= %f"%(order,redtext,onElmtext,i0,i1,error)                text="Rectangle order = %d%s%s, periodic0= %d, periodic1= %d: error= %f"%(order,redtext,onElmtext,i0,i1,error)
65                print "@@ ",text                print "@@ ",text
# Line 75  for onElements in [False,True]: Line 75  for onElements in [False,True]:
75                  x=n.getX()                  x=n.getX()
76                  c=Scalar(0,what=n)                  c=Scalar(0,what=n)
77                  if i0==False:                  if i0==False:
78                    c+=x[0].whereZero()+(x[0]-1.).whereZero()                    c+=whereZero(x[0])+whereZero(x[0]-1.)
79                  if i1==False:                  if i1==False:
80                    c+=x[1].whereZero()+(x[1]-1.).whereZero()                    c+=whereZero(x[1])+whereZero(x[1]-1.)
81                  if i2==False:                  if i2==False:
82                    c+=x[2].whereZero()+(x[2]-1.).whereZero()                    c+=whereZero(x[2])+whereZero(x[2]-1.)
83                  error=TheTest(msh,c,reduce)                  error=TheTest(msh,c,reduce)
84                  text="Brick order = %d%s%s, periodic0= %d, periodic1= %d, periodic2= %d: error= %f"%(order,redtext,onElmtext,i0,i1,i2,error)                  text="Brick order = %d%s%s, periodic0= %d, periodic1= %d, periodic2= %d: error= %f"%(order,redtext,onElmtext,i0,i1,i2,error)
85                  print "@@ ",text                  print "@@ ",text

Legend:
Removed from v.300  
changed lines
  Added in v.301

  ViewVC Help
Powered by ViewVC 1.1.26