You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+2-2
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@ The Empirical Galaxy Generator (EGG) is a set of tools to generate fake galaxy c
4
4
These tools can be used to test source extraction codes, or to evaluate the reliability of any map-based science (stacking, dropout identification, ...).
5
5
6
6
# Installation
7
-
You must have the [phy++] library installed on your machine to compile EGG, configured at least with cfitsio and WCSlib support. [CMake] is used as a build system to handle dependency checks and compilation in a cross-platform way.
7
+
You must have the [vif] library installed on your machine to compile EGG, configured at least with cfitsio and WCSlib support. [CMake] is used as a build system to handle dependency checks and compilation in a cross-platform way.
8
8
9
9
One you have installed all the dependencies, create yourself a directory called 'build' within the current directory. Navigate to the 'build' directory with your terminal, and call:
10
10
@@ -22,6 +22,6 @@ See the output of 'egg-gencat help' after installing the programs.
22
22
For further and more detailed help, see the documentation in the 'doc/' folder.
message(STATUS"clang version >= 3.3 (${CMAKE_CXX_COMPILER_VERSION})")
26
26
else()
27
-
message(FATAL_ERROR "phy++ requires advanced features from the C++11 norm that are only available with clang 3.3 or higher (your version: ${CMAKE_CXX_COMPILER_VERSION}). Please upgrade your compiler.")
27
+
message(FATAL_ERROR "vif requires advanced features from the C++11 norm that are only available with clang 3.3 or higher (your version: ${CMAKE_CXX_COMPILER_VERSION}). Please upgrade your compiler.")
message(STATUS"gcc version >= 4.7 (${CMAKE_CXX_COMPILER_VERSION})")
66
66
else()
67
-
message(FATAL_ERROR "phy++ requires advanced features from the C++11 norm that are only available with gcc 4.7 or higher (your version: ${CMAKE_CXX_COMPILER_VERSION}). Please upgrade your compiler.")
67
+
message(FATAL_ERROR "vif requires advanced features from the C++11 norm that are only available with gcc 4.7 or higher (your version: ${CMAKE_CXX_COMPILER_VERSION}). Please upgrade your compiler.")
message(STATUS"Intel version >= 14 (${CMAKE_CXX_COMPILER_VERSION})")
80
+
else()
81
+
message(FATAL_ERROR "vif requires advanced features from the C++11 norm that are only available with Intel compiler 14 or higher (your version: ${CMAKE_CXX_COMPILER_VERSION}). Please upgrade your compiler.")
82
+
endif()
83
+
endif()
84
+
85
+
add_definitions(-Wall)
86
+
add_definitions(-std=c++11)
87
+
add_definitions(-diag-error-limit=5)
76
88
elseif ("${CMAKE_CXX_COMPILER_ID}"STREQUAL"MSVC")
77
89
message(ERROR "Microsoft Visual C++ compiler is not supported")
Copy file name to clipboardExpand all lines: doc/doc-egg-generic.tex
+4-4
Original file line number
Diff line number
Diff line change
@@ -66,9 +66,9 @@ \subsubsection{Rules for ASCII table formatting}
66
66
67
67
\subsubsection{Column-oriented FITS tables}
68
68
69
-
For historical reasons tied to IDL, \egg and \phypp (the underlying C++ library) exclusively support column-oriented FITS tables. Although this is a perfectly valid way of doing things (according to the FITS standard), this is not the standard way FITS tables are used in general. It has, however, a number of advantages that I will not describe here (take a look at the \phypp documentation if you are interested). Instead, this section will tell you how you can read and write such kind of FITS tables.
69
+
For historical reasons tied to IDL, \egg and \vif (the underlying C++ library) prefer to use column-oriented FITS tables. Although this is a perfectly valid way of doing things (according to the FITS standard), this is not the standard way FITS tables are used in general. It has, however, a number of advantages that I will not describe here (take a look at the \vif documentation if you are interested). Although EGG can deal with both row and column-oriented tables for inputs, it will always write outputs using the column-oriented format. This section will tell you how you can read and write such kind of FITS tables.
70
70
71
-
{\bf In C++.} Using the \phypp library, reading and writing these tables is natural:
71
+
{\bf In C++.} Using the \vif library, reading and writing these tables is natural:
72
72
\begin{cppcode}
73
73
// First declare the columns you want to read (here: 1D columns of doubles)
Only the columns you need are actually read from the file, and the type of the variables you declare in C++ has to match the type of the columns that are found inside the FITS table (conversions will be performed automatically only if they imply no potential loss of data). Diagnostics will be given if this is not the case. See the \phypp documentation for more detail.
85
+
Only the columns you need are actually read from the file, and the type of the variables you declare in C++ has to match the type of the columns that are found inside the FITS table (conversions will be performed automatically only if they imply no potential loss of data). Diagnostics will be given if this is not the case. See the \vif documentation for more detail.
86
86
87
87
{\bf In IDL.} Column-oriented FITS tables can be read using \bashinline{mrdfits}, and written using \bashinline{mwrfits}:
Be careful not to forget the \idlinline{/create} keyword, else if the file already exists the function will add a new extension to the table to write the data, and this is not what you want.
99
99
100
-
{\bf In Python.} Column-oriented FITS tables are not well supported by the standard FITS I/O module from \bashinline{astropy} (you \emph{can} use \pythoninline{astropy.io.fits}, but it will be a bit cumbersome). To cope with this situation, I have written a small module that implements this in a user-friendly way; you can download it \href{https://github.com/cschreib/phypp/blob/master/python/pycolfits.py}{[here]}. Usage is as simple as above:
100
+
{\bf In Python.} Column-oriented FITS tables are not well supported by the standard FITS I/O module from \bashinline{astropy} (you \emph{can} use \pythoninline{astropy.io.fits}, but it will be a bit cumbersome). To cope with this situation, I have written a small module that implements this in a user-friendly way; you can download it \href{https://github.com/cschreib/vif/blob/master/python/pycolfits.py}{[here]}. Usage is as simple as above:
0 commit comments