Project

General

Profile

Old LArSoftWiki » History » Version 65

Version 64 (Erica Snider, 12/11/2013 02:27 AM) → Version 65/136 (Erica Snider, 12/11/2013 03:48 AM)

If you are looking for the legacy cvs-based LArSoft site that was previously hosted on this site, note that *all content has been moved to "LArSoft cvs (legacy site) ":https://cdcvs.fnal.gov/redmine/projects/larsoft-cvs/wiki.*
If you are looking for the legacy svn-based LArSoft site, "go here":https://cdcvs.fnal.gov/redmine/projects/larsoftsvn/wiki.
---------------------------------------------------------------

{{>toc}}

This is the beta LArSoft redmine project and the future home of the LArSoft redmine project.

h1. LArSoftWiki (beta)

*This page is in beta and content is still under construction.* Will go live when the migration to git/cmake is completed.

The LArSoft software is designed to work for all planned and running liquid argon experiments at Fermilab. It is written in C++ and built on the "ROOT":http://root.cern.ch data analysis software, and the "art":https://cdcvs.fnal.gov/projects/art/wiki analysis framework supported by the Fermilab Scientific Computing Division for intensity frontier experiments.

To join the LArSoft mailing list, please follow these "instructions":http://listserv.fnal.gov/users.asp#subscribe%20to%20list using the list name LARSOFT.

h1. Preliminaries

* *Beta testers: [[ Special instructions for beta testers | read this first ]]*
* Fermilab computing accounts: see the instructions on the [[larsoftsvn:Fermilab Computing Access]] page if you need an account.
* See [[larsoftsvn:Load Balanced Access to General Purpose VMs]] for information on accessing experiment VMs at Fermilab (e.g., lbnegpvm0X, uboonegpvm0X, etc., collectively known as GPCF.).
* See the [[LArSoftWiki#documentation|documentation]] section for information on working with/developing LArSoft code, and using git, git flow, mrb and other tools you will need.
* The procedures and tools for building and developing software with this system are _completely different_ from those of the previous system based on svn repositories and the SoftRelTools build system. See the [[LArSoftWiki#documentation|documentation]] section for details.

h2. Where to find the software

* [[ The Fermilab core LArSoft installation ]]

* [[ Experiment-specific code and re-factoring ]]

In a standard LArSoft installation, the software is accessed via a set of re-locatable ups products, each of which corresponds to the code within a git repository. Each product and the associated repository contain LArSoft software components (i.e., SoftRelTool "packages") that are within the same layer of functionality. The products and repository read-write urls are the following (read-only access is available via http://cdcvs.fnal.gov/projects/<repo_name>):

|*Product
repository
name* | *repository url (all in Redmine)* | lxr link
(not yet avail) | Redmine browser |
|larcore| ssh://p-larcore@cdcvs.fnal.gov/cvs/projects/larcore | -- | "redmine":https://cdcvs.fnal.gov/redmine/projects/larcore/repository |
|lardata| ssh://p-lardata@cdcvs.fnal.gov/cvs/projects/lardata | -- | "redmine":https://cdcvs.fnal.gov/redmine/projects/lardata/repository |
|larevt | ssh://p-larevt@cdcvs.fnal.gov/cvs/projects/larevt | -- | "redmine":https://cdcvs.fnal.gov/redmine/projects/larevt/repository |
|larsim | ssh://p-larsim@cdcvs.fnal.gov/cvs/projects/larsim | -- | "redmine":https://cdcvs.fnal.gov/redmine/projects/larsim/repository |
|larreco| ssh://p-larreco@cdcvs.fnal.gov/cvs/projects/larreco | -- | "redmine":https://cdcvs.fnal.gov/redmine/projects/larreco/repository |
|larana | ssh://p-larana@cdcvs.fnal.gov/cvs/projects/larana | -- | "redmine":https://cdcvs.fnal.gov/redmine/projects/larana/repository |
|lareventdisplay| ssh://p-lareventdisplay@cdcvs.fnal.gov/cvs/projects/lareventdisplay | -- | "redmine":https://cdcvs.fnal.gov/redmine/projects/lareventdisplay/repository |
|larexamples| ssh://p-larexamples@cdcvs.fnal.gov/cvs/projects/larexamples | -- | "redmine":https://cdcvs.fnal.gov/redmine/projects/larexamples/repository |
|larpandora| ssh://p-larpandora@cdcvs.fnal.gov/cvs/projects/larpandora | -- | "redmine:https://cdcvs.fnal.gov/redmine/projects/larpandora/repository |
|larsoft | ssh://p-larsoft@cdcvs.fnal.gov/cvs/projects/larsoft
(A product used to set up the others with a single command. Contains the "setup" package.) | -- |
"redmine":https://cdcvs.fnal.gov/redmine/projects/larsoft/repository |

(The SoftRelTools-based packages in each product/repository can be found "here":https://cdcvs.fnal.gov/redmine/projects/larsoft-alpha/wiki/LarSoft_Product_List along with the approximate order of dependency.)

Although you can use @git clone <repository url>@ to download a copy of each repository to your local area, additional steps are needed to use, build or develop the software. See the [[LArSoftWiki#documentation|documentation]] section below for details.

h3. Re-factoring of experiment-specific software

Most experiment-specific code, fcl and gdml files have been removed from the @larcore@, @lardata@, @larevt@ and @larsim@ repositories and moved into beta versions of experiment-specific git repositories. (One exception to this statement is that the @DetId_t@ enum type, which effectively maps detector name strings to integers, remains in core LArSoft, pending migration to a new, string-based mechanism for storing and using this information. Other exceptions include fcl files that were not identified during the initial migration.) The beta versions of experiment-specific repositories are the following:

|*Product
repository
name* | *repository url (all in Redmine)* | lxr link
(not yet avail) | Redmine browser |
|lbnecode| ssh://p-lbnecode@cdcvs.fnal.gov/cvs/projects/lbnecode | -- | "redmine":https://cdcvs.fnal.gov/redmine/projects/lbnecode/repository |
|uboonecode| ssh://p-uboonecode@cdcvs.fnal.gov/cvs/projects/lardata | -- | "redmine":https://cdcvs.fnal.gov/redmine/projects/uboonecode/repository |

h1. Release notes

| *Release* | *Date* | *Purpose* | *Changes / notes* | *Full release notes* |
| v1.00.00| Jan 2014 | First production
release | Replica of final svn-based release. Future LArSoft development
proceeds from this release. | xxx |
| v0.0x.yy| 12/10/2013| "beta" public release | Beta suitable for general user testing | N/A |
| v0.01.01| 12/02/2013| "beta" limited release | Beta suitable for expert testing | N/A |
| v0.00.09| 11/25/2013| "beta" pre-release | Second full release under new system. First full re-factoring
of experiment-specific and core LArSoft code in the larcore,
lardata, larevt, and larsim products. Preparation for expert
user testing of beta release.| N/A|
| v0.00.04| 9/15/2013| "alpha" release | First release of git/cmake/ups-based LArSoft products
Used for mrb, configuration and re-factoring
development and testing | N/A |

h1. Documentation

h2. Working with LArSoft

* [[ LArSoft repositories, packages and dependencies ]]
* [[ Quick-start guide to using and developing LArSoft code ]]
* [[ Detailed documentation on using and developing LArSoft code ]]
* *[[ Special instructions for beta testers ]]*

* [[larsoftsvn:Using the Framework]]
* "ART Tutorial":http://oink.fnal.gov/
* [[larsoftsvn:NuSoft and LArSoft|nutools and LArSoft]]
* [[Using LArSoft on the GPVM nodes]]

h2. Overview of the user and developer environment

* [[Overview of the user and developer environment]]

h2. Links to the tools used in working with the software

* git
* git flow
* mrb : the multi-repository build tool
* Re-locatable ups
* cmake

h1. How-to's

h2. Advanced technical how-to's

h2. Release procedures

h1. Walk-through exercises

h1. LArSoft code management and distribution procedures

h1. Working areas

[[Beta re-factoring]]