Next: , Previous: , Up: Solving problems   [Contents][Index]

#### 3.3.3 Elasticity problem

Assume that we want to solve an elasticity problem with an isotropic elasticity tensor determined by the Lame parameters \lambda=\mu=1 on the unit square \Omega=(0,1)^2 with right-hand side \vec{f}(x,y)\equiv (1,0)^t and Dirichlet boundary conditions \vec{u}(x,y)=0 for (x,y) \in \partial \Omega. The following command solves this equation approximately on a uniformly refined mesh using as termination criterion that the time for approximating the solution has increased beyond 20 seconds.

(let* ((problem
(elasticity-model-problem
(n-cube-domain 2) :lambda 1.0 :mu 1.0
:force (vector #m(1.0) #m(0.0)))))
(storing
(solve (blackboard :problem problem :output t
:success-if '(> :time 20.0)))))

(plot (^ :solution))


now plots the x-component of the solution (^ gets the solution from the blackboard *result*), whereas

(plot (^ :solution) :component 1)


plots the y-component.

A vector plot can be achieved using

(plot (^ :solution) :component 'fl.elasticity::u :rank 1 :shape 2)