> > [Daniel reports that his answers get blocked, so I'll post for him here, > omitting pictures.]
Hi Wolfgang, I calculated the eigenvalues and the condition number. It seems that it is ok to collapse one vertex and transform the quad into a triangle. Interestingly, applying the constraints with AffineConstraint does not change the condition number. Even if I fix all the dofs with add_line() the condition number doesn't change. I collapsed one vertex in a 3D simulation with NedelecSZ and the solution and the condition number are ok. I have to do more tests with NelelecSZ. In the simple simulation from step-6. I collapse one vertex and then if I move another vertex and transform the quad into a line the surface becomes very small and the condition number becomes very large. Note that I didn't completely squeeze the quad into a line. If the surface is zero, then as expected the simulation breaks. This means that it is ok to collapse a vertex as long as the surface/volume does not become too small? According to this publication it is ok to collapse verticeshttps://www.sciencedirect.com/science/article/pii/S1877705814016713 Enclosed you can find my program and the python script to analyze the data. To run it: ./collapse_vertex>matrix.txt You can also find enclosed the meshes. I added the condition number in the image for each mesh. Below you can find the detailed results : - Original grid: * surface_ratio = 1 * eigenvalues = [ 0.666667 0.666667 0.666667 0.666667 1.17200912 1.33333 1.33333 1.33333 1.33333 1.33333 1.33333 1.33333 1.33333 1.33333 1.33333 1.33333 1.33333 9.13881996 9.13881996 9.42425 12.79450083 21.95213004 21.95213004 31.83336 58.59408006] * condition_number = 80 - Collapse vertex a * surface_ratio = 0.5 * eigenvalues = [ 0.666667 0.666667 0.666667 0.666667 1.17122833 1.33333 1.33333 1.33333 1.33333 1.33333 1.33333 1.33333 1.33333 1.33333 1.33333 1.33333 1.33333 8.92744864 10.04655013 12.5454928 13.98137723 20.47958898 31.17725707 45.95448961 185.24586722] * condition_number = 3e+02 - Collapse vertex a, move vertex b * surface_ratio = 0.1 * eigenvalues = [ 0.666667 0.666667 0.666667 0.666667 1.16902972 1.33333 1.33333 1.33333 1.33333 1.33333 1.33333 1.33333 1.33333 1.33333 1.33939 1.52754 1.5336 5.11586123 10.46272767 12.09280555 14.54544349 22.42497592 31.57412136 50.19072911 264.78640594] * condition_number = 4e+02 -Collapse vertex a, almost collapse vertex b * surface_ratio = 1e-8 * eigenvalues = [ 6.66667000e-01 6.66667000e-01 6.66667000e-01 6.66667000e-01 1.21307648e+00 1.33333000e+00 1.33333000e+00 1.33333000e+00 1.33333000e+00 1.33333000e+00 1.33333000e+00 1.33333000e+00 1.33333000e+00 1.33333000e+00 1.35897000e+00 1.66666000e+00 1.69231000e+00 8.83186491e+00 1.10689839e+01 1.37682911e+01 1.98164659e+01 2.84090528e+01 4.79480606e+01 2.92923117e+05 1.70718688e+06] * condition_number = 3e+06 Best, Dani -- The deal.II project is located at http://www.dealii.org/ For mailing list/forum options, see https://groups.google.com/d/forum/dealii?hl=en --- You received this message because you are subscribed to the Google Groups "deal.II User Group" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/dealii/9466bf56-4441-4925-9c76-fd88c05beb8b%40googlegroups.com.
