Just to be clear -- this problem is on a shell -- there is no radial dependence, and the mesh is two-dimensional.
Jamie On Fri, Jul 1, 2016 at 10:35 AM, Pringle, James <[email protected]> wrote: > Dear fipy folks -- > > I am solving a problem of ocean circulation on a thin spherical shell; the > domain is too large to ignore the spherical nature of the earth. The > problem is of the form > > eq = (DiffusionTerm(var=Psi,coeff=DiffCoeff)+ > ExponentialConvectionTerm(var=Psi,coeff=convCoeff)) > > And I have incorporated all the of the appropriate metric terms for a > spherical shell into the coefficients above. My problem comes as I strive > to make the solution more realistic by applying Neumann BC's to some parts > of the problem. The usual formulation for setting \Del\dot\Psi \dot normal > = 1 > > psi.faceGrad.constrain(1.0*mesh.faceNormals,faceMask) > > will not work because on a spherical shell the gradient is equal to > > \Del f = (1/r) dF/d(lat)*(unit vector latitude) + > (1/(r*cos(lat)))*dF/d(long)*(unit vector longitude) > > Is there any easy way to constrain the faceGrad to something like > > constant = A*dPsi/dx+B*dPsi/dy > > where x and y are the spatial coordinates, and A and B are arbitrary > factors? That way I could easily include the metrics... > > Thanks, > Jamie Pringle > University of New Hampshire >
_______________________________________________ fipy mailing list [email protected] http://www.ctcms.nist.gov/fipy [ NIST internal ONLY: https://email.nist.gov/mailman/listinfo/fipy ]
