I have the following code:
//---------------------------------------------------Solving for etaf
varf ahKf(etafK, varphi)
= int2d(Th[K])(kappa*grad(etafK)'*grad(varphi));
varf fhKf(etafK, varphi)
= int2d(Th[K])(f*varphi);
varf bhKf(vf, varphi)
= int2d(Th[K])(vf*varphi);
// local matrices for etaf
matrix Akf = ahKf(VhK,VhK);
matrix Bkf = bhKf(V0,VhK);
real[int] Fkf(ndofVhK);
Fkf = fhKf(0, VhK);
// block matrix LHS
matrix AAkf = [ [ Akf, Bkf ],
[ Bkf', 0 ] ];
real[int] rhsetaf(ndofVhK+nDoFu0), soletafk(ndofVhK+nDoFu0);
real[int] blmf(nDoFu0), lmf(nDoFu0);
//second equation to hybrid form equal 0
blmf = 0;
// block vector RHS
rhsetaf = [ Fkf, blmf ];
set(AAkf, solver=sparsesolver);
soletafk = AAkf^-1*rhsetaf; //solve linear system
[etafK[], lmf] = soletafk; //set the value
cout << "etaF elem " << K << ": " << etafK[] << "\n";
but it keeps giving me the following error:
Error umpfack umfpack_di_numeric status 1
Error umfpack_di_solve status 1
etaF elem 0: 6
-0.3611303349 -0.3611303349 -0.09386227966 -0.09386227966 0.1877245593
-0.251181056
I already tried to change the solver to
set(AAkf,solver="UMFPACK64")
but the error remains. Does anyone have any ideia what it could be?