Voici un exemple de programme freefem générant les données nécessaires pour exécuter le programme. On remarquera l'usage de la fonction P1 "ib" qui vaut le numéro logique en chaque sommet: zero si interne, numéro de la frontiìere sinon.
/* fichier circle.pde */
n:=50;
border(1,0,2*pi,n) begin
x := cos(t);
y := sin(t);
end;
border(2,0,2*pi,n/2) begin
x := 0.3*cos(-t);
y := 0.3*sin(-t);
end;
buildmesh(1000);
savemesh('circle.msh');
f = 1;
plot(f);
save('one.dta',f); // right hand side
f = 1.0e-20 * (ib==1);
plot(f);
save('zero.dta',f); // Dirichlet conditions on 1
f = -1*(ib==2);
plot(f);
save('neumann.dta',f); // Neumann condition