Syntax
AFL=FLatEL(FL,EL,i)
Input Parameter
FL : | | Facet list |
EL : | | Edge list |
i : | | Index in edge list |
Output Parameter
Copyright 2012-2025 Tim C. Lueth. All rights reserved. The code is the property of Tim C. Lueth and may not be redistributed or modified without explicit written permission. This software may be used free of charge for academic research and teaching purposes only. Commercial use, redistribution, modification, or reverse engineering is strictly prohibited. Access to source code is restricted and granted only under specific agreements. For licensing inquiries or commercial use, please contact: Tim C. Lueth
Algorithm (Workflow)
This algorithm is designed to find all facets from a given facet list (FL) that are attached to a specific edge in an edge list (EL). The function is named FLatEL
and it returns an attached facet list (AFL).
Input Parameters
- FL: The facet list, which is a matrix where each row represents a facet defined by its vertices.
- EL: The edge list, which is a matrix where each row represents an edge defined by its vertices.
- i: The index in the edge list, indicating the specific edge for which attached facets are to be found.
Output
- AFL: The attached facet list, which contains all facets from the facet list that are connected to the specified edge.
Algorithm Steps
- Identify facets in the facet list (FL) that contain both vertices of the edge specified by index
i
in the edge list (EL). This is done using the ismember
function, which checks for membership of the edge vertices in each facet.
- Calculate a logical index list (IL) where each element is
true
if the corresponding facet contains both vertices of the edge, and false
otherwise. This is achieved by summing the membership results across each row and checking if the sum is greater than or equal to 2.
- Multiply the logical index list (IL) by a matrix of ones with the same number of columns as FL, and element-wise multiply this result with FL to filter out the relevant facets.
- Use the
unique
function to remove duplicate rows from the resulting matrix, ensuring that each facet is listed only once.
- Check if the first row of the resulting matrix is a zero row (indicating no valid facets were found) and remove it if necessary.
Algorithm explaination created using ChatGPT on 2025-08-18 21:54. (Please note: No guarantee for the correctness of this explanation)
Last html export of this page out of FM database by TL: 2025-09-21