<br><br><p>Your faithfully:</p><p>     Last e-mail has some literal error, sorry~</p><p>     program <a href="http://www.mcs.anl.gov/petsc/petsc-current/src/ksp/ksp/examples/tutorials/ex3.c.html" target="_blank"><u><font color="#0066cc">src/ksp/ksp/examples/tutorials/ex3.c.html</font></u></a> is about Bilinear elements on the unit square for Laplacian.</p><p>     After preallocation using    </p><p>     "ierr  = MatMPIAIJSetPreallocation(A,<font color="#ff0000">9</font>,NULL,<font color="#ff0000">5</font>,NULL);CHKERRQ(ierr); <font color="#ff0000">/* More than necessary */<font color="#000000">",</font></font><br></p><p>     Results of commands of "mpiexec -n<font color="#ff0000"> 2</font> ./ex3" and "mpiexec -n <font color="#ff0000">3</font> ./ex3" are "Norm of error 2.22327e-06 Iterations 6" and "Norm of error 3.12849e-07 Iterations 8".
 
  Both results are good!</p><p>     However, if I use "mpiexec -n <font color="#ff0000">4</font> ./ex3" or <font color="#ff0000">5,6,7</font>...precesses, error "[2]PETSC ERROR: New nonzero at (4,29) (here is for process 4, other positions for different processes) caused a malloc!" appear!. For me, this error is unbelievable, because first, the preallocation is more than necessary,how can the new malloc appear? Second, the global number 4 point originally has no neighbor vertices whose global number is 29! This error has tortured me for a long time.</p><p>     This error seems meaningless, however, my recent 3d finite element method cannot be caculated by more processes owing to the new nonzero malloc error! And this is why I want to use 4 or much more processes to compute ex3.c.</p><p>     Thank you for all previous assistence and hope you have a good life!</p><p>your sin
 
 cerely</p><p>LV CHAO</p><p>2014/3/21<br><span></span></p><br><br><br>