<html>
<head>
<meta content="text/html; charset=windows-1252"
http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<div class="moz-cite-prefix">Hi Andrea.<br>
I tested main in dune-fem-howto-1.4/.example-solver/src<br>
With petsc 3.3-p6 its compiling fine. Would be nice if you could
figure out what the compatibility problem<br>
is between the newer Petsc version and dune-fem.<br>
Andreas<br>
<big><big></big></big><br>
<br>
On 16/07/14 17:09, Sacconi, Andrea wrote:<br>
</div>
<blockquote
cite="mid:EC7DA3C0917A914BAFB620BB60189EBD14633203@icexch-m2.ic.ac.uk"
type="cite">
<pre wrap="">Hi all,
I just installed petsc 3.5.0, and I was curious to see how to use it with dune-fem-1.4.0.
So I tried to play with one of the examples in the howto, but unfortunately I got this compilation error:
In file included from main.cc:43:0:
/usr/local_machine/dune-2.3.1/dune-fem-1.4.0/dune/fem/misc/petsc/petsccommon.hh: In function ‘void Dune::Petsc::initialize(bool, int&, char**&, const char*, const char*, bool)’:
/usr/local_machine/dune-2.3.1/dune-fem-1.4.0/dune/fem/misc/petsc/petsccommon.hh:143:51: error: invalid conversion from ‘Dune::Petsc::ErrorCode (*)(MPI_Comm, int, const char*, const char*, const char*, Dune::Petsc::ErrorCode, PetscErrorType, const char*, void*) {aka int (*)(ompi_communicator_t*, int, const char*, const char*, const char*, int, PetscErrorType, const char*, void*)}’ to ‘PetscErrorCode (*)(MPI_Comm, int, const char*, const char*, PetscErrorCode, PetscErrorType, const char*, void*) {aka int (*)(ompi_communicator_t*, int, const char*, const char*, int, PetscErrorType, const char*, void*)}’ [-fpermissive]
::PetscPushErrorHandler( &ErrorHandler, 0 );
^
In file included from /usr/local_machine/petsc-3.5.0/include/petscsys.h:1525:0,
from /usr/local_machine/petsc-3.5.0/include/petscbag.h:4,
from /usr/local_machine/petsc-3.5.0/include/petsc.h:5,
from /usr/local_machine/dune-2.3.1/dune-fem-1.4.0/dune/fem/misc/petsc/petsccommon.hh:62,
from main.cc:43:
/usr/local_machine/petsc-3.5.0/include/petscerror.h:352:29: error: initializing argument 1 of ‘PetscErrorCode PetscPushErrorHandler(PetscErrorCode (*)(MPI_Comm, int, const char*, const char*, PetscErrorCode, PetscErrorType, const char*, void*), void*)’ [-fpermissive]
PETSC_EXTERN PetscErrorCode PetscPushErrorHandler(PetscErrorCode (*handler)(MPI_Comm,int,const char*,const char*,PetscErrorCode,PetscErrorType,const char*,void*),void*);
^
In file included from main.cc:43:0:
/usr/local_machine/dune-2.3.1/dune-fem-1.4.0/dune/fem/misc/petsc/petsccommon.hh: In function ‘void Dune::Petsc::KSPSetOperators(KSP, Mat, Mat, MatStructure)’:
/usr/local_machine/dune-2.3.1/dune-fem-1.4.0/dune/fem/misc/petsc/petsccommon.hh:215:138: error: too many arguments to function ‘PetscErrorCode KSPSetOperators(KSP, Mat, Mat)’
inline void KSPSetOperators (KSP ksp, Mat Amat, Mat Pmat, MatStructure flag ) { ErrorCheck( ::KSPSetOperators( ksp, Amat, Pmat, flag ) ); }
Is the howto currently working?
If someone of you does manage to use it, which version of petsc do you use? Could it be a problem of compatibility?
Thanks in advance!
Andrea
__________________________________________________________
Andrea Sacconi
PhD student, Applied Mathematics
AMMP Section, Department of Mathematics, Imperial College London,
London SW7 2AZ, UK
<a class="moz-txt-link-abbreviated" href="mailto:a.sacconi11@imperial.ac.uk">a.sacconi11@imperial.ac.uk</a>
_______________________________________________
dune-fem mailing list
<a class="moz-txt-link-abbreviated" href="mailto:dune-fem@dune-project.org">dune-fem@dune-project.org</a>
<a class="moz-txt-link-freetext" href="http://lists.dune-project.org/mailman/listinfo/dune-fem">http://lists.dune-project.org/mailman/listinfo/dune-fem</a>
</pre>
</blockquote>
<br>
</body>
</html>