Bartosz Sawicki wrote:
> On 01/12/08 09:33 AM, Garth N. Wells wrote:
>>
>>
>> Bartosz Sawicki wrote:
>>> On 01/12/08 09:07 AM, Garth N. Wells wrote:
>>>>
>>>> Bartosz Sawicki wrote:
>>>>> Hi all,
>>>>>
>>>>> I can't find anything in the manuals, any example in the demo 
>>>>> directory and even google is silent like a grave, when asked for 
>>>>> "anisotropy site:fenics.org".
>>>>> Does it mean that anisotropy is not supported by FEniCS?
>>>>>
>>>> Can you be more specific on what you have in mind?
>>>
>>> My question is, if anyone has already tried to solve any anisotropic 
>>> problem with fenics?
>>>
>>> One of the problems, which come to my mind is that for anisotropic 
>>> material I need at tensor function for material property. Can FFC 
>>> handle this?
>>>
>>
>> Just define the equation you want to solve and try compiling it with 
>> FFC. For an anisotropic solid, part of this will involve defining the 
>> constitutive model. The DOLFIN library shouldn't need to be (nor 
>> should it be) aware of the details of the constitutive model.
> 
> Yes, I know that, but there is a problem with anisotropic material 
> property which is in general case described by tensor.
> 
> Let's look on example. Simple Poisson equation form:
> 
> element = FiniteElement("Lagrange", "tetrahedron", 1)
> v = TestFunction(element)
> u = TrialFunction(element)
> f = Function(element)
> g = Function(element)
> k = Constant("tetrahedron")
> a = k*dot(grad(v), grad(u))*dx
> L = v*f*dx + v*g*ds
> 
> In case of anisotropy, k (material property) shouldn't be "scalar 
> constant", but rather "tensor constant" over the element.
> 
> For Poisson I can manage with "vector constant", but that's definitely 
> not a general approach:
> k = VectorConstant("tetrahedron")
> a = (k[0]*D(v,0)*D(u,0) + k[1]*D(v,1)*D(u,1) + k[2]*D(v,2)*D(u,2))*dx
> 
> How would you advice to describe tensor function or tensor constant in 
> the form? Is it possible?
> 

As Anders suggested, if you have a second-order tensor you need to 
flatten it into a vector. This is done extensively in the FEniCS Apps 
plasticity solver,

     http://www.fenics.org/wiki/FEniCS_Plasticity

It is a good place to look for examples.

Garth


> BArtek
> 
> 
>>
>> Garth
>>
>>> BArtek
>>>
>>>
>>>> Garth
>>>>
>>>>> Strange, this seams to be quite easy to develop. Or maybe just no 
>>>>> one needed that feature so far.
>>>>>
>>>>> BArtek
>>>>> _______________________________________________
>>>>> DOLFIN-dev mailing list
>>>>> [email protected]
>>>>> http://www.fenics.org/mailman/listinfo/dolfin-dev
>>>>
>>>
>>> _______________________________________________
>>> DOLFIN-dev mailing list
>>> [email protected]
>>> http://www.fenics.org/mailman/listinfo/dolfin-dev
>>
> 
_______________________________________________
DOLFIN-dev mailing list
[email protected]
http://www.fenics.org/mailman/listinfo/dolfin-dev

Reply via email to