Hi Chris,
OK, I got python meep working in the pmp environment. The problem
turned out to be loading the environmental variables, LDFLAGS, CPPFLAGS,
LD_LIBRARY_PATH, with references to /usr/local/openmpi in my ~/.bashrc
file. These environmental variables were used to install scheme
parallel meep.
The mpirun command was (and is) pointing to the correct mpirun command
in the pmp environment, but I was still getting the MPI error. When I
commented out the relevant lines in my .bashrc file and re-ran .bashrc,
the python parallel meep started working as expected.
This experience might prove useful for other users who have defined
these environmental variables in their .bashrc file.
Best regards,
John
On 06/08/2018 15:45, Christopher Hogan wrote:
Hi John,
> I got the MPI error about init being disallowed, etc. I think this
problem has been observed and discussed earlier.
Can you elaborate on this? What was the exact error message you saw?
If the conda package is having MPI problems, it is likely because it's
trying to use a different MPI on the system rather than the one that
is bundled in the conda environment. I would double check that `which
mpirun` points to the mpirun in your conda environment, and make sure
you don't have any variables (PATH, LD_LIBRARY_PATH, etc.) pointing to
specific MPI installations in your .bashrc or similar.
For the second error, it looks like it's loading an older version of
Meep instead of the one in the conda environment. I would check your
.bashrc for anything pointing to an old meep and make sure PYTHONPATH
is unset. You can also run `ldd
~/.conda/envs/pmp_test/lib/python3.6/site-packages/meep/_meep.so` to
make sure it's linking with the correct libmeep.so. I verified that
both the 1.5 release, and the development package work on a clean
Ubuntu 18.04.
Chris
On Sat, Aug 4, 2018 at 9:01 AM, John Weiner <johwei...@gmail.com
<mailto:johwei...@gmail.com>> wrote:
Hello to all,
Having gotten the impression that future development of meep will
be essentially in python meep, I have taken the first tentative
baby steps to get python meep working on my pc Ubuntu box. Scheme
meep, both stand-alone and parallel, is now working on this box
running Ubuntu 18.04 LTS.
Using the CONDA package, I was able to install one-core python
meep without incident. It works.
Then I tried to install the parallel version using the
instructions at
https://meep.readthedocs.io/en/latest/Installation/#conda-packages
<https://meep.readthedocs.io/en/latest/Installation/#conda-packages>,
and in particular,
|conda create -n pmp -c chogan -c conda-forge pymeep-parallel
source activate pmp |
But when I tried to run a .py script using
mpirun -np 2 python foo.py,
I got the MPI error about init being disallowed, etc. I think this
problem has been observed and discussed earlier.
I then tried the nightly builds and was able to create the
environment pmp_test. When I entered the same mpirun command line
as above, I got the following message,
File "<string>", line 1, in <module>
File
"/home/john/.conda/envs/pmp_test/lib/python3.6/site-packages/meep/__init__.py",
line 8, in <module>
from . import _meep
ImportError:
/home/john/.conda/envs/pmp_test/lib/python3.6/site-packages/meep/_meep.so:
undefined symbol:
_ZN4meep6fields17add_volume_sourceENS_9componentERKNS_8src_timeERKNS_6volumeEPKcS9_St7complexIdE
I thought that maybe the first line in the foo.py file,
import meep as mp
was not correct. So I deleted it and ran the script again. Then
I got the error message,
Traceback (most recent call last):
File "straight_waveguide.py", line 2, in <module>
cell = mp.Vector3(16, 8, 0)
NameError: name 'mp' is not defined
which I take to mean that maybe the meep library is not "imported"
without the import command or there is some more serious problem
in the meep library.
I don't know what to do to move forward with python parallel meep
and would appreciate any help.
Best regards,
John
_______________________________________________
meep-discuss mailing list
meep-discuss@ab-initio.mit.edu <mailto:meep-discuss@ab-initio.mit.edu>
http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/meep-discuss
<http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/meep-discuss>
_______________________________________________
meep-discuss mailing list
meep-discuss@ab-initio.mit.edu
http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/meep-discuss