# Label each boundary edge with the natural numbering

Hello all,

Given a domain with N boundary edge, I would like to assign to each boundary edge the label corresponding to the natural numbering (label 0 for boundary edge 0, label 1 for boundary edge 1, …).

For example we consider the domain is a triangle with 3 boundary edges.
Potentially, initially all boundary edges of the domain have the same label, so I cannot do:

``````int[int] NewLab = [lab[0],0,lab[1],1,lab[2],2];
``````

Thus I have tried another approach: I have assigned a value to each boundary edge such as

``````fespace Lh0(THK, P0edge);
Lh0 l0;
l0[][0]=0;
l0[][1]=1;
l0[][2]=2;
``````

and I ave tried to use `l0` as defined to label each boundary edge but I did not succeed.

Could some one help me or suggest another approach ?

Best regards,

Loïc,

It works by doing this:

``````
func int Mylab(int i){
return i;
}
``````

And then

``````int j=0;
THK = change(THK, flabel=Mylab(j++));
``````

Best regards,

Loïc,