Next: Navier-Stokes problem, Previous: Nonlinear diffusion problem, Up: Solving problems [Contents][Index]
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)