-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 18/02/15 20:40, Eike Mueller wrote:
Hi Lawrence,
I fixed this now, see in particular changes to the MixedArray class in commit
https://github.com/firedrakeproject/firedrake-helmholtzsolver/commit/65609b0... <https://github.com/firedrakeproject/firedrake-helmholtzsolver/commit/65609b0237ef34b182c70e3075578077982a95b3>
However, this only works sequentially, if I run on more than one processor it crashes with the error below.
Ah, sorry, the size of the new subset vector is determined from the global size of the IS you pass in. So you need to create it on COMM_WORLD, not COMM_SELF (or indeed, ideally the comm of the vec you're going to be subsetting). diff --git a/source/mixedarray.py b/source/mixedarray.py index c79aba5..79f1b5b 100644 - --- a/source/mixedarray.py +++ b/source/mixedarray.py @@ -38,7 +38,7 @@ class MixedArray(object): iset = PETSc.IS().createStride(max_idx-min_idx, first=global_min_idx, step=1, - - comm=PETSc.COMM_SELF) + comm=v.comm) self._iset.append(iset) def range(self,i): Should do the trick I think. Note in passing that GAMG is currently broken in PETSc master. See this thread https://lists.mcs.anl.gov/mailman/htdig/petsc-dev/2015-February/016950.html. So it's probably a bad idea to do any runs for the gamg solver unless you revert commit 25a145 temporarily. A fix is claimed to be on the way, but I don't think it's arrived yet. Lawrence -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQEcBAEBAgAGBQJU5bPRAAoJECOc1kQ8PEYvBUoH/3h5p0GSAs5XNQA0pRr09b8i zE9duxn28A5GacAKpO18YqRbaCC9RFos3Y5x0AYodrb08N4fjHJMI/EhyBU1Sgus zF6KuutF0LCO4fKU5cMMeUl6L8Nt0mlP15JzYSBrfIV1oJM7P0C8UyC5mzIlqA+w YqVgsq3Jm+i3nn+MQcStltU7ynYsdEFaf6zyIUB0bFdobaataZbPfBQ0u0eHL8/q qsP2yD22suzIskANNyNS2eQLdC1laWhy88Q35Q2Mt+pUZ985TqvBSfHHe7MsfdXn gRcUZ/uWa+p+n46PENgwAWoOwNwFvpxxYGZOmUuz1Quw4TZDpS87TLMFKvj28qc= =hHL5 -----END PGP SIGNATURE-----