#!/usr/bin/env python
# encoding: utf-8
"""
untitled.py

Created by Yun Tao on 2012-05-20.
Copyright (c) 2012 __MyCompanyName__. All rights reserved.
"""

#import matplotlib.pyplot as plt
from fipy import *
from matplotlib import pylab
from fipy.tools.numerix import *
from fipy import numerix


# mesh config
nx = 3
ny = nx
dx = 1.
dy = dx
L = dx * nx
mesh = Grid2D(dx=dx, dy=dy, nx=nx, ny=ny)

# variable config
phi = CellVariable(mesh = mesh, value = 0.)

# constants config
epsilon = 0.1
b = ((1,), (1,))

conv = -CentralDifferenceConvectionTerm(coeff=b)
diff = DiffusionTerm(coeff=epsilon)

# equation config
eq = conv + diff == TransientTerm()

peclet1 = conv.coeff * mesh._getCellDistances() / epsilon
peclet2 = conv._calcGeomCoeff(phi) / diff._calcGeomCoeff(phi) * mesh._orientedFaceNormals
viewer = MatplotlibViewer(vars=peclet2, title='peclet modified')