From 6c0620002bd5c088ce55a514e9c9ccc19e1cfbf9 Mon Sep 17 00:00:00 2001 From: Michael Orlitzky Date: Thu, 16 Apr 2015 20:35:44 -0400 Subject: [PATCH] Set cabal version to 0.0.1. Ship MRI data companion files (suggested by the website). Update some makefile rules. Fix extra-source-modules in the cabal file. --- data/announcement.txt | 63 +++++++++++++++++++++++++++++++++ data/mri.info | 10 ++++++ makefile | 81 ++++++++++++++++++++++++------------------- spline3.cabal | 44 ++++++++++++++++++++--- 4 files changed, 158 insertions(+), 40 deletions(-) create mode 100644 data/announcement.txt create mode 100644 data/mri.info diff --git a/data/announcement.txt b/data/announcement.txt new file mode 100644 index 0000000..ffd624f --- /dev/null +++ b/data/announcement.txt @@ -0,0 +1,63 @@ + Announcing the Chapel Hill Volume Rendering Test Data Set, + Volume II + + SoftLab Software Systems Laboratory + University of North Carolina + Department of Computer Science + Chapel Hill, NC 27599-3175 + +The Chapel Hill Volume Rendering Test Data Set, Volume II is a collection +of the following files: + +CT Cadaver Head data - A 113-slice MRI data set of a CT study of +a cadaver head. Slices are stored consecutively as a 256 x 256 array +with dimensions of z-113 y-256 x-256 in z-y-x order. Format is 16-bit +integers -- two consecutive bytes make up one binary integer. 14,811,136 +bytes total file size. Data taken on the General Electric CT Scanner and +provided courtesy of North Carolina Memorial Hospital. + +CT Cadaver Head data information article - An ascii file containing +acknowledgements for the CT cadaver head data files. + +MR Brain data - A 109-slice MRI data set of a head with +skull partially removed to reveal brain. 256 x 256 array. +with dimensions of Z=109 Y=256 X=256 in z-y-x order. Format is 16-bit +integers -- two consecutive bytes make up one binary integer. 14,286,848 +bytes total file size. Data taken on the Siemens Magnetom and provided +courtesy of Siemens Medical Systems, Inc., Iselin, NJ. Data edited +(skull removed) by Dr. Julian Rosenman, North Carolina Memorial Hospital. + +MR Brain data information article - An ascii file containing acknowledgements +for the MR brain data files. + +RNA data - A ASCII data set of an electron density map for +Staphylococcus Aureus Ribonuclease with space of (x,y,z) = +(0.94,0.94,0.94) and dimensions z-16, y-120, x-100 in z-y-x order. +961,920 bytes total file size. Data provided courtesy of Dr. Chris Hill, +University of York. + +RNA data information article - An ascii file containing acknowledgements +for the RNA data files. + +The data sets were written on a Digital Equipment Corporation (DEC) VAX +computer. Each file contains only pixels, stored in row major order +with 2-byte integers per pixel. To use the images on machines that +have normal byte order (DECs use reverse byte order), you should swap +alternate bytes, for example using the 'dd' command in UNIX. A sample +command that does this for the MRbrain data set is: + % dd if=MRbrain of=MRbrain.new conv=swab + +We do not object to your further distributing these files, but we +request that full acknowledgement of the source of the data accompany +such distribution. If you are going to send a data set to someone, +please also send the accompanying information file (*.info) and this +file (Announcement). + +The Computer Science Department, University of North Carolina only +distributes these files by anonymous FTP. + +We do not provide any software for displaying these data. + +There is no information available about the data provided here other +than that present in these files. For example, missing information +about the means of data collection cannot be provided. diff --git a/data/mri.info b/data/mri.info new file mode 100644 index 0000000..d4adceb --- /dev/null +++ b/data/mri.info @@ -0,0 +1,10 @@ +Description: MR study of head with skull partially removed to reveal brain +Dimensions: 109 slices of 256 x 256 pixels, + voxel grid is rectangular, and + X:Y:Z shape of each voxel is 1:1:2 +Files: 109 binary files, one file per slice +File format: 16-bit integers (Mac byte ordering), file contains no header +Data source: acquired on a Siemens Magnetom and provided courtesy of + Siemens Medical Systems, Inc., Iselin, NJ. Data edited + (skull removed) by Dr. Julian Rosenman, North Carolina + Memorial Hospital diff --git a/makefile b/makefile index 850626f..15f2a75 100644 --- a/makefile +++ b/makefile @@ -1,62 +1,73 @@ +PN = spline3 +BIN = dist/build/$(PN)/$(PN) +SRCS := $(shell find src/ -type f -name '*.hs') + BIN = dist/build/spline3/spline3 DOCTESTS_BIN = dist/build/doctests/doctests TESTSUITE_BIN = dist/build/testsuite/testsuite -.PHONY : test publish_doc doc dist hlint +.PHONY : test doc dist hlint -$(BIN): src/*.hs - runghc Setup.hs clean - runghc Setup.hs configure --user --flags=${FLAGS} +$(BIN): $(PN).cabal $(SRCS) + runghc Setup.hs configure \ + --user \ + --prefix=/ \ + --flags=${FLAGS} runghc Setup.hs build -$(DOCTESTS_BIN): src/*.hs test/Doctests.hs - runghc Setup.hs configure --user --flags=${FLAGS} --enable-tests +$(DOCTESTS_BIN): $(SRCS) test/Doctests.hs + runghc Setup.hs configure \ + --user \ + --prefix=/ \ + --flags=${FLAGS} \ + --enable-tests runghc Setup.hs build -$(TESTSUITE_BIN): src/*.hs test/TestSuite.hs - runghc Setup.hs configure --user --flags=${FLAGS} --enable-tests +$(TESTSUITE_BIN): $(SRCS) test/TestSuite.hs + runghc Setup.hs configure \ + --user \ + --prefix=/ \ + --flags=${FLAGS} \ + --enable-tests runghc Setup.hs build -llvm: src/*.hs +llvm: $(PN).cabal $(SRCS) FLAGS="llvm" make -profile: src/*.hs - runghc Setup.hs configure --user --enable-executable-profiling +profile: $(SRCS) + runghc Setup.hs configure \ + --user \ + --prefix=/ \ + --enable-executable-profiling runghc Setup.hs build -hpc: src/*.hs +hpc: $(PN).cabal $(SRCS) FLAGS="hpc" make clean: runghc Setup.hs clean - rm -f dist/ + rm -rf dist/ rm -f *.prof - rm -rf .hpc + rm -f .hpc -test: $(BIN) $(DOCTESTS_BIN) $(TESTSUITE_BIN) +test: $(PN).cabal $(TESTSUITE_BIN) $(DOCTESTS_BIN) $(BIN) runghc Setup.hs test dist: - runghc Setup.hs configure - runghc Setup.hs sdist - -# Neither 'haddock' nor 'hscolour' seem to work properly. -doc: src/*.hs - runghc Setup.hs configure --user --flags=${FLAGS} - runghc Setup.hs hscolour --executables - runghc Setup.hs haddock --internal \ - --executables \ - --hyperlink-source - -SSH_USER=root@michael.orlitzky.com -PUBLIC_DOCDIR=/var/www/orlitzky.com/michael/public/spline3/ -publish_doc: doc - rsync -avz -e ssh \ - ./dist/doc/html/spline3/spline3 \ - $(SSH_USER):$(PUBLIC_DOCDIR) + runghc Setup.hs configure --prefix=/ + TAR_OPTIONS="--format=ustar" runghc Setup.hs sdist + +doc: dist/doc + +dist/doc: $(PN).cabal $(SRCS) + runghc Setup.hs configure --user --prefix=/ --flags=${FLAGS} + runghc Setup.hs hscolour --all + runghc Setup.hs haddock --all \ + --hyperlink-source \ + --haddock-options="--ignore-all-exports" hlint: hlint --ignore="Use camelCase" \ - --ignore="Redundant bracket" \ - --color \ - src + --ignore="Redundant bracket" \ + --color \ + src diff --git a/spline3.cabal b/spline3.cabal index 4154e89..808541f 100644 --- a/spline3.cabal +++ b/spline3.cabal @@ -1,21 +1,35 @@ name: spline3 -version: 0.0 +version: 0.0.1 cabal-version: >= 1.8 author: Michael Orlitzky maintainer: Michael Orlitzky +homepage: http://michael.orlitzky.com/code/spline3.php +category: Math license: GPL-3 license-file: doc/LICENSE -homepage: http://michael.orlitzky.com/code/spline3.php bug-reports: mailto:michael@orlitzky.com -category: Math synopsis: A parallel implementation of the Sorokina/Zeilfelder spline scheme. description: Interpolate volumetric data according to "Local quasi-interpolation by cubic C^1 splines on type-6 tetrahedral partitions." The defaults are tailored to the MRI data contained in data/mri.bin from the - Stanford volume data archive at http://graphics.stanford.edu/data/voldata/. + Stanford volume data archive at . + . + For more information and examples, please see the project homepage at + . + build-type: Simple +extra-source-files: + data/mri.bin + data/mri.info + data/announcement.txt + doc/README + -- Don't ship the references for copyright reasons. + --doc/references/*.pdf + doc/results/2d/*.png + doc/results/3d/*.png + util/view-mri-data.py flag HPC description: Build with Haskell Program Coverage (HPC) support @@ -27,6 +41,7 @@ flag LLVM executable spline3 + build-depends: base < 5, cmdargs >= 0.10, @@ -41,13 +56,32 @@ executable spline3 tasty-hunit >= 0.8, tasty-quickcheck >= 0.8.1 - main-is: Main.hs hs-source-dirs: src/ + other-modules: + Assertions + Cardinal + CommandLine + Comparisons + Cube + Everything + Examples + ExitCodes + Face + FunctionValues + Grid + Misc + Point + RealFunction + ScaleFactor + Tetrahedron + Values + Volumetric + ghc-options: -Wall -fwarn-hi-shadowing -- 2.43.2