43 lines
2.3 KiB
Markdown
43 lines
2.3 KiB
Markdown
# Geophysical Computational Tools & Library (GCTL)
|
|
|
|
GCTL is a package of computational tools and C++ library for geophysical studies. The complete package is composed of a core library and additional libraries and command line tools. A full list of GCTL's libraries are listed as:
|
|
|
|
1. **gctl**: the core library (stored at this repository);
|
|
2. **gctl_potential**: library of the algorithms for working with the potential field data (i.e., gravitational and magnetic data);
|
|
3. **gctl_seismic**: library of the algorithms for working with the seismic/earthquake data;
|
|
4. **gctl_elecmag**: library of the algorithms for working with the elecmagnetic/magnetotelluric data;
|
|
5. **gctl_optimization**: library of the optimization algorithms;
|
|
6. **gctl_ai**: library of the artificial intelligence algorithms;
|
|
6. **gctl_graphic**: library for data visualization;
|
|
7. **gctl_examples**: executable examples;
|
|
8. **gctl_toolkits**: command line tools.
|
|
|
|
## Dependences
|
|
|
|
There are several third-party libraries that could be employed by the GCTL during the compilation to enable extral functionalities. The inclusion of the exterior libraries are controlled using the CMake compile options as `-D<option>=ON|OFF`. And the availiable options are:
|
|
|
|
1. **GCTL_OPENMP**: Enable OpenMP support. The default is ON;
|
|
2. **GCTL_NETCDF**: Use the netCDF libraries for reading and writing .nc files. This option requires the netCDF and netCDF_CXX libraries. The default is ON;
|
|
3. **GCTL_WAVELIB**: Use the WaveLIB for preforming the wavelet processes. The default is ON;
|
|
4. **GCTL_FFTW3**: Use the FFTW library for preforming the Fourier transformations. The default is ON;
|
|
5. **GCTL_OPENBLAS**: Use the openblas library for linear algebras. The default is OFF;
|
|
6. **GCTL_EIGEN**: Use the Eigen3 library. This is not a compiling option but could be used in applications to enable Eigen3 support.
|
|
7. **GCTL\_CHECK_BOUNDER**: Check indexing validities in all array-like operations. This may affect the computational efficiency. The default is OFF;
|
|
8. **GCTL\_CHECK_SIZE**: Check sizes in all array-like operations. This may affect the computational efficiency. The default is OFF.
|
|
|
|
## Installation
|
|
|
|
You can use the enclosed shell script 'installer' to install.
|
|
|
|
```
|
|
./installer configure && ./installer build && ./installer install
|
|
```
|
|
|
|
For more information of the 'installer', use:
|
|
|
|
```
|
|
./installer help
|
|
```
|
|
|
|
|