FreeFem / FreeFem-sources

FreeFEM source code
https://freefem.org/
Other
794 stars 192 forks source link

An issue for MUMPS in freefem++-4.0-beta.tar.gz #73

Closed zhaog6 closed 5 years ago

zhaog6 commented 5 years ago

Dear Professor,

I do a simple test to solve block matrix equations using MUMPS in freefem++-4.0-beta.tar.gz(Source version), and find that it always report errors. But it works well when using MUMPS in FreeFem++-4.0-MacOS_10.11.pkg. I don't understand reasons behind the problem. (In running, the code would report error no matter which FreeFem++-mpi test_MUMPS.edp or FreeFem++ test_MUMPS.edp)

///////////////////////////////////////////////////////////////
/**
 * @file: test_MUMPS.edp
 * @brief: to test MUMPS solver
 */
///////////////////////////////////////////////////////////////

load "MUMPS"

matrix A = [[2, 0],
            [0, 2]];
matrix B = [[1, 0],
            [0, 1]];
matrix C = [[8, 0],
            [0, 8]];
matrix F = [[A, B],
            [B, C]];
real[int] b = [1, 0, 1, 0];
set(F, solver=sparsesolver);
real[int] u = F^-1 * b;
cout << u << endl;
frederichecht commented 5 years ago

Dea All, first the tar.gz version 4 beta is old, possibly we correct some bug in it.

it works on my mac (remark under windows you must use

Last login: Sun Feb 17 21:46:07 on ttys001 MBP-FH5:~ hecht$ cd /Users/hecht/Desktop; cd '/Users/hecht/Desktop'; /usr/local/ff++/openmpi-2.1/4.0/bin/FreeFem++ 'uuu.edp' -glut ffglut ;exit; -- FreeFem++ v 4.000000 (date Jeu 14 fév 2019 13:35:44 CET) Load: lg_fem lg_mesh lg_mesh3 eigenvalue 1 : 2 : mesh Th=square(4,4); 3 : fespace Vh(Th,P1); 4 : Vh u,v,uold; 5 : solve laplace(u,v)=int2d(Th)(dx(u)*dx(v))+on(1,u=0);Problem : ----------------------------- 360 dim = 2 0x7fc557628118

6 : Th=square(4,4);
7 : laplace;
8 : uold[]=u[];
9 : Th=square(8,8);

10 : cout << u[].n << endl; 11 : laplace; 12 : cout << u[].n << endl; 13 : real L2error=int2d(Th)((u-uold)*(u-uold)); 14 : sizestack + 1024 =1528 ( 504 )

-- Square mesh : nb vertices =25 , nb triangles = 32 , nb boundary edges 16 Error umpfack umfpack_di_numeric status 1 Error umfpack_di_solve status 1 -- Solve : min nan max nan -- Square mesh : nb vertices =25 , nb triangles = 32 , nb boundary edges 16 Error umpfack umfpack_di_numeric status 1 Error umfpack_di_solve status 1 -- Solve : min nan max nan -- Square mesh : nb vertices =81 , nb triangles = 128 , nb boundary edges 32 25 Error umpfack umfpack_di_numeric status 1 Error umfpack_di_solve status 1 -- Solve : min 0 max 0 81 times: compile 0.004656s, execution 0.012376s, mpirank:0 ######## We forget of deleting 0 Nb pointer, 0Bytes , mpirank 0, memory leak =4808224 CodeAlloc : nb ptr 2909, size :370928 mpirank: 0 Ok: Normal End logout Saving session... ...copying shared history... ...saving history...truncating history files... ...completed.

Le 18 févr. 2019 à 05:30, zhaog6 notifications@github.com a écrit :

Dear Professor,

I do a simple test to solve block matrix equations using MUMPS in freefem++-4.0-beta.tar.gz(Source version), and find that it always report errors. But it works well when using MUMPS in FreeFem++-4.0-MacOS_10.11.pkg. I don't understand reasons behind the problem. (In running, the code would report error no matter which FreeFem++-mpi test_MUMPS.edp or FreeFem++ test_MUMPS.edp)

/////////////////////////////////////////////////////////////// /**

  • @file: test_MUMPS.edp
  • @brief: to test MUMPS solver */ ///////////////////////////////////////////////////////////////

load "MUMPS"

matrix A = [[2, 0], [0, 2]]; matrix B = [[1, 0], [0, 1]]; matrix C = [[8, 0], [0, 8]]; matrix F = [[A, B], [B, C]]; real[int] b = [1, 0, 1, 0]; set(F, solver=sparsesolver); real[int] u = F^-1 * b; cout << u << endl;

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/FreeFem/FreeFem-sources/issues/73, or mute the thread https://github.com/notifications/unsubscribe-auth/AFb2jDKbLkFIT1_EOAedVLk9EOz1IMUOks5vOixggaJpZM4bAEjO.