[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [femm] triangle




To Dear All:


How are you?

Triangle doesn't do any special ordering on its own--it just numbers >nodes in the order that it generates them. Consequently, there is no >banding at all in the finite element matrices generated from Triangle >meshes if you don't do some renumbering.

I first am telling that I don't have Dr. Hoole's book's with me, so I am careful about what I am going to ask. (I want to buy this book, but this book has too many typos.)


Is characteristic of banding matrix (and sparse matrix) inherent nature of finite element method from its matrix build-up regardless of what kind of mesh generation program is used? Does "renumbering
methods" absolutely need to make matrix banding or does it just help to speed up the matrix calculation by making already banded matrix more banding ?


Any comment will be appreciated.
Thanks
Sincerely,
SE-HO YOU


smaïl mezani wrote:


Hello everybody,
I am Smaïl Mezani and I just join the femmgroup.
I use femm "triangle" to generate meshes whom
properties are contained in .node, .ele, .edge files.

I constatate that the numbring of the nodes is not
optimized (ie. bandwidth is large).

So, how can we minimize the badwidth by directly using
femm "triangle" without any need to other routines?

By for now.


Triangle doesn't do any special ordering on its own--it just numbers nodes in the order that it generates them. Consequently, there is no banding at all in the finite element matrices generated from Triangle meshes if you don't do some renumbering. Since Triangle was developed by Jonathan Shewchuk independent of femm, I didn't want to mess around a lot with what triangle is doing internally, in part due to licensing issues with modifications to triangle. I just wrote a wrapper that makes triangle run as a dialog-based application.
Now, femm doesn't use a direct solver, so a banded matrix isn't essential. However, I found through trial and error that solution times are about twice as fast if the matrix is renumbered--I think this has to do with making the SSOR preconditioner a more accurate pseudoinverse. Anyhow, I implemented the Cuthill-McKee renumbering algorithm, which is sort of the granddaddy of renumbering methods (see femmsrc\fkn\cuthill.cpp). It generally doesn't yield the best possible banding, but it does a pretty good job, runs really fast, and is fairly easy to understand and code. I used Hoole's "Computer-aided analysis and design of electromagnetic devices" as a reference when I wrote the renumbering code that is part of femm.


Dave.




_________________________________________________________________ Get your FREE download of MSN Explorer at http://explorer.msn.com/intl.asp

 

smaïl mezani wrote:

Hello everybody,

I am Smaïl Mezani and I just join the femmgroup.
I use femm "triangle" to generate meshes whom
properties are contained in .node, .ele, .edge files.

I constatate that the numbring of the nodes is not
optimized (ie. bandwidth is large).

So, how can we minimize the badwidth by directly using
femm "triangle" without any need to other routines?

By for now.
 

Triangle doesn't do any special ordering on its own--it just numbers nodes in the order that it generates them.  Consequently, there is no banding at all in the finite element matrices generated from Triangle meshes if you don't do some renumbering.  Since Triangle was developed by Jonathan Shewchuk independent of femm, I didn't want to mess around a lot with what triangle is doing internally, in part due to licensing issues with modifications to triangle. I just wrote a wrapper that makes triangle run as a dialog-based application.

Now, femm doesn't use a direct solver, so a banded matrix isn't essential.  However, I found through trial and error that solution times are about twice as fast if the matrix is renumbered--I think this has to do with making the SSOR preconditioner a more accurate pseudoinverse.  Anyhow, I implemented the Cuthill-McKee renumbering algorithm, which is sort of the granddaddy of renumbering methods (see femmsrc\fkn\cuthill.cpp).  It generally doesn't yield the best possible banding, but it does a pretty good job, runs really fast, and is fairly easy to understand and code.  I used Hoole's "Computer-aided analysis and design of electromagnetic devices" as a reference when I wrote the renumbering code that is part of femm.

Dave.
 

Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service.