Hello, I have found FiPy to be a great tool so far, but I wanted to make sure that I am using it correctly, because my results do not seem to be correct.
I am trying to represent this Hostetler 1-D Lake Equation: $$ \frac{\partial T}{\partial t} = \nabla ([km + K(z,t)] \nabla T ) + \frac{1}{C}\nabla \Phi $$ with these boundary conditions (first is for the surface [z=0], seconds is for the bottom of the lake): $$[km + K(z,t)] \nabla T = EnergyBalanceEquation $$ $$[km + K(z,t)] \nabla T = 0 $$ Here is my representation: (D[0]*temp).grad.constrain([fluxLeft],mesh.facesLeft) (D[0]*temp).grad.constrain([fluxRight],mesh.facesRight) eqX = TransientTerm() == (DiffusionTerm(coeff=D) + (1./C))*Phi.arithmeticFaceValue.divergence) where D is the diffusion coefficient calculated from km + K(z,t) . Throughout the iterations, I reset the surface boundary with the following lines: fluxLeft = heatEnergy*(1./C) (D[0]*temp).grad.constrain([fluxLeft],mesh.facesLeft) I am not sure if I represented the heat source term correctly. With this current representation, the temperature is is being inversely affected by the heat source (energy goes up, temperature drops.) There is also a major scaling issue, as I am getting temperature values in the negative thousands. Please advise, and thank you in advance for your timely help. Tara Larrue Intelligent Robotics Group NASA Ames Research Center
_______________________________________________ fipy mailing list fipy@nist.gov http://www.ctcms.nist.gov/fipy [ NIST internal ONLY: https://email.nist.gov/mailman/listinfo/fipy ]