Page 1 of 1

problem in condition in lines in Gid 14.1, 15.0, 15.1

Posted: Wed Feb 03, 2021 4:52 pm
by jbaiges
Hi,
We have a problemtype (old format) which applies boundary conditions over lines.
On the Femuss.cnd file (line 426 approx) we have:
CONDITION: TEMPER_Boundary_2D
CONDTYPE: over lines
CONDMESHTYPE: over elements
CANREPEAT: yes
QUESTION: code:#CB#(Heat_flux,Wall_law,Robin,Dust_Transport,DoNothing,Environment)
VALUE: Heat_flux

on our 02-problem-tem.fix.bas file we have (line 67):
ON_BOUNDARIES
*set var iboun=0
*if(ndime==2)
*set Cond TEMPER_Boundary_2D *elems
*else
*set Cond TEMPER_Boundary_3D *elems
*endif
*loop elems *onlyincond *canrepeat
write_something

However, from version 14.1 onwards, the *onlyincond statement does not detect any condition and nothing is done on the loop. This works fine in previous versions (14.0 and before).

I attach here the Femuss.gid problemtype, and the bu.gid case which illustrates the problem,

Thank you in advance for your help on this,
Kind regards,
Joan

Re: problem in condition in lines in Gid 14.1, 15.0, 15.1

Posted: Wed Feb 10, 2021 6:16 pm
by escolano
The problem is related with the definition of the conditions CONDMESHTYPE: 'over elements' that is ambiguous

You must modify the .cnd and replace all CONDMESHTYPE: over elements
by
CONDMESHTYPE: over face elements
or
CONDMESHTYPE: over body elements

depending on if do you want the condition on the mesh applied to some face of the element or to the whole element.

In the case of your
CONDITION: TEMPER_Boundary_2D
CONDTYPE: over lines
CONDMESHTYPE: over elements
must use
CONDMESHTYPE: over face elements

because you are not generating line elements from the geometric line, the line belong to a surface, and you are generating only the triangle elementos of the surface and want to mark with the condition some faces of the triangles
(you are using in the bas commands of faces, like *localnodes, *ElemsNnodeFace, then obviously in this case must be declared as 'over face elements' and not as 'over body elements'

Note: is is possible an extra optional 'multiple' flag
CONDMESHTYPE: over face elements multiple
that affects if the geometric line is not on the boundary and is shared by more than a surface. Without 'multiple' only the elements of one (arbitrary) of the surfaces will be marked with the condition, with 'multiple' the elements of all surfaces with the line will be marked. The selection depends if do you need this repetition or not, depending on the physical meaning of your condition.

Once you modify the .cnd , if do you load an old model, must load again the Femuss problemtype and select 'transform' to transform the old-data of the model to the new-data definition of the problemtype.

Re: problem in condition in lines in Gid 14.1, 15.0, 15.1

Posted: Thu Feb 11, 2021 9:19 am
by jbaiges
Muchas gracias!