install.md.in (2825B)
1 # Compile from source 2 3 No pre-compiled version of `schiff` is provided; 4 it must be compiled directly from its source tree. 5 A simple way is to rely on 6 [star-build](https://www.meso-star.com/git/star-build/), which automates 7 the build and installation of `schiff` and its dependencies from source 8 code. 9 10 ## Prerequisites 11 12 To build `schiff` with `star-build`, first make sure your system has the 13 following prerequisites: 14 15 - POSIX shell 16 - POSIX make 17 - curl 18 - git 19 - mandoc 20 - pkg-config 21 - sha512sum 22 - GNU Compiler Collection in version 8.3 or higher 23 - GNU Scientific Library and headers in version 2.4 or higher 24 - LibYAML and headers in version 0.1 or higher 25 26 ## Build 27 28 Assuming that the aforementioned prerequisites are available, the build 29 procedure is summed up to: 30 31 git clone git://git.meso-star.com/star-build.git 32 cd star-build 33 make \ 34 PREFIX=~/schiff_@VERSION@ \ 35 BUILD=src/rad-apps/schiff_@VERSION@.sh 36 37 With `PREFIX` defining the path where `schiff` will be installed and 38 `BUILD` defining the installation script to be run. 39 40 ## Run 41 42 Evaluate the installed `profile` file in the current shell to register 43 `schiff` against it. 44 You can then run `schiff` and consult its manual pages: 45 46 . ~/schiff_@VERSION@/etc/profile 47 schiff -h 48 man schiff 49 man schiff-geometry 50 man schiff-output 51 52 ## Post-Process 53 54 The following Bash script illustrates how to post-process the Schiff 55 results. 56 It is an example, provided as is. 57 According to your needs, you can study, modify, extend or redistribute 58 it freely : 59 60 - [Download](downloads/schiff_pretty_results.sh) the pretty result 61 script 62 63 This script reads an output file generated by the `schiff` command line 64 and split its raw ASCII results in several human readable text files in 65 order to simplify their analysis. 66 67 schiff -i geom.yaml -l 2.3 -w0.5:0.6 -o output properties 68 url="https://www.meso-star.com/schiff/downloads" 69 curl -f -O "${url}/schiff_pretty_results.sh" 70 bash ./schiff_pretty_results.sh output 71 Write xsections.txt 72 Write descs.txt 73 Write func_0.5.txt 74 Write func_0.6.txt 75 Write cumul_0.5.txt 76 Write cumul_0.6.txt 77 Write invcumul_0.5.txt 78 Write invcumul_0.6.txt 79 80 The first generated file, named `xsections.txt`, lists for each 81 wavelength submitted with the `-w` option, its associated 82 absorption, extinction and scattering cross sections. The second file, 83 `descs.txt`, gives overall informations for each simulated 84 wavelengths, like the limit scattering angles from which its phase function was 85 analytically computed. 86 Then for each wavelength, the script generates 3 files named 87 `func_<WLEN>.txt`, `cumul_<WLEN>.txt`, and `invcumul_<WLEN>.txt` that 88 store for the wavelength `<WLEN>`, the value of its associated phase 89 function as well as its cumulative and its inverse cumulative, 90 respectively.