Commit 05653093 authored by bliven_s's avatar bliven_s
Browse files

New module: PEET

parent a1ce8d4d
# PEET
[Particle Estimateion for Electron Tomography](https://bio3d.colorado.edu/PEET/)
## Installation
PEET is shipped as a self-expanding installation script. Run `./build` to
install.
An experimental config.yaml files is included using Pmodules/1.1.10 syntax.
This should probably not be used until yaml support in modbuild stabilizes.
## Testing
- `calcFSC` should print the version number
## Build notes
Building was successful with Pmodules 1.1.8 but not 1.1.9 or 1.1.10.
Linking the binary is a bit of a pain. It requires gcc to be loaded to provide
relatively recent versions of libstdc++.so.6. I didn't fine what exact version
Matlab MCR expects, but 9.5.0 seemed to work. MCR is linked dynamically at
runtime through LD_LIBRARY_PATH. This is not set in the modulefile as expected,
but rather in wrapper scripts which source particle.cfg. Sed commands in
pbuild::install update this file so that it reads the loaded modules correctly.
#!/usr/bin/env modbuild
pbuild::add_to_group 'EM'
pbuild::prep() {
dst="$PMODULES_DISTFILESDIR/Particle_${V_PKG}_linux.sh"
if [ -f "$dst" ]; then
echo "Found cached $dst" >&2
else
${curl:-curl} \
--location \
--fail \
--output "$dst" \
"https://bio3d.colorado.edu/ftp/PEET/linux/Particle_${V_PKG}_linux.sh"
fi
}
pbuild::configure() {
:
}
pbuild::compile() {
:
}
pbuild::install() {
mkdir -p "$PREFIX/etc/profile.d"
# Installs into $PREFIX/Particle
sh "$PMODULES_DISTFILESDIR/Particle_${V_PKG}_linux.sh" \
--yes \
--dir "$PREFIX" \
--script "$PREFIX/etc/profile.d"
# Fix paths
sed -ri 's,/usr/local/Particle(Runtime)?,$PEET_HOME,g' $PREFIX/Particle/*.{csh,sh,cfg} $PREFIX/etc/profile.d/Particle.{c,}sh
sed -ri 's,MCR_ROOT=.*,MCR_ROOT=$MATLAB_DIR,g' $PREFIX/Particle/*.cfg
mv $PREFIX/Particle/* $PREFIX/
rm -r $PREFIX/Particle
}
overlay: base
relstage: stable
group: EM
shasums:
PEET/1.15.1a: de4e9104f90b9379502a34b58be33eafd5514d554002a94efe2adba6f44785e6
PEET/1.15.1a:
- relstage: unstable
PEET/1.15.1a unstable gcc/9.5.0 matlab/2020b
#%Module1.0
module-whatis "PEET (Particle Estimation for Electron Tomography) is an open-source package for aligning and averaging particles in 3-D subvolumes extracted from tomograms."
module-url "https://bio3d.colorado.edu/PEET/"
module-license "GPLv2 license"
module-maintainer "Spencer Bliven <spencer.bliven@psi.ch>"
module-help "
PEET (Particle Estimation for Electron Tomography) is an open-source package
for aligning and averaging particles in 3-D subvolumes extracted from
tomograms. It seeks the optimal alignment of each particle against a
reference volume through several iterations. If PEET and IMOD are both
installed, most PEET operations are available from the eTomo graphical
user interface in IMOD. PEET uses the parallel processing framework
within IMOD, so that the lengthy computations can be distributed to
multiple cores on one computer, to a set of linked workstations, or to
a cluster. PEET is written in Matlab and a compiled version is
distributed along with the Matlab runtime environment needed to run it.
> Nicastro D, Schwartz C, Pierson J, Gaudette R, Porter ME and McIntosh JR
(2006), \"The molecular architecture of axonemes revealed by cryoelectron
tomography.\", Science. Vol. 313(5789), pp. 944-948.
DOI:10.1126/science.1128618
> Heumann JM, Hoenger A and Mastronarde DN (2011), \"Clustering and variance
maps for cryo-electron tomography using wedge-masked differences.\", J Struct
Biol. Vol. 175(3), pp. 288-299. DOI:10.1016/j.jsb.2011.05.011
"
setenv PARTICLE_DIR "$PREFIX"
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment