On Wed, Jan 28, 2009 at 2:55 PM, Ionut Vancea <[email protected]> wrote:

> Here is what I have right now:
>
> [..skip...]
> faceVar = var.getArithmeticFaceValue()
> fDerivative = .....
>
> from fipy.terms.implicitDiffusionTerm import ImplicitDiffusionTerm
> from fipy.terms.transientTerm import TransientTerm
>
> diffTerm4 = - ImplicitDiffusionTerm(coeff = (h*h*h, -fDerivative))
> eqch = TransientTerm() + diffTerm4

No. I believe this is wrong. The equation should be

   >>> diffTerm4 = - DiffusionTerm((h**3, 1))
   >>> eqch = TransientTerm() == -DiffusionTerm((h**3, 1)) +
(fDerivative.getFaceGrad() * h**3).getDivergence()

Notice that I have two terms. I believe that you were conflating them
when you wrote "ImplicitDiffusionTerm(coeff = (h*h*h, -fDerivative))".
Even what I wrote above is not optimal, the "\phi" derivative needs to
be run through the "f" function and then you can make that term
implicit. As it stands it is explicit. The example in the manual
pretty much spells this all out. How does the example in the manual
differ from what you are trying to do? Is it in the form of f?

Cheers

-- 
Daniel Wheeler

Reply via email to