Author |
Message |
Jared Barber (jared_barber)
Member Username: jared_barber
Post Number: 40 Registered: 01-2007
| Posted on Friday, January 16, 2009 - 01:41 pm: | |
Hello, I have a code I run that calls FlexPDE for multiple situations. One of these situations I have attached because it seems like I have a disappearing boundary. If you unzip and unpack the tar archive and zipped file and then run "normflow" you'll see what appears to be an incomplete boundary/an incomplete exclude region. If, however, you fidgit a little bit with the external boundary by opening the file "c_bound_vars" and changing "yb = array(-4,-4" to, for instance, "yb = array(-4,-4.5" and then run the new program (of course one has to close and reopen flexpde as flexpde does not seem to automatically reload files that may have changed outside flexpde) everything works fine. Why the disappearing boundary on the exclude region? How do I fix it? If you'd let me know, that'd be great. Jared |
Marek Nelson (mgnelson)
Moderator Username: mgnelson
Post Number: 105 Registered: 07-2007
| Posted on Tuesday, January 20, 2009 - 07:26 pm: | |
This appears to be bug in FlexPDE - one that we are not sure yet how to fix. But there is a way to get around it by modifying your script (in the same way you mentioned, but much less of a change is needed.) Repeatedly during mesh generation, FlexPDE must inquire whether a point is inside or outside of the domain. It does this by running a line from "minus infinity" to the point and counting boundary crossings. In your case a point of inquiry is at exactly the same y-coordinate as a horizontal boundary line. FlexPDE is confused as to whether coincidence with a line counts as zero, one or two crossings and is erroneously deciding that a boundary segment should be excluded. We will put this on our list of needed fixes, but in the meantime, you can fix the problem by moving one of your points by a very small amount (the second entry in the yb array.) Change the y-coordinate of the point from -4.0 to -4.00001 and the error goes away. |
|