A GetFEM++ structure can be summarized as follows
A program using getfem will often have the following structure
... define one or more Mesh
... define one or more MeshFem
... define one or more MeshIm
... define a Model and set it up:
Model.add_fem_variable(MeshFem, "some variable name")
Model.add_fem_variable(MeshFem, "another variable name")
Model.add_fem_data(MeshFem, "some data name")
Model.add_nonlinear_generic_assembly_brick(MeshIm,
"copy & paste your PDE weak formulation here", MeshRegion)
Model.solve(...options)
Note that instead of defining your pde terms with the weak form language (see Compute arbitrary terms - high-level generic assembly procedures - Weak-form language for more details on the syntaxt of the weak form language), you can use predefined bricks for standard terms : generic eliptic term, linearized or finite strain elasticity, standard boundary conditions ...