// pcell.fe // Surface Evolver datafile for fundamental cell for Schwartz' P minimal surface // Fundamental region is a tetrahedron, 1/48 of a cube. // Surface is stabilized with a volume constraint, since we know the // P-surface equipartitions volume. // Programmer: Ken Brakke, brakke@susqu.edu, http://www.susqu.edu /* Commands: gogo - typical evolution showfull - display unit cell showfour - show four unit cells, as on web page transforms off - show just single fundamental region setcolor - to color one side yellow, as in my web page. To turn off showing all the edges in the graphics display, hit the "e" key in the graphics window. */ CONSTRAINT 1 // top FUNCTION: X3 = 1 CONTENT C1: 0.5 *X2 C2: -0.5 *X1 C3: 0 CONSTRAINT 2 // right side FUNCTION: X2 - X1 = 0 CONSTRAINT 3 // left side FUNCTION: -X2 = 0 CONSTRAINT 4 // front bottom FUNCTION: X1 - X3 = 0 CONTENT C1: X1 *X2 /3 C2: -X1 ^2/3 C3: 0 // for displaying multiple copies; see commands showfull and showfour below. view_transform_generators 4 1,0,0,0 0,1,0,0 0,0,-1,2 0,0,0,1 0,1,0,0 1,0,0,0 0,0,1,0 0,0,0,1 1,0,0,0 0,-1,0,0 0,0,1,0 0,0,0,1 0,0,1,0 0,1,0,0 1,0,0,0 0,0,0,1 vertices 1 0.5 0 1 constraints 1 3 2 0.5 0.5 1 constraints 1 2 3 0.5 0.5 0.5 constraints 2 4 4 0.5 0 0.5 constraints 3 4 5 0 0 0 fixed bare // for outlining tetrahedron 6 0 0 1 fixed bare 7 1 0 1 fixed bare 8 1 1 1 fixed bare edges 1 2 1 constraint 1 2 3 2 constraint 2 3 4 3 constraint 4 4 1 4 constraint 3 5 5 6 fixed bare// for tetrahedron display 6 5 7 fixed bare 7 5 8 fixed bare 8 6 7 fixed bare 9 6 8 fixed bare 10 7 8 fixed bare facets 1 4 3 2 1 bodies 1 1 volume 1/12 read hessian_normal // command to show full cell showfull := { transform_expr "dcbdcbdcb"; transforms on; show edge where valence == 1; } // command to show four full cells showfour := { transform_expr "adadcbdcbdcb"; transforms on; show edge where valence == 1; } setcolor := { set facet backcolor yellow } // To show just one fundamental region, do "transforms off". // To show tetrahedron outline again, do "show edges". // A typical evolution gogo := { g 5; r; g 5; r; g 5; r; g 10; u; refine edge where on_constraint 2; refine edge where on_constraint 4; hessian; hessian; }