WarpX FAQs

From Warpx

Jump to: navigation, search

Here is a list of frequently asked questions about WarpX. If you have suggestions for others please send an email to Uri Shumlak or Ammar Hakim.

Contents

Where do I find build instructions for WarpX?

On the WarpX Build Instructions page.

Where do I learn basics of subversion?

The most basic command for subversion is checking out code

 svn co svn+ssh://warpx@psicenter.org/warpx/trunk warpx

This will check out a copy of WarpX and put it into a directory called warpx. Once you finish editing code, you can check it in from the warpx directory

 svn ci

Do not forget to svn add any new files you have created! For more information see the Subversion Book. It is free and very comprehensive.

What to do if I forget my subversion password?

Go to your home directory and cd to::

 cd .subversion/auth/svn.simple

One of the files in this directory will have your password. Just look!

How do I create a branch and merge when I am done?

Decide on a good branch name. It should be short but descriptive. Then create the branch by doing::

 svn cp svn+ssh://warpx@psicenter.org/warpx/trunk svn+ssh://warpx@psicenter.org/warpx/branches/grd_pic_2008

Then checkout the new branch::

 svn co svn+ssh://warpx@psicenter.org/warpx/branches/grd_pic_2008

If you already have a working trunk directory you can switch to the new branch without checking out the branch. First, cd to the top of your trunk directory. Then do:

 svn sw svn+ssh://warpx@psicenter.org/warpx/branches/grd_pic_2008

The advantage of the switch is that you do not need to compile the code from scratch as the already compile code can be used.

You should now set a svn property to remind you of which version you branched at. Say you branched at revision 1525. Then from the grd_pic_2008 directory do

 svn pe svn:mergeinfo .

This will bring up an editor and you should type the revision number when you branched. A message like "Branch created on rev 1525" is sufficient. Now commit

 svn ci

You can now work in your branch and commit to it regularly. Once you are ready to merge check in your changes. Note down your latest revision, say 1550. Then determine the revision you branched by quering the property you set when creating the branch

svn pg svn:mergeinfo
Branch created on rev 1525

Then checkout the the latest trunk directory. From it merge by doing

 svn merge -r 1525:1550 svn+ssh://warpx@psicenter.org/warpx/branches/grd_pic_2008 .

You will see messages as the merge occurs. If there are conflicts you will need to resolve them by hand. Refer to the Subversion Book for details. Once the conflicts have been resolved, commit to the trunk. In genral you should remember to delete your branch once you are done with it.

How do I create a patch and apply it?

First cd to the top of your WarpX directory and do:

svn diff > patchfile.diff

Then you can send this diff file to someone else. If you have a patch from someone else you can apply the patch by doing:

patch -p0 -i patchfile.diff

Is there a Emacs style file which adheres to WarpX coding standards?

Yes. If you have checked out WarpX look in docs/dotemacs. Copy the contents of this file into your .emacs file.

Is there a way for me to navigate the code using Vim or Emacs?

Yes. Run ebrowse from the warpx/src directory

 ebrowse */*.h */*.cpp

Then open the BROWSE file with emacs. This only works with emacs. You can also use the ctags utility to generate a TAGS file. Both emacs and vim support ctags. For emacs you can run ctags using::

 ctags -e --recurse=yes */

This will create TAGS for all the files in facets. Refer to TAGS documentation which comes with emacs and vim on how to use tags.

A heavy-weight option is the Emacs Code Browser

How do I use the PBS scheduler?

To determine all the queues on your machine use.

qmgr –c “print server”
Personal tools