← Back to team overview

dolfin team mailing list archive

Re: Laplace-Beltrami

 

On Mon, Jan 26, 2009 at 11:38:48AM -0500, Shawn Walker wrote:
>
> On Mon, 26 Jan 2009, Anders Logg wrote:
>
>> On Mon, Jan 26, 2009 at 11:30:25AM -0500, Shawn Walker wrote:
>>> Hello, I have a question on implementing the Laplace-Beltrami operator in
>>> FFC/DOLFIN.  Can you do it?  If the domain is just a 2-D surface, then
>>> maybe not; 2-D topological meshes in 3-D geometric space still needs to be
>>> implemented right?
>>
>> The mesh class supports it (that's why you can extract the boundary
>> mesh from a 3D mesh) but other pieces are missing.
>>
>> I suggest you try a very simple problem and try to track where things
>> go wrong (I assume they will). It might be that major work will be
>> needed to get it to work, but it might also be fixable.
>>
>>> What about if I just have a 2-D (flat) domain with a 1-D boundary.  Is
>>> there a convenient way to define the surface (tangential) gradient in FFC?
>>> It is just the derivative with respect to arc-length multiplied by the
>>> tangent vector.  Can you define forms on the boundary like that?
>>
>> Do you want to have the tangent on the boundary? That's fairly easy,
>> just do
>>
>> n = FacetNormal(mesh)
>> t = [-n[0], n[1]]
>>
>
> But can I do the derivative with respect to arc-length?
>
> Actually, another way to define the tangential gradient is to compute the 
> full gradient project onto the tangent space.  Would that work for  
> computing on the boundary of a flat 2-D domain?

What do you mean by derivative w.r.t arc length? If you just mean the
tangential component of the gradient, then this may be computed by

  dot(grad(v), t)

Note that for this to work, you need the field on the entire mesh
(also inside the domain) but those dofs may be set to zero.

-- 
Anders

Attachment: signature.asc
Description: Digital signature


References