Skip to content
Go to file


Failed to load latest commit information.

The Pencil Code

The Pencil Code moved to GitHub on 19 April 2015. It was previously hosted at Google Code.

In order to checkout the code with Subversion, use the command

svn checkout pencil-code --username <github-username>

where <github-username> is your GitHub username.

To get started, run one of the samples:

unix>  cd pencil-code
unix>  source sourceme.csh  [or .]
unix>  cd samples/conv-slab
unix>  mkdir data

To set up the symbolic links and compile the code:

unix>  pc_setupsrc
unix>  pc_build  [ -f /path/to/config/file.conf ]

To create the initial condition and run the code:

unix>  pc_start  [ -f /path/to/config/file.conf ]
unix>  pc_run    [ -f /path/to/config/file.conf ]

See pencil-code/config/hosts/*/*.conf for sample config files. For more details, see the manual in the doc/ directory (also available here).

If you are using bash and you do not want to "source" on each session, you can insert the following into your .bashrc and/or .bash_profile:

export PENCIL_HOME=$HOME/pencil-code  [or wherever you have the code]
_sourceme_quiet=1; . $PENCIL_HOME/; unset _sourceme_quiet

If you are using csh insert the following into your .cshrc:

setenv PENCIL_HOME $HOME/pencil-code  [or wherever you have the code]
source $PENCIL_HOME/sourceme.csh


List of Contributors

  • Around 100 people have contributed to various extent during the nearly 20 years of Pencil Code history.
  • The current list of contributors shows the temporal check-in activity of the those who stayed connected with the code over the various host changes (Nordita 2001-2007, Google Code 2007-2015, and Github since 2015). Some additional contributors are also listed in the manual.

How to contribute to the Pencil Code

  • For all changes to the code, make sure the auto-test still runs

  • If you have write access: check in your changes and make sure you can fix possible problems emerging on as well as the hourly and daily auto-tests.

  • If you have only read access: fork this repository and use pull requests to contribute.

Code of Conduct