abacusorg / abacusutils

Python code to interface with halo catalogs and other Abacus N-body data products

Home Page:https://abacusutils.readthedocs.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

prepare_sim.main isssues

schwartzw opened this issue · comments

Hi all,

I am trying to use AbacusHOD, and to do so I must first run:

python -m abacusnbody.hod.prepare_sim --path2config /script/hod/config/abacus_hod.yaml

However when I do so, I get an error saying:

PermissionError: [Errno 13] Permission denied: '/mnt/marvin1'

I don't understand where this error is coming from or how to fix it. Do I have the correct .yaml file or it a different one I am supposed to use? I've also tried uninstalling and reinstalling abacusutils to see if that could help, but that doesn't seem to help. As always, if more info is need to address this issue, I will be happy to provide it.

Best,
Weston

You'll need to update the paths in the YAML file to point to directories on your local filesystem. /mnt/marvin1 only exists on our local development system.

I edited the YAML file to have the subsample data outputted to a directory I made called 'cleaned_summit'. When I run the same line I get the same error, only this time it says:

PermissionError: [Errno 13] Permission denied: '/cleaned_summit'

It looks like you specified /cleaned_summit as the path, which is an absolute path because it begins with a slash. You probably want something like /mnt/storage/schwartzw/cleaned_summit, or whatever the absolute path is to the directory you created.

Ah, I see. Changing it from an absolute path to a regular one seemed to work. Thank you for all of the help, I greatly appreciate it!

Great! Just to be clear, both are absolute paths (both begin with /), but /cleaned_summit just refers to a path that doesn't exist. A relative path like ./cleaned_summit might have worked, but it's definitely not recommended because then the output directory will depend on the current working directory of your shell.