Revision 1 as of 2021-03-09 11:18:21
DRAFT documentation for EQUALIZE, to be refined after discussion with Bob.
|Deletions are marked like this.||Additions are marked like this.|
|Line 1:||Line 1:|
|= EQUALIZE *DRAFT*=||= EQUALIZE *DRAFT* =|
|Line 21:||Line 21:|
|== Using '''EQUALIZE''' ==||== Using EQUALIZE ==|
EQUALIZE takes an input shape file and rearranges the vertices in an attempt to make the plates in the shape model more uniform. For bodies with funky shapes, points in the shape may cluster, which can cause artifacts during progressive levels of densify. Spreading them out can help avoid spikes and pinching in the model. This utility was added for 67P; however, it has proved useful for eliminating spikes (i.e., clustered shape models cells) that appear to be a consequence of extensive trimming in DART tests. EQUALIZE was not part of the blessed code used by OSIRIS-REx; it is being added to the DART Updates branch specifically to deal with side effects of trimming.
EQUALIZE does not affect maplets; it only affects the shape model. Run EQUALIZE only if needed, typically in between densify steps after you discover a spike. If you do use EQUALIZE, record it in the notes file.
EQUALIZE takes all of the points at one j of the face of the cube, computes the path length, and moves the points to more evenly space them along the path. After doing that to all the points, EQUALIZE does the same thing along i with fixed j. The program will move every point on the edge, but not the corners that define the six faces of the cube.
SHAPEFILES/inputShape.TXT. EQUALIZE requires an input shape file, such as SHAPEFILES/SHAPE.TXT Replace "inputShape.TXT" with the name of the shape model you wish to EQUALIZE.
- SHAPEFILES/outputShape.TXT. The equalized shape, which you should give a useful name e.g. SHAPEFILES/SHAPE3_0.25mGSDmaplets_equalized_YYYYMMDD.TXT.
1. Invoke EQUALIZE and enter the desired input and output shapes. Replace "inputShape.TXT" and "outputShape.TXT" with the names of the files you are actually using.
EQUALIZE Input original shapefile name SHAPEFILES/inputShape.TXT Input equalized shapefile name SHAPEFILES/outputShape.TXT
ASK BOB - does the equalizing happen before the following questions? Are these next things "extras" that happen after the vertices are redistributed? Or are these part of that process such that the vertices are only redistributed afterwards?
2. Decide whether you wish to interpolate corners. Enter y for yes and n for no. Answering yes or no does not prompt you for additional inputs; this really is a simple yes/no question that requires no additional inputs. Choosing yes will interpolate the three vectors around the corner to obtain a new corner position. Terik will update this after asking Bob for more details. Need to clarify the criteria Bob to choose whether to answer y or n.
INTERPOLATE CORNERS? (y/n)
3. Decide whether you wish to interpolate edges. Enter y for yes and n for no. Answering yes or no does not prompt you for additional inputs; this really is a simple yes/no question that requires no additional inputs. Terik will update this after asking Bob for more details. Need to clarify the criteria Bob to choose whether to answer y or n, in addition to what this is actually doing.
INTERPOLATE EDGES? (y/n)
4. The program prints information to Terminal and then asks whether you wish to "shrink face?" Enter y for yes and n for no. Terik will update this after asking Bob for more details. Need to document what each column in the table is and what the rows correspond to. Also, are the faces that you enter the row number (e.g., the first face in the rows below would be 1)? (I have always run equalize using \nn\nn\nn.) Terik will update this after asking Bob for more details. Need to clarify the criteria Bob to choose whether to answer y or n, in addition to what this is actually doing.
0.00715 0.00190 8.24864 0.27270E-07 0.20343E-07 134 221 0.00544 0.00201 3.32848 0.20747E-07 0.71019E-08 389 374 0.00686 0.46355 1.49439 0.26185E-07 0.59948E-08 19 511 0.00507 0.40605 1.31625 0.19352E-07 0.32722E-08 20 9 0.00772 0.00161 3.13246 0.29461E-07 0.16684E-07 252 182 0.00469 0.51270 1.14856 0.17886E-07 0.15925E-08 434 490 SHRINK FACE? (y/n)
If you enter n, EQUALIZE ends. However, if you choose y, then the program asks you to
Enter the face that you wish to shrink. After doing that, the program loops back through the questions
INTERPOLATE CORNERS? (y/n) INTERPOLATE EDGES? (y/n) SHRINK FACE? (y/n)
and continues to go through those until you choose n in response to SHRINK FACE? (y/n). Need to clarify with Bob how he decides when to stop.