On Apr 20, 2006, at 12:02 PM, Zhiheng Huang wrote:

There are N phases in this binary system, i.e. liquid Sn, solid copper, and N-2 IMC grains.  As far as I understand, this paper considers Sn diffusion only, so I think "c" on the left side of equation 11 should be "c_i", which stands for the mole fraction of Sn in phase i.  I do not know whether this answers your question?

Yes, that does answer my question. I would suggest trying to break down the problem in the following way:

    - firstly, solve the concentration equation when N = 1 with an imposed phase field. Have you done this? In FiPy
       that equation can be written,
 
               >>> eqn = TransientTerm() == DiffusionTerm( diffCoeff * phi )

       diffCoeff will be some function of phi. phi will be a CellVariable that has an imposed spatially varying value.

    - next solve the phase field and concentration equations when N = 1. Can you write down the phase field equation when N = 1?

Once we have made these two steps work we can then move on.

B.T.W.: Could you please have a look of Question 2 in my email sent on 07/04/2006.  The following is the communication with Dr. Guyer at that time.
(1) With respect to my question (2), as far as I understand, you said dbdpsi=d(beta)/d(psi).  However, referring to page 65, A=alpha**2*c*(1+c*beta)*[d(Phi)/d(psi)], and the program on page 66, A=alpha**2*c*(1+c*beta)*dbdpsi, I suspect that dbdpsi=[d(Phi)/d(psi)], but I can not see that [d(Phi)/d(psi)]=-N*2*Phi/(1+PhiSq).
I see your point and I don't know. Dan Wheeler coded up that example and he's out for a week or so.
Other than that, I have greater faith in the code than I do in the math printed there.

As it turns out, the code had a bug and the documentation was wrong. The bug was very silly, it was simply a matter of changing:

    >>> arc = N * numerix.arctan2(phaseY, phaseX) + theta

to:

    >>> arc = N * numerix.arctan2(phaseY, phaseX) + N * theta

Of course, it didn't matter for this particular example, since `theta = 0`. The documentation was also slightly awry, it had: 

       $$ A = \alpha^2 c \left[ 1 + c \beta \right] \Phi_\psi $$

and this has been changed to:

       $$ A = \alpha^2 c \left[ 1 + c \beta \right] \beta_\psi $$

and also added the missing factor of $N$ to $\theta$ in the $\psi$ _expression_. After making these changes, I then
changed the notation a little and the code to more accurately reflect the new notation.

The code now seems to work correctly when `theta = pi / 4`, for example. Before this change, when I was setting `theta = pi / 4`,
I was getting a crystal with an angle equivalent to `pi / 16`, since `N = 4`.

You can check the new version of this code out using CVS, via pserver, in a few hours.

I appreciate the fact that you pointed out the discrepancy; this is very useful for us.


-------------------------------------

Daniel Wheeler

Telephone: (301) 975-8358


Reply via email to