Hi Zhiwen,
Hope all is well.
On Mon, Jul 7, 2008 at 4:44 PM, Zhiwen Liang <[EMAIL PROTECTED]> wrote:
> Hi all,
>
> Professor Garcia and I are working on solving some differential equations
> that look different from those that can be assembled by the regular Fipy
> terms. It would be great if you can give us some ideas.
>
> First, we are dealing with terms that are cross differentials with respect
> to different axis. For example, \frac{ \partial^2 \phi }{\partial x \partial
> y}.
>
> Second, the variables that are being solved for are embedded in several
> equations. For example, we want to solve these two equations: (Sorry they
> are not good examples.)
> \frac{\partial^2 \phi_1}{\partial x^2}+\frac{\partial^2 \phi_2}{\partial
> y^2}=0
> \frac{\partial^2 \phi_1}{\partial x \partial y}+\frac{\partial^2
> \phi_2}{\partial x \partial y}=0
We now have anisotropic diffusion, which, I think, deals with the
terms above. For example,
\frac{\partial^2 \phi_1}{\partial x \partial y}
can be represented by,
tensor_coeff = ((0, 1), (0, 0))
DiffusionTerm((tensor_coeff,))
tensor_coeff refers to \Gamma_{ij} in the operator
\partial_i \Gamma_{ij} \partial_j
for example.
Basically, the diffusion coefficient can now be a tensor. This gives a
lot more flexibility in the equations that can be defined. We only
have one example of this usage thus far
<http://matforge.org/fipy/browser/trunk/examples/diffusion/anisotropy.py>.
For your equations above, it might be worth transforming the variables
to something like, psi_1 = phi_1 + phi_2 and psi_2 = phi_1 - phi_2.
BTW I'm assuming you are not asking a question about solving two
equations and two unknowns. Correct?
> And I wonder if there are people trying to solve for elasticity problems
> using Fipy.
There has been some chatter, but I am not sure how successful attempts
have been
<http://search.gmane.org/?query=elasticity&group=gmane.comp.python.fipy>.
Cheers
--
Daniel Wheeler