-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
10 changed files
with
599 additions
and
13 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,76 @@ | ||
Introduction | ||
============ | ||
|
||
ScientiMate is a library for earth-science data analysis. This library can be used for wide range of data analysis including a time series analysis, signal processing, and geo-data calculation. | ||
|
||
ScientiMate Modules | ||
------------------- | ||
|
||
* Data Manipulating | ||
* Hurricane | ||
* Mapping | ||
* Plotting | ||
* Signal Processing | ||
* Statistics | ||
* Swan | ||
* Water Wave Data Analysis | ||
* Water Wave Directional Analysis | ||
* Water Wave Parametric Model | ||
* Water Wave Properties | ||
* Wind | ||
|
||
Citation | ||
-------- | ||
|
||
Cite this package as: | ||
|
||
Karimpour, A. (2022). ScientiMate, Earth-Science Data Analysis Library. | ||
|
||
Recommended Books | ||
----------------- | ||
|
||
.. list-table:: | ||
:header-rows: 1 | ||
:align: center | ||
|
||
* - .. figure:: figures/Figure_Book_Coastal.jpg | ||
- .. figure:: figures/Figure_Book_Python.jpg | ||
- .. figure:: figures/Figure_Book_Matlab.jpg | ||
|
||
* - | **Ocean Wave Data Analysis** | ||
| Introduction to Time Series Analysis, Signal Processing, and Wave Prediction. | ||
| | ||
| Order at Amazon: https://www.amazon.com/dp/0692109978 | ||
- | **Principles of Data Science with Python** | ||
| Introduction to Scientific Computing, Data Analysis, and Data Visualization. | ||
| | ||
| Order at Amazon: https://www.amazon.com/dp/1735241008 | ||
- | **Fundamentals of Data Science with MATLAB** | ||
| Introduction to Scientific Computing, Data Analysis, and Data Visualization. | ||
| | ||
| Order at Amazon: https://www.amazon.com/dp/1735241016 | ||
License Agreement and Disclaimer | ||
-------------------------------- | ||
|
||
ScientiMate: Earth-Science Data Analysis Library | ||
|
||
Copyright (c) 2022 Arash Karimpour | ||
|
||
Permission is hereby granted, free of charge, to any person obtaining a copy | ||
of this software and associated documentation files (the "Software"), to deal | ||
in the Software without restriction, including without limitation the rights | ||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||
copies of the Software, and to permit persons to whom the Software is | ||
furnished to do so, subject to the following conditions: | ||
|
||
The above copyright notice and this permission notice shall be included in all | ||
copies or substantial portions of the Software. | ||
|
||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||
SOFTWARE. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,101 @@ | ||
Getting Started (MATLAB Version) | ||
================================ | ||
|
||
In order to use MATLAB version of ScientiMate library, first, one of the MATLAB or GNU Octave programming language along with required toolboxes should be installed (Refer to required packages for MATLAB/GNU Octave). | ||
|
||
|
||
Installation | ||
------------ | ||
|
||
To use MATLAB version of ScientiMate library: | ||
|
||
* Install MATLAB or GNU Octave | ||
* Download ScientiMate: | ||
|
||
* Version 1.1 (GitHub): https://github.com/akarimp/ScientiMate/releases/download/1.1/scientimate.zip | ||
|
||
* Unzip ScientiMate in any location you choose such as "C:\\" | ||
* Add ScientiMate folder to MATLAB or GNU Octave path | ||
|
||
|
||
Add ScientiMate folder to MATLAB or GNU Octave path | ||
--------------------------------------------------- | ||
|
||
You may access ScientiMate by copying ScientiMate files and its sub-folders to your desire working directory and then use them there. | ||
However, a better option is to add ScientiMate folder to MATLAB or GNU Octave path. By doing that, you always have access to ScientiMate from any working directory. | ||
Remember, you need to add ScientiMate to path only once. | ||
|
||
To add ScientiMate folder to MATLAB or GNU Octave path, you may use a provided add_scientimate_to_path.m file or you can do it manually in the command window. | ||
|
||
**Add ScientiMate folder to MATLAB or GNU Octave path using add_scientimate_to_path.m** | ||
|
||
* Open MATLAB or GNU Octave | ||
* Change a current folder (working directory) to a folder that contains ScientiMate files, for example "C:\\scientimate", in MATLAB or GNU Octave. | ||
* Run a file named add_scientimate_to_path.m in MATLAB or GNU Octave to add ScientiMate folder to MATLAB or GNU Octave path. | ||
|
||
**Add ScientiMate folder to MATLAB or GNU Octave path manually in the Command Window** | ||
|
||
For example, if ScientiMate files are in "C:\\scientimate" folder then it can be added to path as: | ||
|
||
.. code:: matlab | ||
ScientiMatePath = genpath('C:\scientimate'); %Generating path for ScientiMate folder and its sub-folders | ||
addpath(ScientiMatePath); %Add ScientiMate folder to path | ||
To remove ScientiMate from the path use: | ||
|
||
.. code:: matlab | ||
ScientiMatePath = genpath('C:\scientimate'); %Generating path for ScientiMate folder and its sub-folders | ||
rmpath(ScientiMatePath); %Remove ScientiMate folder from path | ||
%restoredefaultpath; %Restore path to factory-installed state | ||
Operating System | ||
---------------- | ||
|
||
This code can be run on Windows, Mac and Linux. However, make sure any given path is compatible with a running operating system. In particular, “\\” is used in Windows path, while “/” is used in Mac or Linux path. For example, if a path is “C:\\” on Windows machine, it would be “C:/” on Mac or Linux. | ||
|
||
|
||
Required Programing Language | ||
---------------------------- | ||
|
||
The MATLAB version of this toolbox can be run by using MATLAB (https://www.mathworks.com) or GNU Octave (https://www.gnu.org/software/octave). | ||
|
||
|
||
Required Package for MATLAB | ||
--------------------------- | ||
|
||
MATLAB users may need to install additional MATLAB Toolboxes such as Signal Processing Toolbox for some functions. | ||
|
||
|
||
Required Package for GNU Octave | ||
------------------------------- | ||
|
||
GNU Octave users may need to install/load additional packages such as GNU Octave Signal Package for some functions. | ||
|
||
For example, GNU Octave Signal Package can be loaded inside GNU Octave by using a following command in the command window (This should be done every time GNU Octave is opened): | ||
|
||
|
||
.. code:: octave | ||
>> pkg load signal | ||
If GNU Octave Signal Package is not already installed, it should be first installed from Octave Forge (https://octave.sourceforge.io), and then get loaded by using the following commands in the command window: | ||
|
||
.. code:: octave | ||
>> pkg install -forge signal | ||
>> pkg load signal | ||
Quick Start | ||
----------- | ||
|
||
.. code:: matlab | ||
x(:,1)=linspace(1,10,10); | ||
y(:,1)=1+rand(10,1); | ||
y(:,2)=2+rand(10,1); | ||
plot2d(x,y,'line_confid','blue_red','large') |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,77 @@ | ||
Getting Started (Python Version) | ||
================================ | ||
|
||
In order to use Python version of ScientiMate library, first, Python programming language, and then, the ScientiMate library should be installed. | ||
|
||
|
||
Installation | ||
------------ | ||
|
||
To use ScientiMate library: | ||
|
||
* Install Python | ||
* Install ScientiMate | ||
|
||
**1) Install Python** | ||
|
||
First, you need to install Python programming language. | ||
|
||
* Method 1: | ||
Install pure Python from https://www.python.org and then use the **pip** command to install required packages | ||
* Method 2 (Recommended): | ||
Install Anaconda Python distribution from https://www.anaconda.com and then use the **conda** command to install required packages | ||
|
||
**2) Install ScientiMate** | ||
|
||
After Python is installed, you need to install ScientiMate library. | ||
|
||
To install ScientiMate via pip (https://pypi.org/project/scientimate) if you use pure Python: | ||
|
||
.. code:: python | ||
pip install scientimate | ||
To install ScientiMate via Anaconda cloud (https://anaconda.org/akarimp/scientimate) if you use Anaconda Python distribution: | ||
|
||
.. code:: python | ||
conda install -c akarimp scientimate | ||
Operating System | ||
---------------- | ||
|
||
This code can be run on Windows, Mac, and Linux. | ||
|
||
|
||
Required Programing Language | ||
---------------------------- | ||
|
||
This Python version of this library can be run by using Python 3 or later (https://www.python.org or https://www.anaconda.com). | ||
|
||
|
||
Required Package for Python | ||
--------------------------- | ||
|
||
Following packages are required: | ||
|
||
* NumPy (https://numpy.org) | ||
* SciPy (https://www.scipy.org) | ||
* Matplotlib (https://matplotlib.org) | ||
|
||
|
||
Quick Start | ||
----------- | ||
|
||
.. code:: python | ||
import scientimate as sm | ||
import numpy as np | ||
print(sm.__version__) | ||
x=np.linspace(1,10,10) | ||
y=np.zeros((10,2)) | ||
y[:,0]=1+np.random.rand(10) | ||
y[:,1]=2+np.random.rand(10) | ||
sm.plot2d(x,y,'line_confid','blue_red','large') |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,139 @@ | ||
Functions List (MATLAB Version) | ||
=============================== | ||
|
||
Here is a list of the ScientiMate functions MATLAB version: | ||
|
||
Data Manipulating | ||
----------------- | ||
.. toctree:: | ||
:maxdepth: 1 | ||
|
||
matlab_functions/data_manipulating/downsamplex.rst | ||
matlab_functions/data_manipulating/interpxyz2grid.rst | ||
matlab_functions/data_manipulating/readxyzfile.rst | ||
matlab_functions/data_manipulating/replacemissing1d.rst | ||
matlab_functions/data_manipulating/replaceoutlier.rst | ||
|
||
Hurricane | ||
--------- | ||
.. toctree:: | ||
:maxdepth: 1 | ||
|
||
matlab_functions/hurricane/stormsurge1d.rst | ||
matlab_functions/hurricane/hurricanewindh80.rst | ||
|
||
Mapping | ||
------- | ||
.. toctree:: | ||
:maxdepth: 1 | ||
|
||
matlab_functions/mapping/convertdir.rst | ||
matlab_functions/mapping/distancecart.rst | ||
matlab_functions/mapping/distancegc.rst | ||
matlab_functions/mapping/endpointcart.rst | ||
matlab_functions/mapping/globalrelief.rst | ||
matlab_functions/mapping/gridgenerator.rst | ||
matlab_functions/mapping/reckongc.rst | ||
|
||
Plotting | ||
-------- | ||
.. toctree:: | ||
:maxdepth: 1 | ||
|
||
matlab_functions/plotting/plot2d.rst | ||
matlab_functions/plotting/plot2dsubplot.rst | ||
matlab_functions/plotting/plot2dtimeseries.rst | ||
matlab_functions/plotting/plot3d.rst | ||
|
||
Signal Processing | ||
----------------- | ||
.. toctree:: | ||
:maxdepth: 1 | ||
|
||
matlab_functions/signal_processing/filtertimeseries.rst | ||
matlab_functions/signal_processing/smoothsignal.rst | ||
|
||
Statistics | ||
---------- | ||
.. toctree:: | ||
:maxdepth: 1 | ||
|
||
matlab_functions/statistics/curvefit2d.rst | ||
matlab_functions/statistics/dataoverview.rst | ||
matlab_functions/statistics/findextremum.rst | ||
matlab_functions/statistics/findknn.rst | ||
matlab_functions/statistics/fitgoodness.rst | ||
matlab_functions/statistics/movingwindow.rst | ||
matlab_functions/statistics/probability1d.rst | ||
matlab_functions/statistics/similaritymeasure.rst | ||
|
||
Swan | ||
---- | ||
.. toctree:: | ||
:maxdepth: 1 | ||
|
||
matlab_functions/swan/swandepthgrid.rst | ||
matlab_functions/swan/swanvectorvarspconst.rst | ||
matlab_functions/swan/swanwaterlevelspconst.rst | ||
matlab_functions/swan/swanwindspconst.rst | ||
|
||
Water Wave Data Analysis | ||
------------------------ | ||
.. toctree:: | ||
:maxdepth: 1 | ||
|
||
matlab_functions/water_wave_data_analysis/diagnostictail.rst | ||
matlab_functions/water_wave_data_analysis/seaswell1d.rst | ||
matlab_functions/water_wave_data_analysis/wavefrompressurepsd.rst | ||
matlab_functions/water_wave_data_analysis/wavefrompressurezcross.rst | ||
matlab_functions/water_wave_data_analysis/wavefromsurfaceelevpsd.rst | ||
matlab_functions/water_wave_data_analysis/wavefromsurfaceelevzcross.rst | ||
matlab_functions/water_wave_data_analysis/wavepropfrompsd.rst | ||
|
||
| For ocean wave data analysis, you may use OCEANLYZ toolbox as well. | ||
| OCEANLYZ, Ocean Wave Analyzing Toolbox, is a toolbox for analyzing the wave time series data collected by sensors in open body of water such as ocean, sea, and lake or in a laboratory. | ||
| For more information, visit https://oceanlyz.readthedocs.io | ||
Water Wave Directional Analysis | ||
------------------------------- | ||
.. toctree:: | ||
:maxdepth: 1 | ||
|
||
matlab_functions/water_wave_directional_analysis/directionalpsd.rst | ||
matlab_functions/water_wave_directional_analysis/enu2truenorth.rst | ||
|
||
Water Wave Parametric Model | ||
--------------------------- | ||
.. toctree:: | ||
:maxdepth: 1 | ||
|
||
matlab_functions/water_wave_parametric_model/parametricwavedeep.rst | ||
matlab_functions/water_wave_parametric_model/parametricwaveshallow.rst | ||
|
||
Water Wave Properties | ||
--------------------- | ||
.. toctree:: | ||
:maxdepth: 1 | ||
|
||
matlab_functions/water_wave_properties/bretpsd.rst | ||
matlab_functions/water_wave_properties/donelanpsd.rst | ||
matlab_functions/water_wave_properties/jonswappsd.rst | ||
matlab_functions/water_wave_properties/pmpsd.rst | ||
matlab_functions/water_wave_properties/pressureresponse.rst | ||
matlab_functions/water_wave_properties/tmapsd.rst | ||
matlab_functions/water_wave_properties/wavedispersion.rst | ||
|
||
Wind | ||
---- | ||
.. toctree:: | ||
:maxdepth: 1 | ||
|
||
matlab_functions/wind/directionavg.rst | ||
matlab_functions/wind/surfaceroughness.rst | ||
matlab_functions/wind/sustainedwindduration.rst | ||
matlab_functions/wind/windavg.rst | ||
matlab_functions/wind/winddrag.rst | ||
matlab_functions/wind/windgustfactor.rst | ||
matlab_functions/wind/windspectrum | ||
matlab_functions/wind/windvelz1toz2.rst | ||
|
Oops, something went wrong.