#!/usr/bin/env python from numpy import * from getfem import * DIRICHLET=1;NEUMANN=2 m=Mesh('import', 'gmsh', 'beam.msh') mfu = MeshFem(m,2);mfu.set_fem(Fem('FEM_HERMITE(1)')) mfl = MeshFem(m,1);mfl.set_fem(Fem('FEM_PK(1,1)')) mim = MeshIm(m,2) md=Model('real') md.add_fem_variable('u',mfu) md.add_initialized_data('F',[1.,1.]) md.add_linear_generic_assembly_brick(mim,"0.5*sqr(Grad_u(1,1))") md.add_linear_generic_assembly_brick(mim,"0.5*sqr(Hess_u(2,1,1))") md.add_source_term_brick(mim,'u','F',NEUMANN) md.add_Dirichlet_condition_with_multipliers(mim,'u',mfu,DIRICHLET) md.add_filtered_fem_variable('lag',mfl,DIRICHLET) md.add_linear_generic_assembly_brick(mim,"lag*Grad_u(2,1)",DIRICHLET) md.solve() mfu.export_to_vtk('beam.vtk','ascii',mfu,md.variable('u'),'u')