Welcome, Guest
Username: Password: Remember me

TOPIC: A question about connectic

A question about connectic 7 years 5 months ago #24307

  • special_20
  • special_20's Avatar
Hello all,

Is there a function within Telemac that allows for knowing, given a node number, the other nodes connected to this node ? For example let's call F this function, if the node 5 is connected to nodes 1,3 and 4 then F(5) would return : (/1,3,4/)

Regards :cheer:
The administrator has disabled public write access.

A question about connectic 7 years 5 months ago #24308

  • c.coulet
  • c.coulet's Avatar
  • OFFLINE
  • Moderator
  • Posts: 3630
  • Thank you received: 1010
Hi Sébastien

I'm not fully sure but I think there is no such function in Telemac.
Each time this kind of search is done, it seems to me that there was a loop on elements...
Nevertheless, it could be great to have this kind of official function in the code.
Regards
Christophe
The administrator has disabled public write access.

A question about connectic 7 years 5 months ago #24309

  • special_20
  • special_20's Avatar
Thank you Christophe for this quick answer.

I guess there is no function returning the element number to which belongs a node or a function returning the number of the nodes that compose an element.
The administrator has disabled public write access.

A question about connectic 7 years 5 months ago #24311

  • c.coulet
  • c.coulet's Avatar
  • OFFLINE
  • Moderator
  • Posts: 3630
  • Thank you received: 1010
Hi

You're right for the first point, there is no function which return the element number to which belongs a node maybe because the answer is not unique.
But there is an array IKLE which gives you for each element the number of the nodes which belongs to this element...

regards
Christophe
The administrator has disabled public write access.

A question about connectic 7 years 5 months ago #24312

  • special_20
  • special_20's Avatar
Ah OK, thank you, this is the beginning of the answer ! So as you said in your first answer, I guess the solution lies in a loop on the elements of the mesh.

Regards :cheer:
The administrator has disabled public write access.

A question about connectic 7 years 5 months ago #24318

  • pham
  • pham's Avatar
  • OFFLINE
  • Administrator
  • Posts: 1445
  • Thank you received: 556
Hello,

You have the array GLOSEG which gives the global numbers of the nodes of a segment. Think of loops on segments also, it may help.

Chi-Tuan
The administrator has disabled public write access.

A question about connectic 7 years 5 months ago #24343

  • jmhervouet
  • jmhervouet's Avatar
Hello,

There is definitely and intentionally no such data structure, it would be a compact matrix data structure, which is outdated by the Element By Element matrix storage and also by the edge-based storage. Every time you fancy an algorithm that needs to know the nodes around another node, you can find a more efficient algorithm that loops over the elements, where the connectivity table IKLE can be used. For example finding the nearest point around a point is best done with a loop on elements.

On the contrary we do have an array giving one element a point belongs to. It is used for starting the computation of trajectories in the module streamline. This array is in the BIEF_MESH structure. Given a mesh MESH, MESH%ELTCAR%I(N) is AN element to which belongs point N. Beware that in parallel you may get 0 if this element is in another subdomain.

With best regards,

Jean-Michel Hervouet
The administrator has disabled public write access.
Moderators: pham

The open TELEMAC-MASCARET template for Joomla!2.5, the HTML 4 version.