├── .gitignore
├── LICENSE.md
├── README.md
├── code
├── prepare-synthetic-data-assessment-resit.ipynb
├── prepare-synthetic-data-assessment.ipynb
└── prepare-synthetic-data.ipynb
├── data
├── bushveld-survey-absolute.csv
├── bushveld-surveys.zip
├── bushveld-surveys
│ ├── README.txt
│ ├── bushveld-gravity-base-stations.csv
│ ├── data
│ │ ├── bushveld-gravity-day-1.csv
│ │ ├── bushveld-gravity-day-10.csv
│ │ ├── bushveld-gravity-day-11.csv
│ │ ├── bushveld-gravity-day-12.csv
│ │ ├── bushveld-gravity-day-13.csv
│ │ ├── bushveld-gravity-day-14.csv
│ │ ├── bushveld-gravity-day-15.csv
│ │ ├── bushveld-gravity-day-2.csv
│ │ ├── bushveld-gravity-day-3.csv
│ │ ├── bushveld-gravity-day-4.csv
│ │ ├── bushveld-gravity-day-5.csv
│ │ ├── bushveld-gravity-day-6.csv
│ │ ├── bushveld-gravity-day-7.csv
│ │ ├── bushveld-gravity-day-8.csv
│ │ └── bushveld-gravity-day-9.csv
│ └── gravimeter-scaling.csv
├── cape-granite-survey-absolute.csv
├── cape-granite-surveys.zip
├── cape-granite-surveys
│ ├── README.txt
│ ├── cape-granite-gravity-base-stations.csv
│ ├── data
│ │ ├── cape-granite-gravity-day-1.csv
│ │ ├── cape-granite-gravity-day-2.csv
│ │ ├── cape-granite-gravity-day-3.csv
│ │ ├── cape-granite-gravity-day-4.csv
│ │ ├── cape-granite-gravity-day-5.csv
│ │ ├── cape-granite-gravity-day-6.csv
│ │ ├── cape-granite-gravity-day-7.csv
│ │ ├── cape-granite-gravity-day-8.csv
│ │ └── cape-granite-gravity-day-9.csv
│ └── gravimeter-scaling.csv
├── cape-town-survey-absolute.csv
├── cape-town-surveys.zip
├── cape-town-surveys
│ ├── cape-town-gravity-day-1.csv
│ ├── cape-town-gravity-day-2.csv
│ ├── cape-town-gravity-day-3.csv
│ ├── cape-town-gravity-day-4.csv
│ └── cape-town-gravity-day-5.csv
└── gravimeter-scaling.csv
├── environment.yml
├── lectures
├── 0-introduction
│ ├── content.md
│ └── index.html
├── 1-ground-surveys
│ ├── content.md
│ └── index.html
├── Makefile
├── assets
│ ├── background.jpg
│ ├── favicon.png
│ ├── university-of-liverpool-black.png
│ └── university-of-liverpool-white.png
├── css
│ ├── fontawesome
│ │ ├── LICENSE.txt
│ │ ├── css
│ │ │ ├── all.css
│ │ │ ├── all.min.css
│ │ │ ├── brands.css
│ │ │ ├── brands.min.css
│ │ │ ├── fontawesome.css
│ │ │ ├── fontawesome.min.css
│ │ │ ├── regular.css
│ │ │ ├── regular.min.css
│ │ │ ├── solid.css
│ │ │ ├── solid.min.css
│ │ │ ├── svg-with-js.css
│ │ │ ├── svg-with-js.min.css
│ │ │ ├── v4-shims.css
│ │ │ └── v4-shims.min.css
│ │ └── webfonts
│ │ │ ├── fa-brands-400.eot
│ │ │ ├── fa-brands-400.svg
│ │ │ ├── fa-brands-400.ttf
│ │ │ ├── fa-brands-400.woff
│ │ │ ├── fa-brands-400.woff2
│ │ │ ├── fa-regular-400.eot
│ │ │ ├── fa-regular-400.svg
│ │ │ ├── fa-regular-400.ttf
│ │ │ ├── fa-regular-400.woff
│ │ │ ├── fa-regular-400.woff2
│ │ │ ├── fa-solid-900.eot
│ │ │ ├── fa-solid-900.svg
│ │ │ ├── fa-solid-900.ttf
│ │ │ ├── fa-solid-900.woff
│ │ │ └── fa-solid-900.woff2
│ └── style.less
├── images
│ ├── A10_absolute_gravity_meter.jpg
│ ├── Autograv_CG5_P1150838.JPG
│ ├── DetalleNivelDeBurbuja.jpg
│ ├── gravity-drift.svg
│ ├── gravity-network-full.svg
│ ├── gravity-network-minimal.svg
│ ├── gravity-network.svg
│ └── heights.svg
└── js
│ ├── less
│ ├── LICENSE
│ ├── README.md
│ ├── less.min.js
│ └── package.json
│ └── revealjs
│ ├── .npmignore
│ ├── CONTRIBUTING.md
│ ├── LICENSE
│ ├── README.md
│ ├── css
│ ├── layout.scss
│ ├── print
│ │ ├── paper.scss
│ │ └── pdf.scss
│ ├── reveal.scss
│ └── theme
│ │ ├── README.md
│ │ ├── source
│ │ ├── beige.scss
│ │ ├── black.scss
│ │ ├── blood.scss
│ │ ├── league.scss
│ │ ├── moon.scss
│ │ ├── night.scss
│ │ ├── serif.scss
│ │ ├── simple.scss
│ │ ├── sky.scss
│ │ ├── solarized.scss
│ │ └── white.scss
│ │ └── template
│ │ ├── exposer.scss
│ │ ├── mixins.scss
│ │ ├── settings.scss
│ │ └── theme.scss
│ ├── demo.html
│ ├── dist
│ ├── reset.css
│ ├── reveal.css
│ ├── reveal.esm.js
│ ├── reveal.js
│ └── theme
│ │ ├── beige.css
│ │ ├── black.css
│ │ ├── blood.css
│ │ ├── fonts
│ │ ├── league-gothic
│ │ │ ├── LICENSE
│ │ │ ├── league-gothic.css
│ │ │ ├── league-gothic.eot
│ │ │ ├── league-gothic.ttf
│ │ │ └── league-gothic.woff
│ │ └── source-sans-pro
│ │ │ ├── LICENSE
│ │ │ ├── source-sans-pro-italic.eot
│ │ │ ├── source-sans-pro-italic.ttf
│ │ │ ├── source-sans-pro-italic.woff
│ │ │ ├── source-sans-pro-regular.eot
│ │ │ ├── source-sans-pro-regular.ttf
│ │ │ ├── source-sans-pro-regular.woff
│ │ │ ├── source-sans-pro-semibold.eot
│ │ │ ├── source-sans-pro-semibold.ttf
│ │ │ ├── source-sans-pro-semibold.woff
│ │ │ ├── source-sans-pro-semibolditalic.eot
│ │ │ ├── source-sans-pro-semibolditalic.ttf
│ │ │ ├── source-sans-pro-semibolditalic.woff
│ │ │ └── source-sans-pro.css
│ │ ├── league.css
│ │ ├── moon.css
│ │ ├── night.css
│ │ ├── serif.css
│ │ ├── simple.css
│ │ ├── sky.css
│ │ ├── solarized.css
│ │ └── white.css
│ ├── examples
│ ├── assets
│ │ ├── beeping.txt
│ │ ├── beeping.wav
│ │ ├── image1.png
│ │ └── image2.png
│ ├── auto-animate.html
│ ├── barebones.html
│ ├── layout-helpers.html
│ ├── markdown.html
│ ├── markdown.md
│ ├── math.html
│ ├── media.html
│ ├── multiple-presentations.html
│ ├── slide-backgrounds.html
│ └── slide-transitions.html
│ ├── gulpfile.js
│ ├── index.html
│ ├── js
│ ├── components
│ │ └── playback.js
│ ├── config.js
│ ├── controllers
│ │ ├── autoanimate.js
│ │ ├── backgrounds.js
│ │ ├── controls.js
│ │ ├── focus.js
│ │ ├── fragments.js
│ │ ├── keyboard.js
│ │ ├── location.js
│ │ ├── notes.js
│ │ ├── overview.js
│ │ ├── plugins.js
│ │ ├── pointer.js
│ │ ├── print.js
│ │ ├── progress.js
│ │ ├── slidecontent.js
│ │ ├── slidenumber.js
│ │ └── touch.js
│ ├── index.js
│ ├── reveal.js
│ └── utils
│ │ ├── color.js
│ │ ├── constants.js
│ │ ├── device.js
│ │ ├── loader.js
│ │ └── util.js
│ ├── package-lock.json
│ ├── package.json
│ ├── plugin
│ ├── highlight
│ │ ├── highlight.esm.js
│ │ ├── highlight.js
│ │ ├── monokai.css
│ │ ├── plugin.js
│ │ └── zenburn.css
│ ├── markdown
│ │ ├── markdown.esm.js
│ │ ├── markdown.js
│ │ └── plugin.js
│ ├── math
│ │ ├── math.esm.js
│ │ ├── math.js
│ │ └── plugin.js
│ ├── notes
│ │ ├── notes.esm.js
│ │ ├── notes.js
│ │ ├── plugin.js
│ │ └── speaker-view.html
│ ├── search
│ │ ├── plugin.js
│ │ ├── search.esm.js
│ │ └── search.js
│ └── zoom
│ │ ├── plugin.js
│ │ ├── zoom.esm.js
│ │ └── zoom.js
│ └── test
│ ├── assets
│ ├── external-script-a.js
│ ├── external-script-b.js
│ ├── external-script-c.js
│ └── external-script-d.js
│ ├── simple.md
│ ├── test-auto-animate.html
│ ├── test-dependencies-async.html
│ ├── test-dependencies.html
│ ├── test-grid-navigation.html
│ ├── test-iframe-backgrounds.html
│ ├── test-iframes.html
│ ├── test-markdown.html
│ ├── test-multiple-instances-es5.html
│ ├── test-multiple-instances.html
│ ├── test-pdf.html
│ ├── test-plugins.html
│ ├── test-state.html
│ └── test.html
├── practicals
├── practical1-empty.ipynb
├── practical1-solution.ipynb
├── practical1.ipynb
├── practical2-empty.ipynb
├── practical2-solution.ipynb
└── practical2.ipynb
├── report-rubric.md
└── report.md
/.gitignore:
--------------------------------------------------------------------------------
1 | .ipynb_checkpoints/
2 | practicals/cape-town-surveys
3 | practicals/*.csv
4 |
--------------------------------------------------------------------------------
/LICENSE.md:
--------------------------------------------------------------------------------
1 | Copyright (c) 2021 Leonardo Uieda
2 |
3 | This material is made available under the Creative Commons Attribution 4.0 International (CC BY 4.0) license.
4 |
5 | You are free to:
6 |
7 | * Share - copy and redistribute the material in any medium or format
8 | * Adapt - remix, transform, and build upon the material for any purpose, even commercially.
9 |
10 | Under the following conditions:
11 |
12 | * Attribution - You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
13 | * No additional restrictions - You may not apply legal terms or technological measures that legally restrict others from doing anything the license permits.
14 |
15 | For a full copy of the license text, visit https://creativecommons.org/licenses/by/4.0
16 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Processing gravimetry data with Python
2 |
3 | Lesson on processing ground survey gravimetry data for geophysics with Python.
4 |
5 | The lesson focuses on fundamentals and does relies only on the standard
6 | scientific Python stack (numpy, matplotlib, etc).
7 | Corrections and processing are implemented in the lesson as a way to impart
8 | deeper understanding of how they work, avoiding the blackbox approach that
9 | would result from the use of ready-made software.
10 |
11 | ## Learning outcomes
12 |
13 |
14 | ## Lesson material
15 |
16 |
17 | ## Data sources
18 |
19 | The raw data used in this lesson was created from the
20 | [BGS land gravity archive](https://www.bgs.ac.uk/datasets/gb-land-gravity-survey/),
21 | which is freely available under an
22 | [Open Government License](https://www.bgs.ac.uk/bgs-intellectual-property-rights/open-government-licence/).
23 |
24 | ## License
25 |
26 | This material is made available under the
27 | [Creative Commons Attribution 4.0 International (CC BY 4.0)](https://creativecommons.org/licenses/by/4.0)
28 | license.
29 |
--------------------------------------------------------------------------------
/data/bushveld-surveys.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/data/bushveld-surveys.zip
--------------------------------------------------------------------------------
/data/bushveld-surveys/README.txt:
--------------------------------------------------------------------------------
1 | # Bushveld Complex Gravity Surveys
2 |
3 | This archive contains gravity readings for a ground-based survey
4 | of the Bushveld Complex in South Africa. The survey was conducted
5 | over 15 days using the same gravimeter (L&R Model G).
6 |
7 | ## Survey information
8 |
9 | Gravimeter: All surveys were carried out with the same gravimeter.
10 | The file gravimeter-scaling.csv contains the scaling table for this
11 | particular instrument.
12 |
13 | Coordinates: Longitude and latitude are referenced to the WGS84
14 | ellipsoid. Easting and northing are UTM Zone 34H projected
15 | coordinates in meters. Elevation is geometric height above the
16 | WGS84 ellipsoid in meters.
17 |
18 | Base stations: Each individual survey was tied to the closest base
19 | station available. All surveys begin and end at the base station.
20 | The time elapsed since the first reading at the base station is
21 | recorded in minutes. The absolute gravity values at each base
22 | station are provided in the bushveld-gravity-base-stations.csv file.
23 |
24 | ## Contents
25 |
26 | bushveld-surveys/
27 | ├── data
28 | │ ├── bushveld-gravity-day-1.csv
29 | │ ├── bushveld-gravity-day-2.csv
30 | │ ├── bushveld-gravity-day-3.csv
31 | │ ├── bushveld-gravity-day-4.csv
32 | │ ├── bushveld-gravity-day-5.csv
33 | │ ├── bushveld-gravity-day-6.csv
34 | │ ├── bushveld-gravity-day-7.csv
35 | │ ├── bushveld-gravity-day-8.csv
36 | │ ├── bushveld-gravity-day-9.csv
37 | │ ├── bushveld-gravity-day-10.csv
38 | │ ├── bushveld-gravity-day-11.csv
39 | │ ├── bushveld-gravity-day-12.csv
40 | │ ├── bushveld-gravity-day-13.csv
41 | │ ├── bushveld-gravity-day-14.csv
42 | │ └── bushveld-gravity-day-15.csv
43 | ├── bushveld-gravity-base-stations.csv
44 | ├── gravimeter-scaling.csv
45 | └── README.txt
46 |
47 | ## License
48 |
49 | This dataset is made available under the Creative Commons
50 | Attribution International 4.0 License.
--------------------------------------------------------------------------------
/data/bushveld-surveys/bushveld-gravity-base-stations.csv:
--------------------------------------------------------------------------------
1 | station_id,longitude,latitude,gravity
2 | 31,27.43333,-25.99001,978567.41
3 | 141,30.01639,-25.97722,978578.07
4 | 212,27.71883,-24.24251,978546.0
5 | 301,30.12666,-24.07668,978547.04
6 |
--------------------------------------------------------------------------------
/data/bushveld-surveys/data/bushveld-gravity-day-1.csv:
--------------------------------------------------------------------------------
1 | station_id,longitude,latitude,easting,northing,elevation,time_minutes,reading
2 | 31,27.43333,-25.99001,1144726.82,7109516.68,1587.99,0.0,2094.31
3 | 0,26.50162,-25.42709,1053773.17,7176320.94,1088.0,96.0,2166.36
4 | 1,26.52499,-25.84332,1054195.48,7129995.6,1544.71,131.0,2107.51
5 | 2,26.58333,-25.34309,1062405.25,7185307.41,1065.0,179.0,2171.45
6 | 3,26.60262,-25.49702,1063632.3,7168128.5,1195.0,193.0,2150.37
7 | 4,26.61333,-25.84,1063089.97,7129986.96,1513.93,226.0,2121.75
8 | 5,26.64494,-25.10564,1069734.99,7211420.94,1065.0,287.0,2168.03
9 | 6,26.70055,-25.02113,1075756.49,7220571.56,1041.0,295.0,2153.11
10 | 7,26.73466,-25.32137,1077784.36,7187072.31,1152.0,325.0,2164.61
11 | 8,26.7823,-25.41209,1082157.35,7176786.4,1119.0,335.0,2172.99
12 | 9,26.80493,-25.17828,1085569.06,7202662.49,1158.0,355.0,2157.14
13 | 10,26.82217,-25.31319,1086660.12,7187598.64,1173.0,367.0,2164.6
14 | 11,26.89618,-25.38133,1093799.58,7179699.77,1097.0,376.0,2186.46
15 | 12,26.9418,-25.10703,1099757.29,7209973.73,1052.0,403.0,2177.69
16 | 13,26.99461,-25.3987,1103648.32,7177326.07,1128.0,432.0,2182.03
17 | 14,27.02834,-25.63834,1105841.26,7150542.32,1110.68,458.0,2192.49
18 | 15,27.06332,-25.355,1110804.76,7181868.24,1077.46,484.0,2196.72
19 | 16,27.10001,-25.13333,1115632.56,7206334.44,1106.41,508.0,2183.25
20 | 17,27.11166,-25.24834,1116228.63,7193499.09,1133.54,520.0,2171.21
21 | 18,27.15334,-25.24834,1120441.47,7193306.01,1134.15,523.0,2182.96
22 | 19,27.19833,-25.63667,1122975.19,7149934.26,1219.19,566.0,2187.06
23 | 20,27.245,-25.09167,1130517.36,7210291.26,1089.95,614.0,2225.19
24 | 31,27.43333,-25.99001,1144726.82,7109516.68,1587.99,713.0,2122.83
25 |
--------------------------------------------------------------------------------
/data/bushveld-surveys/data/bushveld-gravity-day-10.csv:
--------------------------------------------------------------------------------
1 | station_id,longitude,latitude,easting,northing,elevation,time_minutes,reading
2 | 212,27.71883,-24.24251,1183137.19,7302426.53,1211.0,0.0,1728.57
3 | 189,27.27167,-24.52167,1136138.67,7273526.39,939.38,54.0,1773.83
4 | 190,27.29668,-24.01326,1141245.38,7329927.16,914.0,107.0,1754.29
5 | 191,27.32167,-25.0,1138756.33,7220119.37,1053.07,196.0,1849.67
6 | 192,27.34135,-24.96895,1140912.12,7223477.65,1030.08,199.0,1856.28
7 | 193,27.35249,-24.22729,1145862.04,7305875.78,1007.0,270.0,1746.13
8 | 194,27.38425,-24.17078,1149388.17,7312010.09,1004.0,277.0,1747.01
9 | 195,27.40167,-24.685,1148512.23,7254758.26,918.66,320.0,1834.24
10 | 196,27.40833,-24.58167,1149726.59,7266214.65,964.99,331.0,1807.71
11 | 197,27.43333,-24.8,1151124.87,7241821.24,927.5,354.0,1863.56
12 | 198,27.44968,-24.82106,1152673.15,7239401.12,909.0,356.0,1849.84
13 | 199,27.465,-24.97,1153437.74,7222767.23,1010.1,369.0,1828.36
14 | 200,27.47166,-24.85001,1154750.2,7236076.22,929.94,380.0,1853.15
15 | 201,27.49001,-24.77333,1157018.9,7244513.38,956.76,387.0,1835.68
16 | 202,27.49969,-24.17397,1161147.29,7311110.94,970.0,447.0,1777.09
17 | 203,27.52837,-24.9662,1159881.04,7222880.99,961.89,531.0,1852.23
18 | 204,27.54233,-24.93465,1161465.8,7226320.82,926.25,534.0,1850.61
19 | 205,27.56274,-24.94023,1163505.11,7225600.1,931.27,536.0,1841.42
20 | 206,27.58,-24.64999,1166816.53,7257790.61,959.5,562.0,1842.96
21 | 207,27.60109,-24.92947,1167451.85,7226607.48,965.38,592.0,1835.28
22 | 208,27.62991,-24.04652,1175105.48,7324658.99,1021.0,679.0,1764.3
23 | 209,27.67139,-24.91022,1174686.32,7228398.75,1040.14,759.0,1822.71
24 | 212,27.71883,-24.24251,1183137.19,7302426.53,1211.0,824.0,1745.05
25 |
--------------------------------------------------------------------------------
/data/bushveld-surveys/data/bushveld-gravity-day-11.csv:
--------------------------------------------------------------------------------
1 | station_id,longitude,latitude,easting,northing,elevation,time_minutes,reading
2 | 212,27.71883,-24.24251,1183137.19,7302426.53,1211.0,0.0,2177.38
3 | 210,27.6936,-24.0466,1181610.2,7324340.48,1020.0,22.0,2201.52
4 | 211,27.7079,-24.97186,1178049.53,7221360.14,1052.1,109.0,2256.85
5 | 213,27.74223,-24.06337,1186487.63,7322236.7,994.0,207.0,2212.07
6 | 214,27.77333,-24.62666,1186596.17,7259426.18,968.04,269.0,2270.8
7 | 215,27.80667,-24.59167,1190179.67,7263150.17,1134.76,274.0,2206.15
8 | 216,27.82935,-24.12064,1195074.7,7315433.98,987.0,323.0,2219.18
9 | 217,27.86572,-24.18449,1198438.23,7308148.45,1015.0,329.0,2216.66
10 | 218,27.89709,-24.09709,1202120.81,7317713.79,1212.0,337.0,2174.01
11 | 219,27.92168,-24.52499,1202252.77,7269982.59,1242.05,375.0,2179.73
12 | 220,27.93501,-24.03156,1206355.32,7324812.91,1333.0,418.0,2148.67
13 | 221,27.95168,-24.785,1203834.83,7240899.81,1221.93,482.0,2206.03
14 | 222,27.9808,-24.13535,1210457.61,7313031.82,1140.0,545.0,2195.54
15 | 223,28.02444,-24.07071,1215275.83,7320000.8,1284.9,552.0,2166.39
16 | 224,28.09946,-24.22017,1222093.57,7302980.58,1157.8,567.0,2198.45
17 | 225,28.16199,-24.22298,1228459.48,7302340.27,1173.9,572.0,2197.33
18 | 226,28.21925,-24.01126,1235523.83,7325603.48,1233.0,595.0,2180.04
19 | 227,28.29385,-24.02519,1243071.09,7323657.54,1295.3,601.0,2170.91
20 | 228,28.41258,-24.03503,1255153.92,7321924.03,1284.9,611.0,2171.17
21 | 229,28.84206,-24.79675,1294254.23,7234665.25,1012.2,690.0,2245.11
22 | 230,28.01833,-24.24167,1213693.12,7301008.84,1202.73,785.0,2188.72
23 | 212,27.71883,-24.24251,1183137.19,7302426.53,1211.0,813.0,2193.64
24 |
--------------------------------------------------------------------------------
/data/bushveld-surveys/data/bushveld-gravity-day-12.csv:
--------------------------------------------------------------------------------
1 | station_id,longitude,latitude,easting,northing,elevation,time_minutes,reading
2 | 212,27.71883,-24.24251,1183137.19,7302426.53,1211.0,0.0,1782.29
3 | 231,28.105,-24.42332,1221498.3,7280343.92,1194.5,36.0,1796.55
4 | 232,28.15167,-24.94167,1223231.01,7222410.57,1112.2,82.0,1846.78
5 | 233,28.25667,-24.89833,1234144.82,7226666.54,1117.08,91.0,1844.64
6 | 234,28.325,-24.28667,1244724.81,7294382.35,1417.92,159.0,1750.68
7 | 235,28.35333,-24.75333,1244833.09,7242278.49,1182.61,199.0,1819.71
8 | 236,28.40334,-24.69667,1250259.93,7248310.81,1155.79,206.0,1826.53
9 | 237,28.47667,-24.94501,1256195.34,7220253.19,1071.06,233.0,1855.23
10 | 238,28.52333,-24.29832,1264894.56,7292000.19,1495.64,291.0,1741.17
11 | 239,28.55333,-24.32333,1267804.35,7289048.34,1355.43,294.0,1765.69
12 | 240,28.59167,-24.645,1269737.9,7253011.38,1165.54,322.0,1825.66
13 | 241,28.63367,-24.09125,1277423.62,7314446.05,1302.7,376.0,1784.97
14 | 242,28.66875,-24.0444,1281297.09,7319467.64,1076.4,381.0,1837.21
15 | 243,28.71001,-24.28333,1284042.67,7292621.28,1254.55,401.0,1805.25
16 | 244,28.73746,-24.09438,1288017.28,7313512.72,1092.7,420.0,1850.62
17 | 245,28.74667,-24.55167,1286104.74,7262521.37,1076.85,469.0,1842.86
18 | 246,28.76573,-24.19902,1290257.89,7301695.27,1130.3,501.0,1855.46
19 | 247,28.79738,-24.13232,1293908.53,7308944.76,1295.3,507.0,1826.84
20 | 248,28.8114,-24.3123,1294213.29,7288813.58,1387.0,524.0,1795.52
21 | 249,28.82993,-24.40759,1295502.9,7278090.57,1097.3,533.0,1847.58
22 | 250,28.85333,-24.72333,1295872.88,7242778.44,1029.6,566.0,1857.66
23 | 251,28.87572,-24.01022,1302686.07,7322098.32,1057.2,626.0,1846.15
24 | 212,27.71883,-24.24251,1183137.19,7302426.53,1211.0,719.0,1818.24
25 |
--------------------------------------------------------------------------------
/data/bushveld-surveys/data/bushveld-gravity-day-13.csv:
--------------------------------------------------------------------------------
1 | station_id,longitude,latitude,easting,northing,elevation,time_minutes,reading
2 | 301,30.12666,-24.07668,1430372.28,7306880.44,1084.0,0.0,1977.66
3 | 252,28.89702,-24.04182,1304667.33,7318454.43,1052.7,124.0,2029.76
4 | 253,28.90508,-24.46939,1302774.37,7270766.99,1068.8,170.0,2033.47
5 | 254,28.93227,-24.22745,1307096.01,7297565.59,1522.0,194.0,1999.54
6 | 255,28.95132,-24.04062,1310231.67,7318273.02,1159.9,212.0,2004.29
7 | 256,28.96808,-24.32858,1310106.65,7286086.62,1083.0,239.0,2077.71
8 | 257,28.98926,-24.25143,1312765.68,7294559.09,1073.1,247.0,2082.46
9 | 258,29.03,-24.42667,1315792.75,7274789.12,1046.06,266.0,2034.06
10 | 259,29.05646,-24.09496,1320642.93,7311600.23,1217.3,302.0,1978.82
11 | 260,29.08624,-24.86584,1318631.25,7225507.99,937.6,369.0,2057.92
12 | 261,29.11166,-24.375,1324464.53,7280059.46,1080.81,415.0,2023.21
13 | 262,29.12505,-24.14848,1327312.85,7305227.34,1309.9,438.0,1976.42
14 | 263,29.145,-24.76167,1325303.41,7236760.2,920.18,492.0,2072.27
15 | 264,29.17368,-24.89845,1327302.67,7221339.11,907.4,504.0,2076.16
16 | 265,29.19148,-24.13628,1334187.77,7306188.81,1430.5,577.0,1958.86
17 | 266,29.21484,-24.92857,1331283.02,7217727.97,866.2,647.0,2104.53
18 | 267,29.22833,-24.31833,1336753.24,7285671.14,1129.58,700.0,2003.22
19 | 268,29.24742,-24.95706,1334400.49,7214350.16,890.8,763.0,2121.54
20 | 269,29.26334,-24.46167,1339371.4,7269477.34,945.79,818.0,2052.11
21 | 270,29.28667,-24.53667,1341247.07,7260972.34,905.86,825.0,2068.33
22 | 271,29.29362,-24.18449,1344317.0,7300194.58,1279.7,861.0,1981.35
23 | 272,29.3,-24.94833,1339804.03,7214995.5,878.43,941.0,2136.55
24 | 301,30.12666,-24.07668,1430372.28,7306880.44,1084.0,1062.0,2009.52
25 |
--------------------------------------------------------------------------------
/data/bushveld-surveys/data/bushveld-gravity-day-14.csv:
--------------------------------------------------------------------------------
1 | station_id,longitude,latitude,easting,northing,elevation,time_minutes,reading
2 | 301,30.12666,-24.07668,1430372.28,7306880.44,1084.0,0.0,1950.31
3 | 273,29.31667,-24.88167,1341956.11,7222322.83,873.85,103.0,2069.08
4 | 274,29.33501,-24.35167,1347427.9,7281300.36,976.57,162.0,2004.51
5 | 275,29.345,-24.23666,1349222.37,7294062.56,1108.24,172.0,1952.99
6 | 276,29.37,-24.655,1348938.03,7247261.59,866.84,213.0,2055.18
7 | 277,29.38855,-24.05894,1354870.97,7313611.8,1383.9,274.0,1913.04
8 | 278,29.40833,-24.62334,1353061.57,7250551.63,872.94,325.0,2063.74
9 | 279,29.42999,-24.505,1356082.6,7263612.0,878.73,335.0,2058.07
10 | 280,29.44501,-24.94501,1354567.86,7214450.54,862.27,379.0,2081.22
11 | 281,29.46025,-24.07021,1362137.2,7311911.51,1413.2,460.0,1898.64
12 | 282,29.47501,-24.53999,1360435.1,7259426.63,834.53,507.0,2085.04
13 | 283,29.52255,-24.14111,1368033.17,7303614.82,1347.2,545.0,1910.79
14 | 284,29.545,-24.49001,1367923.12,7264557.43,818.99,579.0,2084.74
15 | 285,29.55499,-24.57333,1368362.29,7255200.52,823.26,586.0,2085.82
16 | 286,29.57333,-24.63,1369836.25,7248762.36,898.24,592.0,2073.42
17 | 287,29.60167,-24.52499,1373462.79,7260293.95,828.44,602.0,2081.98
18 | 288,29.645,-24.56168,1377626.24,7255922.61,924.14,608.0,2079.43
19 | 289,29.6875,-24.12833,1385008.17,7303995.52,1800.0,646.0,1818.4
20 | 290,29.74167,-24.64,1386930.54,7246557.25,1048.5,697.0,2078.62
21 | 291,29.755,-24.41333,1389906.94,7271761.16,776.32,719.0,2093.92
22 | 292,29.80833,-24.72,1393151.11,7237192.96,1239.61,751.0,2054.32
23 | 293,29.85001,-24.74167,1397241.83,7234498.79,1380.73,756.0,2031.95
24 | 301,30.12666,-24.07668,1430372.28,7306880.44,1084.0,830.0,1983.51
25 |
--------------------------------------------------------------------------------
/data/bushveld-surveys/data/bushveld-gravity-day-15.csv:
--------------------------------------------------------------------------------
1 | station_id,longitude,latitude,easting,northing,elevation,time_minutes,reading
2 | 301,30.12666,-24.07668,1430372.28,7306880.44,1084.0,0.0,1961.01
3 | 294,29.87583,-24.47197,1401830.58,7264425.3,907.0,45.0,2064.63
4 | 295,29.92999,-24.51167,1407074.24,7259635.25,1075.32,50.0,2003.57
5 | 296,29.98334,-24.87167,1409868.69,7219096.27,1016.5,83.0,2078.19
6 | 297,30.0325,-24.62117,1416735.54,7246725.07,1554.0,108.0,1944.49
7 | 298,30.06,-24.47833,1420598.48,7262485.16,848.86,123.0,2083.57
8 | 299,30.075,-24.42,1422561.63,7268895.91,766.87,128.0,2082.08
9 | 300,30.09833,-24.35834,1425401.85,7275622.45,707.13,134.0,2067.2
10 | 302,30.17084,-24.1925,1434047.93,7293649.25,1625.0,150.0,1863.76
11 | 303,30.21918,-24.01167,1440338.43,7313515.89,628.0,170.0,2072.39
12 | 304,30.32333,-24.47083,1447566.83,7261518.28,1378.0,221.0,1912.42
13 | 305,30.39999,-24.65167,1454013.9,7240781.89,962.24,239.0,2022.77
14 | 306,30.44167,-24.71249,1457797.27,7233693.0,1387.0,245.0,1946.73
15 | 307,30.46417,-24.43832,1462217.17,7264163.49,569.0,270.0,2079.41
16 | 308,30.50999,-24.86833,1463546.31,7215795.33,1517.0,307.0,1929.1
17 | 309,30.575,-24.85333,1470291.75,7217002.85,1220.41,312.0,1989.19
18 | 310,30.67667,-24.00999,1487306.65,7310523.65,487.37,387.0,2107.65
19 | 311,30.83,-24.15833,1501880.6,7292835.71,450.79,409.0,2131.6
20 | 312,30.84332,-24.93167,1497014.44,7206277.07,1440.17,486.0,1962.13
21 | 313,30.91167,-24.955,1503789.95,7203157.14,971.39,492.0,2059.15
22 | 301,30.12666,-24.07668,1430372.28,7306880.44,1084.0,594.0,1984.77
23 |
--------------------------------------------------------------------------------
/data/bushveld-surveys/data/bushveld-gravity-day-2.csv:
--------------------------------------------------------------------------------
1 | station_id,longitude,latitude,easting,northing,elevation,time_minutes,reading
2 | 31,27.43333,-25.99001,1144726.82,7109516.68,1587.99,0.0,1959.11
3 | 21,27.25,-25.21667,1130376.64,7196373.38,1131.1,75.0,2056.9
4 | 22,27.27333,-25.77,1129825.43,7134756.48,1193.59,127.0,2047.54
5 | 23,27.285,-25.60333,1131884.49,7153227.02,1103.98,144.0,2083.12
6 | 24,27.30833,-25.56,1134465.95,7157931.52,1091.48,148.0,2087.26
7 | 25,27.32167,-25.49001,1136182.5,7165647.63,1074.41,155.0,2088.14
8 | 26,27.37666,-25.42833,1142060.29,7172238.98,1110.38,163.0,2073.34
9 | 27,27.395,-25.92833,1141212.03,7116563.5,1485.89,206.0,1994.51
10 | 28,27.40334,-25.895,1142232.15,7120227.78,1464.86,209.0,2002.38
11 | 29,27.41,-25.14,1146964.36,7204132.57,1053.68,283.0,2068.4
12 | 30,27.42,-25.505,1146023.29,7163504.33,1049.42,322.0,2111.92
13 | 32,27.45168,-25.00833,1151884.16,7218570.08,1022.59,364.0,2045.38
14 | 33,27.48167,-25.27081,1153514.06,7189240.05,1017.1,389.0,2086.18
15 | 34,27.48833,-25.72166,1151733.21,7139078.91,1189.93,431.0,2078.19
16 | 35,27.50471,-25.2513,1155949.0,7191296.18,1009.9,475.0,2079.98
17 | 36,27.52167,-25.05833,1158706.72,7212669.52,951.27,496.0,2076.62
18 | 37,27.53168,-25.315,1158329.86,7184080.21,1002.17,520.0,2098.46
19 | 38,27.55667,-25.36667,1160572.96,7178210.77,997.91,525.0,2101.55
20 | 39,27.57832,-25.25,1163399.88,7191076.59,973.83,536.0,2079.32
21 | 40,27.59833,-25.89667,1161832.63,7119066.14,1274.36,604.0,2051.59
22 | 41,27.63,-25.42,1167686.1,7171913.21,1024.42,647.0,2103.24
23 | 31,27.43333,-25.99001,1144726.82,7109516.68,1587.99,712.0,1987.59
24 |
--------------------------------------------------------------------------------
/data/bushveld-surveys/data/bushveld-gravity-day-3.csv:
--------------------------------------------------------------------------------
1 | station_id,longitude,latitude,easting,northing,elevation,time_minutes,reading
2 | 31,27.43333,-25.99001,1144726.82,7109516.68,1587.99,0.0,1784.63
3 | 42,27.645,-25.00667,1171482.35,7217804.02,1034.48,101.0,1850.94
4 | 43,27.67168,-25.67,1170493.1,7143899.46,1128.97,172.0,1902.5
5 | 44,27.68333,-25.62833,1171902.31,7148474.16,1097.27,176.0,1906.54
6 | 45,27.72,-25.55667,1176005.19,7156256.19,1065.57,184.0,1902.49
7 | 46,27.76666,-25.79167,1179369.01,7129878.16,1196.94,207.0,1862.13
8 | 47,27.78168,-25.40833,1183072.41,7172438.0,1154.27,249.0,1876.25
9 | 48,27.80333,-25.39,1185363.92,7174365.1,1078.98,252.0,1880.65
10 | 49,27.84,-25.63333,1187670.74,7147107.8,1163.11,277.0,1894.48
11 | 50,27.89667,-25.69667,1193016.27,7139763.8,1280.15,285.0,1846.86
12 | 51,27.94501,-25.095,1201385.73,7206444.96,1028.39,344.0,1849.72
13 | 52,27.96832,-25.2,1203140.51,7194640.61,1036.92,354.0,1854.99
14 | 53,28.01669,-25.62148,1205560.0,7147489.47,1250.7,391.0,1878.58
15 | 54,28.01831,-25.84744,1204379.45,7122340.14,1426.5,414.0,1813.03
16 | 55,28.02631,-25.89709,1204887.75,7116772.74,1460.1,419.0,1806.59
17 | 56,28.06245,-25.217,1212569.58,7192249.68,1026.0,484.0,1864.89
18 | 57,28.0752,-25.49483,1212216.89,7161266.51,1210.5,509.0,1881.56
19 | 58,28.0816,-25.05736,1215445.54,7209911.28,1104.6,553.0,1841.91
20 | 59,28.09567,-25.81029,1212392.39,7126053.5,1419.05,618.0,1830.71
21 | 60,28.12502,-25.44487,1217547.16,7166556.27,1143.0,651.0,1890.16
22 | 61,28.14319,-25.71712,1217743.52,7136161.15,1286.4,680.0,1875.03
23 | 62,28.15816,-25.53993,1220323.8,7155797.3,1281.8,697.0,1883.18
24 | 31,27.43333,-25.99001,1144726.82,7109516.68,1587.99,768.0,1815.35
25 |
--------------------------------------------------------------------------------
/data/bushveld-surveys/data/bushveld-gravity-day-4.csv:
--------------------------------------------------------------------------------
1 | station_id,longitude,latitude,easting,northing,elevation,time_minutes,reading
2 | 31,27.43333,-25.99001,1144726.82,7109516.68,1587.99,0.0,1645.19
3 | 63,28.17303,-25.20828,1223815.74,7192624.55,1036.0,91.0,1717.93
4 | 64,28.19034,-25.0687,1226400.92,7208064.71,1057.0,105.0,1700.83
5 | 65,28.21205,-25.37659,1226753.68,7173680.18,1101.8,136.0,1722.1
6 | 66,28.22443,-25.89619,1224833.62,7115784.14,1446.3,184.0,1669.8
7 | 67,28.24496,-25.09325,1231790.54,7205035.13,1068.0,256.0,1709.11
8 | 68,28.27469,-25.92909,1229688.79,7111841.31,1524.7,336.0,1664.87
9 | 69,28.28986,-25.16357,1235916.25,7196961.78,1053.5,416.0,1735.78
10 | 70,28.30331,-25.12648,1237503.61,7201016.09,1076.4,420.0,1721.14
11 | 71,28.33624,-25.71764,1237203.5,7135030.31,1316.5,473.0,1718.66
12 | 72,28.34653,-25.0143,1242565.68,7213264.67,1094.2,533.0,1722.25
13 | 73,28.37395,-25.0695,1245010.45,7206967.73,1089.2,538.0,1732.82
14 | 74,28.3997,-25.97581,1241975.31,7105932.1,1590.3,628.0,1668.04
15 | 75,28.41843,-25.18625,1248801.85,7193721.97,1089.9,697.0,1726.25
16 | 76,28.44212,-25.11243,1251657.97,7201807.35,1059.0,704.0,1729.09
17 | 77,28.45992,-25.6833,1249892.67,7138150.59,1381.2,752.0,1716.14
18 | 78,28.46815,-25.6311,1251052.8,7143914.95,1308.2,757.0,1724.67
19 | 79,28.49174,-25.73001,1252806.08,7132767.58,1392.4,766.0,1717.14
20 | 80,28.51593,-25.81731,1254687.89,7122908.29,1508.9,775.0,1702.95
21 | 81,28.53236,-25.16946,1260449.14,7194946.92,1027.4,841.0,1741.65
22 | 82,28.55167,-25.91476,1257661.98,7111850.52,1502.2,904.0,1709.92
23 | 83,28.56635,-25.23845,1263458.9,7187070.57,1062.0,973.0,1744.44
24 | 31,27.43333,-25.99001,1144726.82,7109516.68,1587.99,1102.0,1689.27
25 |
--------------------------------------------------------------------------------
/data/bushveld-surveys/data/bushveld-gravity-day-5.csv:
--------------------------------------------------------------------------------
1 | station_id,longitude,latitude,easting,northing,elevation,time_minutes,reading
2 | 141,30.01639,-25.97722,1404827.59,7095483.24,1650.7,0.0,2172.94
3 | 84,28.58347,-25.83536,1261377.77,7120505.56,1454.0,143.0,2205.02
4 | 85,28.60896,-25.47177,1266288.05,7160843.49,1239.9,184.0,2221.48
5 | 86,28.6329,-25.27931,1269939.05,7182136.81,1049.9,203.0,2228.46
6 | 87,28.63901,-25.02795,1272153.64,7210094.08,1019.4,229.0,2208.41
7 | 88,28.65929,-25.57227,1270727.26,7149358.12,1386.2,278.0,2195.89
8 | 89,28.68578,-25.12886,1276256.53,7198585.22,984.0,327.0,2225.02
9 | 90,28.71687,-25.4567,1277294.71,7161890.61,1405.2,355.0,2167.49
10 | 91,28.72331,-25.74481,1276065.36,7129764.88,1439.9,380.0,2208.4
11 | 92,28.74933,-25.40129,1280937.58,7167870.58,1388.0,409.0,2163.76
12 | 93,28.76787,-25.28824,1283548.57,7180352.92,1155.1,419.0,2205.28
13 | 94,28.78389,-25.99124,1280538.93,7101956.11,1519.2,483.0,2236.73
14 | 95,28.80284,-25.35629,1286645.61,7172565.97,1432.7,539.0,2158.09
15 | 96,28.82713,-25.0638,1291012.02,7205003.62,969.6,564.0,2229.09
16 | 97,28.83708,-25.5957,1288532.18,7145693.3,1436.3,610.0,2193.79
17 | 98,28.86336,-25.02509,1294940.39,7209101.48,969.8,668.0,2230.03
18 | 99,28.89302,-25.82732,1292630.94,7119553.54,1392.6,736.0,2211.93
19 | 100,28.90314,-25.07349,1298661.41,7203472.65,943.0,799.0,2241.23
20 | 101,28.93027,-25.12009,1301107.56,7198118.46,949.1,804.0,2242.13
21 | 102,28.96875,-25.28749,1303898.93,7179235.31,1314.7,820.0,2195.54
22 | 103,28.98949,-25.83623,1302296.9,7117969.67,1421.9,871.0,2222.26
23 | 104,29.01556,-25.20917,1309165.07,7187677.91,1004.3,928.0,2256.78
24 | 141,30.01639,-25.97722,1404827.59,7095483.24,1650.7,1030.0,2203.84
25 |
--------------------------------------------------------------------------------
/data/bushveld-surveys/data/bushveld-gravity-day-6.csv:
--------------------------------------------------------------------------------
1 | station_id,longitude,latitude,easting,northing,elevation,time_minutes,reading
2 | 141,30.01639,-25.97722,1404827.59,7095483.24,1650.7,0.0,1959.06
3 | 105,29.045,-25.70528,1308790.67,7132217.18,1436.0,93.0,1973.54
4 | 106,29.06361,-25.47139,1312264.23,7158164.43,1499.6,116.0,1927.94
5 | 107,29.07556,-25.20557,1315271.91,7187712.85,1053.7,143.0,2008.59
6 | 108,29.1039,-25.58583,1315557.2,7145162.41,1200.1,177.0,1990.87
7 | 109,29.13972,-25.71584,1318280.16,7130450.56,1413.3,192.0,1981.29
8 | 110,29.15833,-25.15833,1323985.25,7192468.15,1014.8,247.0,2016.88
9 | 111,29.18944,-25.92751,1321820.88,7106547.64,1545.3,323.0,1993.77
10 | 112,29.21222,-25.42612,1327611.42,7162285.54,1447.6,373.0,1954.9
11 | 113,29.24139,-25.30806,1331380.64,7175261.86,1075.2,384.0,2025.65
12 | 114,29.28972,-25.2114,1336947.78,7185732.98,946.2,395.0,2041.11
13 | 115,29.32973,-25.27556,1340558.83,7178327.73,1060.7,401.0,2037.99
14 | 116,29.35806,-25.81583,1339614.22,7117916.79,1504.9,455.0,1998.8
15 | 117,29.38693,-25.09193,1347641.79,7198437.76,951.9,516.0,2044.1
16 | 118,29.40028,-25.47639,1346293.39,7155487.36,1280.5,549.0,2007.39
17 | 119,29.44278,-25.37582,1351309.39,7166427.04,1006.8,560.0,2063.94
18 | 120,29.46388,-25.73334,1350887.64,7126426.62,1481.1,596.0,2006.95
19 | 121,29.47694,-25.92027,1350853.16,7105498.72,1601.9,613.0,2003.71
20 | 122,29.50444,-25.05444,1359838.99,7201867.17,1294.0,698.0,1989.41
21 | 123,29.53471,-25.43639,1360187.46,7159076.66,1105.0,739.0,2053.41
22 | 124,29.56029,-25.65222,1361215.3,7134840.07,1559.3,761.0,1992.97
23 | 125,29.59639,-25.19611,1368166.06,7185471.22,1084.6,809.0,2055.3
24 | 141,30.01639,-25.97722,1404827.59,7095483.24,1650.7,894.0,1976.94
25 |
--------------------------------------------------------------------------------
/data/bushveld-surveys/data/bushveld-gravity-day-7.csv:
--------------------------------------------------------------------------------
1 | station_id,longitude,latitude,easting,northing,elevation,time_minutes,reading
2 | 141,30.01639,-25.97722,1404827.59,7095483.24,1650.7,0.0,2068.95
3 | 126,29.62862,-25.34029,1370395.02,7169178.76,1234.3,63.0,2125.6
4 | 127,29.64833,-25.29083,1372751.69,7174565.65,1179.5,68.0,2131.14
5 | 128,29.67612,-25.96472,1370608.36,7099216.75,1603.2,142.0,2132.96
6 | 129,29.70889,-25.64528,1376288.52,7134626.58,1663.0,171.0,2086.67
7 | 130,29.73639,-25.34583,1381278.88,7167846.65,1348.0,197.0,2121.32
8 | 131,29.76418,-25.35306,1384042.87,7166854.41,1401.2,199.0,2111.13
9 | 132,29.78082,-25.42889,1385169.33,7158283.03,1768.0,207.0,2047.93
10 | 133,29.80888,-25.87193,1384696.1,7108666.86,1695.6,252.0,2096.63
11 | 134,29.84444,-25.04195,1394479.42,7201028.48,935.5,322.0,2206.02
12 | 135,29.8539,-25.25639,1393856.89,7177037.2,1473.0,343.0,2096.01
13 | 136,29.86722,-25.10918,1396299.06,7193373.73,1080.0,357.0,2173.68
14 | 137,29.91528,-25.00166,1401979.38,7205048.45,931.6,367.0,2195.4
15 | 138,29.92889,-25.54028,1399331.64,7144849.28,1572.8,414.0,2069.06
16 | 139,29.95694,-25.94943,1399045.31,7098999.6,1705.5,449.0,2083.16
17 | 140,29.99417,-25.75778,1404277.6,7120127.06,1884.5,466.0,2019.39
18 | 142,30.05472,-25.70583,1410798.18,7125502.74,1921.5,473.0,2006.65
19 | 143,30.07111,-25.64528,1412923.01,7132146.25,1939.7,479.0,1999.53
20 | 144,30.1039,-25.81528,1414920.28,7112941.44,1803.0,497.0,2041.16
21 | 145,30.14861,-25.32306,1423256.95,7167572.4,2105.0,541.0,1951.32
22 | 146,30.17612,-25.15944,1427306.8,7185647.04,1758.0,557.0,2009.2
23 | 141,30.01639,-25.97722,1404827.59,7095483.24,1650.7,647.0,2088.36
24 |
--------------------------------------------------------------------------------
/data/bushveld-surveys/data/bushveld-gravity-day-8.csv:
--------------------------------------------------------------------------------
1 | station_id,longitude,latitude,easting,northing,elevation,time_minutes,reading
2 | 141,30.01639,-25.97722,1404827.59,7095483.24,1650.7,0.0,2137.04
3 | 147,30.21693,-25.30833,1430303.61,7168737.61,1896.0,60.0,2041.9
4 | 148,30.23582,-25.71832,1429014.43,7122829.29,1594.3,105.0,2124.6
5 | 149,30.245,-25.17307,1434200.92,7183642.53,1767.0,153.0,2056.73
6 | 150,30.26582,-25.92278,1430426.29,7099787.33,1471.0,219.0,2151.99
7 | 151,30.28722,-25.645,1434793.23,7130647.96,1496.3,242.0,2137.85
8 | 152,30.29778,-25.51917,1436855.38,7144622.45,1676.5,255.0,2101.37
9 | 153,30.34862,-25.44194,1442617.68,7152882.56,1317.0,265.0,2167.39
10 | 154,30.38055,-25.02444,1449139.65,7199281.92,1481.7,305.0,2092.35
11 | 155,30.40138,-25.37971,1448461.55,7159453.23,1150.4,335.0,2195.94
12 | 156,30.41,-25.81528,1445852.63,7110745.75,1251.6,372.0,2195.23
13 | 157,30.45944,-25.22833,1455557.08,7175942.92,1441.5,431.0,2107.19
14 | 158,30.48111,-25.60806,1454718.05,7133370.01,1088.0,469.0,2219.23
15 | 159,30.50583,-25.90668,1454794.26,7099834.04,1893.5,494.0,2076.27
16 | 160,30.565,-25.39333,1464955.32,7156742.69,949.75,539.0,2242.34
17 | 161,30.63333,-25.58667,1470311.78,7134637.7,925.67,556.0,2246.66
18 | 162,30.705,-25.84833,1475404.04,7104865.65,1115.56,580.0,2207.75
19 | 163,30.76666,-25.59167,1483781.37,7133081.37,1634.63,605.0,2105.02
20 | 164,30.78168,-25.82832,1483325.36,7106521.27,1371.59,630.0,2180.81
21 | 165,30.845,-25.35333,1493709.85,7159129.09,996.38,676.0,2198.34
22 | 166,30.91333,-25.44501,1499882.11,7148362.33,680.61,688.0,2265.71
23 | 167,30.97333,-25.58333,1504801.07,7132439.15,981.45,701.0,2231.76
24 | 141,30.01639,-25.97722,1404827.59,7095483.24,1650.7,787.0,2152.78
25 |
--------------------------------------------------------------------------------
/data/bushveld-surveys/data/bushveld-gravity-day-9.csv:
--------------------------------------------------------------------------------
1 | station_id,longitude,latitude,easting,northing,elevation,time_minutes,reading
2 | 212,27.71883,-24.24251,1183137.19,7302426.53,1211.0,0.0,2011.05
3 | 168,30.995,-25.375,1508764.43,7155564.9,834.23,299.0,2142.17
4 | 169,26.55809,-24.52959,1063564.84,7275766.04,914.0,711.0,2095.44
5 | 170,26.59583,-24.84729,1065955.37,7240323.46,1045.0,740.0,2082.7
6 | 171,26.65477,-24.95258,1071441.44,7228380.81,1021.0,751.0,2094.63
7 | 172,26.72694,-24.92503,1078879.64,7231133.98,1062.0,758.0,2079.55
8 | 173,26.78526,-24.65182,1086076.96,7261235.1,988.0,784.0,2091.43
9 | 174,26.83665,-24.10861,1093841.54,7321364.91,892.4,834.0,2063.35
10 | 175,26.89397,-24.93665,1095745.0,7229117.18,1119.0,920.0,2077.04
11 | 176,26.91644,-24.99652,1097730.44,7222365.68,1064.0,926.0,2099.06
12 | 177,26.94885,-24.69603,1102474.36,7255610.66,1024.0,958.0,2088.82
13 | 178,26.96692,-24.11427,1107100.63,7320174.97,897.0,1009.0,2066.78
14 | 179,26.99442,-24.99936,1105613.15,7221701.98,1036.0,1099.0,2114.89
15 | 180,27.01822,-24.13608,1112228.5,7317526.9,911.0,1181.0,2070.65
16 | 181,27.03168,-24.755,1110593.57,7248688.85,1106.11,1237.0,2086.57
17 | 182,27.04668,-24.675,1112509.48,7257511.71,1031.74,1245.0,2094.17
18 | 183,27.07841,-24.03625,1118849.09,7328355.46,930.0,1306.0,2075.1
19 | 184,27.12167,-24.29333,1122010.16,7299591.37,934.81,1334.0,2070.08
20 | 185,27.14,-24.32668,1123713.22,7295802.26,924.75,1337.0,2076.44
21 | 186,27.18318,-24.03487,1129550.24,7328040.93,923.62,1366.0,2082.1
22 | 187,27.20551,-24.17311,1131147.42,7312574.52,959.0,1379.0,2065.46
23 | 188,27.25504,-24.97021,1132159.78,7223745.08,1012.66,1462.0,2181.85
24 | 212,27.71883,-24.24251,1183137.19,7302426.53,1211.0,1539.0,2057.22
25 |
--------------------------------------------------------------------------------
/data/bushveld-surveys/gravimeter-scaling.csv:
--------------------------------------------------------------------------------
1 | counter_reading,value_mgal,interval_factor
2 | 0000,0000.00,1.00636
3 | 0100,0100.64,1.00621
4 | 0200,0201.26,1.00609
5 | 0300,0301.87,1.00597
6 | 0400,0402.46,1.00588
7 | 0500,0503.05,1.00579
8 | 0600,0603.63,1.00570
9 | 0700,0704.20,1.00563
10 | 0800,0804.76,1.00557
11 | 0900,0905.32,1.00551
12 | 1000,1005.87,1.00544
13 | 1100,1106.42,1.00539
14 | 1200,1206.95,1.00533
15 | 1300,1307.49,1.00528
16 | 1400,1408.02,1.00524
17 | 1500,1508.54,1.00522
18 | 1600,1609.06,1.00520
19 | 1700,1709.58,1.00519
20 | 1800,1810.10,1.00518
21 | 1900,1910.62,1.00518
22 | 2000,2011.14,1.00519
23 | 2100,2111.66,1.00520
24 | 2200,2212.18,1.00521
25 | 2300,2312.70,1.00523
26 | 2400,2413.22,1.00525
27 | 2500,2513.74,1.00528
28 | 2600,2614.27,1.00530
29 | 2700,2714.80,1.00531
30 | 2800,2815.33,1.00533
31 | 2900,2915.87,1.00535
32 | 3000,3016.40,1.00536
33 | 3100,3116.94,1.00536
34 | 3200,3217.47,1.00536
35 | 3300,3318.01,1.00536
36 | 3400,3418.55,1.00536
37 | 3500,3519.08,1.00535
38 | 3600,3619.62,1.00533
39 | 3700,3720.15,1.00529
40 | 3800,3820.68,1.00526
41 | 3900,3921.20,1.00523
42 | 4000,4021.73,1.00519
43 | 4100,4122.25,1.00513
44 | 4200,4222.76,1.00509
45 | 4300,4323.27,1.00504
46 | 4400,4423.77,1.00500
47 | 4500,4524.27,1.00494
48 | 4600,4624.77,1.00487
49 | 4700,4725.25,1.00480
50 | 4800,4825.73,1.00474
51 | 4900,4926.21,1.00464
52 | 5000,5026.67,1.00454
53 | 5100,5127.13,1.00444
54 | 5200,5227.57,1.00432
55 | 5300,5328.00,1.00420
56 | 5400,5428.42,1.00406
57 | 5500,5528.83,1.00392
58 | 5600,5629.22,1.00375
59 | 5700,5729.59,1.00355
60 | 5800,5829.95,1.00335
61 | 5900,5930.28,1.00316
62 | 6000,6030.60,1.00296
63 | 6100,6130.90,1.00275
64 | 6200,6231.17,1.00254
65 | 6300,6331.43,1.00231
66 | 6400,6431.66,1.00206
67 | 6500,6531.86,1.00181
68 | 6600,6632.04,1.00154
69 | 6700,6732.20,1.00123
70 | 6800,6832.32,1.00089
71 | 6900,6932.41,1.00047
72 | 7000,7032.46,1.00000
--------------------------------------------------------------------------------
/data/cape-granite-surveys.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/data/cape-granite-surveys.zip
--------------------------------------------------------------------------------
/data/cape-granite-surveys/README.txt:
--------------------------------------------------------------------------------
1 | # Cape Granite Suite Gravity Surveys
2 |
3 | This archive contains gravity readings for a ground-based survey
4 | of the Cape Granite Suite in South Africa. The survey was conducted
5 | over 9 days using the same gravimeter (L&R Model G).
6 |
7 | ## Survey information
8 |
9 | Gravimeter: All surveys were carried out with the same gravimeter.
10 | The file gravimeter-scaling.csv contains the scaling table for this
11 | particular instrument.
12 |
13 | Coordinates: Longitude and latitude are referenced to the WGS84
14 | ellipsoid. Easting and northing are UTM Zone 36 projected
15 | coordinates in meters. Elevation is geometric height above the
16 | WGS84 ellipsoid in meters.
17 |
18 | Base stations: Each individual survey was tied to the closest base
19 | station available. All surveys begin and end at the base station.
20 | The time elapsed since the first reading at the base station is
21 | recorded in minutes. The absolute gravity values at each base
22 | station are provided in the bushveld-gravity-base-stations.csv file.
23 |
24 | ## Contents
25 |
26 | cape-granite-surveys
27 | ├── cape-granite-gravity-base-stations.csv
28 | ├── data
29 | │ ├── cape-granite-gravity-day-1.csv
30 | │ ├── cape-granite-gravity-day-2.csv
31 | │ ├── cape-granite-gravity-day-3.csv
32 | │ ├── cape-granite-gravity-day-4.csv
33 | │ ├── cape-granite-gravity-day-5.csv
34 | │ ├── cape-granite-gravity-day-6.csv
35 | │ ├── cape-granite-gravity-day-7.csv
36 | │ ├── cape-granite-gravity-day-8.csv
37 | │ └── cape-granite-gravity-day-9.csv
38 | ├── gravimeter-scaling.csv
39 | └── README.txt
40 |
41 | ## License
42 |
43 | This dataset is made available under the Creative Commons
44 | Attribution International 4.0 License.
--------------------------------------------------------------------------------
/data/cape-granite-surveys/cape-granite-gravity-base-stations.csv:
--------------------------------------------------------------------------------
1 | station_id,longitude,latitude,gravity
2 | 9,19.22462,-34.19405,979625.09
3 | 32,18.44397,-33.58385,979577.21
4 | 50,18.68443,-33.82832,979583.37
5 | 65,18.96222,-33.13083,979517.44
6 | 80,18.06194,-32.92667,979547.48
7 | 95,18.41333,-32.8875,979545.75
8 | 103,18.50278,-32.42999,979531.06
9 | 123,18.7739,-32.96417,979523.37
10 | 136,18.94556,-32.62971,979405.85
11 |
--------------------------------------------------------------------------------
/data/cape-granite-surveys/data/cape-granite-gravity-day-1.csv:
--------------------------------------------------------------------------------
1 | station_id,longitude,latitude,easting,northing,elevation,time_minutes,reading
2 | 9,19.22462,-34.19405,-773714.59,6129272.41,79.0,0.0,2094.31
3 | 0,18.34444,-34.12971,-856779.83,6124813.86,32.2,78.0,2128.3
4 | 1,18.42557,-34.29778,-846453.18,6107067.17,104.0,93.0,2135.48
5 | 2,18.54388,-34.07861,-839002.0,6133257.14,34.7,118.0,2114.19
6 | 3,18.71889,-34.03082,-823432.79,6140961.62,19.3,132.0,2114.96
7 | 4,18.84778,-34.13861,-809691.08,6130582.54,14.0,146.0,2124.65
8 | 5,18.88528,-34.09473,-806889.19,6135996.12,296.5,151.0,2049.58
9 | 6,19.0174,-34.21436,-792692.41,6124315.98,195.0,167.0,2087.64
10 | 7,19.11142,-34.0331,-786757.07,6145851.94,313.9,184.0,2032.22
11 | 8,19.15,-34.35167,-778209.96,6110650.39,11.58,215.0,2146.54
12 | 10,19.2729,-34.01733,-771932.23,6149691.83,337.0,246.0,2035.92
13 | 11,19.35654,-34.17191,-761771.48,6133436.76,262.4,262.0,2073.6
14 | 12,19.36485,-34.56136,-755023.43,6089920.04,50.9,295.0,2174.36
15 | 13,19.422,-34.29756,-753763.79,6120191.5,280.0,318.0,2086.95
16 | 14,19.48856,-34.25705,-748191.0,6125568.53,266.0,325.0,2090.93
17 | 15,19.58333,-34.595,-734274.48,6088916.22,75.89,360.0,2171.34
18 | 16,19.72166,-34.185,-727588.12,6136541.47,218.84,397.0,2098.08
19 | 9,19.22462,-34.19405,-773714.59,6129272.41,79.0,434.0,2111.67
20 |
--------------------------------------------------------------------------------
/data/cape-granite-surveys/data/cape-granite-gravity-day-2.csv:
--------------------------------------------------------------------------------
1 | station_id,longitude,latitude,easting,northing,elevation,time_minutes,reading
2 | 32,18.44397,-33.58385,-856356.49,6187425.59,131.79,0.0,1959.11
3 | 17,19.92999,-34.7,-700636.96,6081455.15,10.36,153.0,2110.37
4 | 18,18.00833,-33.11082,-905122.42,6234596.77,192.8,378.0,1923.88
5 | 19,18.07957,-33.13184,-898041.52,6233218.24,32.34,384.0,1954.48
6 | 20,18.13834,-33.11853,-892702.8,6235521.23,160.8,390.0,1923.05
7 | 21,18.16667,-33.35194,-886217.91,6209689.96,84.1,412.0,1975.13
8 | 22,18.2186,-33.29395,-882267.38,6216914.49,34.59,420.0,1966.83
9 | 23,18.25917,-33.3661,-877269.21,6209365.35,85.3,428.0,1959.36
10 | 24,18.26884,-33.41125,-875624.22,6204427.04,43.57,432.0,1974.48
11 | 25,18.30106,-33.09956,-877626.45,6239869.81,90.31,467.0,1940.02
12 | 26,18.33611,-33.49167,-867986.68,6196312.93,103.4,502.0,1969.26
13 | 27,18.35558,-33.43617,-867053.19,6202808.34,157.71,508.0,1951.06
14 | 28,18.37361,-33.95972,-856845.48,6144287.18,7.9,559.0,2028.91
15 | 29,18.38184,-33.20377,-868320.69,6229258.19,42.91,632.0,1960.02
16 | 30,18.40807,-33.02055,-868771.28,6250186.77,72.1,651.0,1943.09
17 | 31,18.42444,-33.36472,-861720.01,6211760.83,86.5,681.0,1962.76
18 | 33,18.45433,-33.52031,-856406.23,6194697.36,148.42,697.0,1963.3
19 | 32,18.44397,-33.58385,-856356.49,6187425.59,131.79,703.0,1973.17
20 |
--------------------------------------------------------------------------------
/data/cape-granite-surveys/data/cape-granite-gravity-day-3.csv:
--------------------------------------------------------------------------------
1 | station_id,longitude,latitude,easting,northing,elevation,time_minutes,reading
2 | 50,18.68443,-33.82832,-829886.4,6163216.0,153.0,0.0,1784.63
3 | 34,18.46832,-33.95168,-848120.65,6146476.15,38.4,19.0,1834.1
4 | 35,18.48975,-33.64217,-851117.92,6181497.08,85.89,48.0,1797.51
5 | 36,18.50667,-33.66417,-849175.95,6179255.77,111.5,51.0,1794.78
6 | 37,18.51472,-33.49611,-851116.23,6198225.42,567.1,69.0,1674.9
7 | 38,18.53574,-33.81841,-843967.82,6162339.02,17.18,97.0,1825.02
8 | 39,18.56111,-33.94389,-839570.79,6148602.07,36.0,109.0,1836.65
9 | 40,18.56833,-33.88693,-839813.49,6155089.28,51.4,114.0,1822.91
10 | 41,18.58305,-33.71584,-841182.01,6174482.4,138.8,130.0,1790.06
11 | 42,18.59557,-33.26334,-847206.31,6225431.4,97.1,179.0,1758.48
12 | 43,18.60194,-33.41943,-844133.15,6207996.81,207.9,194.0,1750.1
13 | 44,18.61861,-33.045,-848471.38,6250246.62,123.5,230.0,1743.5
14 | 45,18.62889,-33.8364,-834956.85,6161569.2,252.7,305.0,1769.18
15 | 46,18.64223,-33.86333,-833277.18,6158726.3,191.1,308.0,1786.52
16 | 47,18.65083,-33.59721,-836714.25,6188697.23,92.6,332.0,1783.78
17 | 48,18.65944,-33.69722,-834316.04,6177590.82,99.8,343.0,1794.71
18 | 49,18.66806,-33.18723,-841567.15,6234934.32,335.0,395.0,1706.71
19 | 50,18.68443,-33.82832,-829886.4,6163216.0,153.0,465.0,1793.93
20 |
--------------------------------------------------------------------------------
/data/cape-granite-surveys/data/cape-granite-gravity-day-4.csv:
--------------------------------------------------------------------------------
1 | station_id,longitude,latitude,easting,northing,elevation,time_minutes,reading
2 | 65,18.96222,-33.13083,-814677.83,6245102.53,114.2,0.0,1645.19
3 | 51,18.71693,-33.42444,-833233.17,6208958.62,297.7,33.0,1656.44
4 | 52,18.72528,-33.33694,-833822.25,6218887.25,234.1,42.0,1661.69
5 | 53,18.73611,-33.73807,-826479.77,6174025.5,108.0,81.0,1714.81
6 | 54,18.75528,-33.07306,-835114.5,6248895.25,88.9,155.0,1668.89
7 | 55,18.76944,-33.96832,-819707.17,6148641.83,177.1,243.0,1723.99
8 | 56,18.7975,-33.28444,-827839.05,6225726.77,160.1,315.0,1678.39
9 | 57,18.81168,-33.89223,-816964.84,6157733.26,300.1,378.0,1697.84
10 | 58,18.82388,-33.745,-818145.69,6174406.09,191.0,393.0,1710.48
11 | 59,18.84528,-33.52251,-819627.33,6199642.87,224.8,413.0,1687.59
12 | 60,18.87862,-33.68611,-813939.46,6181729.02,183.2,428.0,1708.14
13 | 61,18.89111,-33.92944,-808951.52,6154605.26,199.2,453.0,1727.11
14 | 62,18.90111,-33.14362,-820249.56,6242877.2,333.0,526.0,1624.64
15 | 63,18.91194,-33.04611,-820726.89,6253958.51,139.6,535.0,1659.35
16 | 64,18.94278,-33.76527,-806689.96,6173689.62,384.1,602.0,1672.22
17 | 66,18.97333,-33.85944,-802360.69,6163528.54,169.4,612.0,1729.72
18 | 67,18.99167,-33.95139,-799210.28,6153458.35,1286.6,620.0,1482.85
19 | 65,18.96222,-33.13083,-814677.83,6245102.53,114.2,696.0,1673.03
20 |
--------------------------------------------------------------------------------
/data/cape-granite-surveys/data/cape-granite-gravity-day-5.csv:
--------------------------------------------------------------------------------
1 | station_id,longitude,latitude,easting,northing,elevation,time_minutes,reading
2 | 80,18.06194,-32.92667,-903061.75,6256031.08,30.1,0.0,2172.94
3 | 68,19.28333,-33.58501,-777539.26,6198276.17,218.84,130.0,2174.41
4 | 69,19.33049,-33.19026,-779038.74,6243124.41,1029.5,168.0,1950.18
5 | 70,19.37833,-33.85167,-764606.79,6169592.4,266.7,228.0,2188.59
6 | 71,19.44875,-33.29372,-766358.93,6233005.07,724.9,278.0,2019.28
7 | 72,19.55167,-33.51334,-753431.15,6209671.18,358.75,301.0,2121.46
8 | 73,19.74413,-33.19974,-739920.88,6247171.55,727.1,337.0,2012.11
9 | 74,19.87167,-33.32333,-726136.99,6234869.51,810.76,352.0,2002.75
10 | 75,19.96167,-33.84833,-710142.27,6177162.72,145.69,400.0,2206.08
11 | 76,17.89861,-32.745,-921533.73,6274197.2,5.0,599.0,2189.73
12 | 77,17.9436,-32.87361,-915150.96,6260361.78,60.0,613.0,2187.96
13 | 78,17.96944,-32.7086,-915398.06,6279269.61,5.0,629.0,2181.78
14 | 79,18.01111,-32.76694,-910487.61,6273285.27,200.5,635.0,2148.3
15 | 81,18.11154,-32.87689,-899168.94,6262305.94,48.02,647.0,2183.9
16 | 82,18.14192,-32.98369,-894556.9,6250720.38,30.96,656.0,2195.14
17 | 83,18.20753,-32.92297,-889324.16,6258437.91,27.27,664.0,2189.63
18 | 84,18.24278,-32.88306,-886625.73,6263400.78,3.6,668.0,2194.79
19 | 80,18.06194,-32.92667,-903061.75,6256031.08,30.1,683.0,2193.43
20 |
--------------------------------------------------------------------------------
/data/cape-granite-surveys/data/cape-granite-gravity-day-6.csv:
--------------------------------------------------------------------------------
1 | station_id,longitude,latitude,easting,northing,elevation,time_minutes,reading
2 | 95,18.41333,-32.8875,-870389.41,6265200.57,59.8,0.0,1959.06
3 | 85,18.27333,-32.89555,-883529.32,6262411.39,6.8,10.0,1964.84
4 | 86,18.30194,-32.65195,-884704.84,6290167.39,20.3,34.0,1957.09
5 | 87,18.32028,-32.73083,-881707.18,6281551.23,64.7,41.0,1952.78
6 | 88,18.33112,-32.01334,-891981.87,6362334.51,102.1,111.0,1901.41
7 | 89,18.34277,-32.39444,-884893.64,6319652.54,16.8,150.0,1961.67
8 | 90,18.34528,-32.68056,-880131.31,6287535.18,61.4,175.0,1951.52
9 | 91,18.36749,-32.8075,-876006.63,6273572.16,37.1,188.0,1963.01
10 | 92,18.38222,-32.39861,-881066.7,6319710.38,232.4,230.0,1910.03
11 | 93,18.39417,-32.20168,-883009.87,6342001.06,21.6,252.0,1933.99
12 | 94,18.40472,-32.81639,-872333.87,6273072.62,53.3,322.0,1961.45
13 | 96,18.43388,-32.45306,-875289.09,6314279.4,80.0,359.0,1949.34
14 | 97,18.44305,-32.19083,-878507.71,6343868.07,182.1,386.0,1896.63
15 | 98,18.45416,-32.77333,-868324.5,6278569.87,77.4,439.0,1954.59
16 | 99,18.46083,-32.15083,-877429.45,6348598.31,303.4,509.0,1863.12
17 | 100,18.47305,-32.12971,-876588.38,6351133.03,94.8,511.0,1904.31
18 | 101,18.48277,-32.01443,-877440.61,6364217.08,170.0,521.0,1877.28
19 | 95,18.41333,-32.8875,-870389.41,6265200.57,59.8,597.0,1965.03
20 |
--------------------------------------------------------------------------------
/data/cape-granite-surveys/data/cape-granite-gravity-day-7.csv:
--------------------------------------------------------------------------------
1 | station_id,longitude,latitude,easting,northing,elevation,time_minutes,reading
2 | 103,18.50278,-32.42999,-869085.17,6317784.37,19.3,0.0,2068.95
3 | 102,18.4939,-32.85083,-863332.96,6270394.77,62.0,38.0,2082.89
4 | 104,18.5175,-32.33833,-869107.57,6328276.69,215.8,86.0,2024.14
5 | 105,18.535,-32.94221,-857998.94,6260679.4,13.1,141.0,2100.06
6 | 106,18.54417,-32.26418,-867711.63,6336958.77,83.3,200.0,2041.73
7 | 107,18.55333,-32.61722,-861355.2,6297419.98,472.1,231.0,2004.1
8 | 108,18.57889,-32.64806,-858445.18,6294293.43,430.4,235.0,2012.53
9 | 109,18.58583,-32.435,-861095.02,6318315.72,117.4,253.0,2050.92
10 | 110,18.59721,-32.54832,-858254.67,6305736.78,85.9,263.0,2073.99
11 | 111,18.61028,-32.86528,-852075.77,6270314.37,71.2,292.0,2089.68
12 | 112,18.62666,-32.5175,-855930.32,6309584.99,24.3,325.0,2082.33
13 | 113,18.6311,-32.71638,-852423.03,6287308.33,546.3,344.0,1987.84
14 | 114,18.64999,-32.17944,-858909.31,6347863.35,187.8,394.0,2009.26
15 | 115,18.66611,-32.81361,-847589.59,6276850.82,782.7,449.0,1941.58
16 | 116,18.67223,-32.99139,-844239.59,6256972.27,224.1,467.0,2067.37
17 | 117,18.68056,-32.13083,-856730.64,6353721.67,634.1,553.0,1912.85
18 | 118,18.70084,-32.32777,-851784.39,6331863.13,443.6,573.0,1972.79
19 | 103,18.50278,-32.42999,-869085.17,6317784.37,19.3,591.0,2092.59
20 |
--------------------------------------------------------------------------------
/data/cape-granite-surveys/data/cape-granite-gravity-day-8.csv:
--------------------------------------------------------------------------------
1 | station_id,longitude,latitude,easting,northing,elevation,time_minutes,reading
2 | 123,18.7739,-32.96417,-835043.75,6261360.36,116.2,0.0,2137.04
3 | 119,18.70917,-32.89722,-842209.74,6268028.9,659.2,10.0,2022.83
4 | 120,18.72362,-32.44194,-847864.13,6319336.94,402.0,55.0,2044.71
5 | 121,18.73694,-32.12222,-851472.14,6355419.14,497.3,87.0,1986.68
6 | 122,18.75861,-32.16722,-848717.95,6350644.45,554.3,92.0,1977.03
7 | 124,18.79472,-32.455,-840894.47,6318792.46,449.4,120.0,2034.49
8 | 125,18.80472,-32.23083,-843349.74,6344094.89,842.0,143.0,1917.55
9 | 126,18.8175,-32.06833,-844584.6,6362509.85,112.3,157.0,2051.37
10 | 127,18.82529,-32.48418,-837539.85,6315911.15,299.4,199.0,2067.57
11 | 128,18.85083,-32.12694,-840515.06,6356354.72,83.2,230.0,2058.61
12 | 129,18.8625,-32.59473,-832317.1,6303980.03,143.4,270.0,2103.92
13 | 130,18.87807,-32.96472,-825179.71,6262653.27,159.0,308.0,2123.17
14 | 131,18.88417,-32.68361,-828904.32,6294282.39,98.6,336.0,2118.19
15 | 132,18.89333,-32.44806,-831612.38,6320842.43,864.3,358.0,1933.58
16 | 133,18.9075,-32.30583,-832410.58,6336992.57,238.5,372.0,2042.47
17 | 134,18.91972,-32.58694,-826997.83,6305590.83,877.1,403.0,1937.52
18 | 135,18.93306,-32.27194,-830482.77,6341124.29,130.2,436.0,2056.83
19 | 123,18.7739,-32.96417,-835043.75,6261360.36,116.2,511.0,2142.15
20 |
--------------------------------------------------------------------------------
/data/cape-granite-surveys/data/cape-granite-gravity-day-9.csv:
--------------------------------------------------------------------------------
1 | station_id,longitude,latitude,easting,northing,elevation,time_minutes,reading
2 | 136,18.94556,-32.62971,-823894.52,6301121.69,505.4,0.0,2011.05
3 | 137,18.95694,-32.35639,-826936.98,6331947.89,463.0,27.0,1979.3
4 | 138,18.97833,-32.31972,-825448.82,6336337.16,402.3,31.0,1995.66
5 | 139,18.98778,-32.57584,-820697.86,6307708.29,178.5,56.0,2062.21
6 | 140,19.02695,-32.03889,-824993.08,6368482.43,449.6,116.0,1971.48
7 | 141,19.11708,-32.62782,-807634.65,6303518.89,713.2,170.0,1957.66
8 | 142,19.21329,-32.68517,-797648.04,6298298.16,729.8,179.0,1950.83
9 | 143,19.29491,-32.89536,-786791.12,6275746.44,999.9,198.0,1915.44
10 | 144,19.39352,-32.08752,-789245.47,6367590.08,248.4,279.0,1995.4
11 | 145,19.4523,-32.83102,-772844.9,6284921.18,948.6,356.0,1920.18
12 | 146,19.65533,-32.45386,-759039.19,6329693.96,402.0,391.0,1993.0
13 | 147,19.70056,-32.07082,-760159.9,6373189.42,363.6,430.0,1971.32
14 | 148,19.75822,-32.6514,-746454.75,6308791.37,452.5,486.0,2007.19
15 | 149,19.81192,-32.5975,-742126.3,6315477.55,401.1,492.0,2008.75
16 | 150,19.88031,-32.86681,-731834.29,6286116.66,533.0,516.0,2010.06
17 | 151,19.94664,-32.36861,-732540.44,6342732.91,439.5,560.0,1973.38
18 | 136,18.94556,-32.62971,-823894.52,6301121.69,505.4,637.0,2036.53
19 |
--------------------------------------------------------------------------------
/data/cape-granite-surveys/gravimeter-scaling.csv:
--------------------------------------------------------------------------------
1 | counter_reading,value_mgal,interval_factor
2 | 0000,0000.00,1.00636
3 | 0100,0100.64,1.00621
4 | 0200,0201.26,1.00609
5 | 0300,0301.87,1.00597
6 | 0400,0402.46,1.00588
7 | 0500,0503.05,1.00579
8 | 0600,0603.63,1.00570
9 | 0700,0704.20,1.00563
10 | 0800,0804.76,1.00557
11 | 0900,0905.32,1.00551
12 | 1000,1005.87,1.00544
13 | 1100,1106.42,1.00539
14 | 1200,1206.95,1.00533
15 | 1300,1307.49,1.00528
16 | 1400,1408.02,1.00524
17 | 1500,1508.54,1.00522
18 | 1600,1609.06,1.00520
19 | 1700,1709.58,1.00519
20 | 1800,1810.10,1.00518
21 | 1900,1910.62,1.00518
22 | 2000,2011.14,1.00519
23 | 2100,2111.66,1.00520
24 | 2200,2212.18,1.00521
25 | 2300,2312.70,1.00523
26 | 2400,2413.22,1.00525
27 | 2500,2513.74,1.00528
28 | 2600,2614.27,1.00530
29 | 2700,2714.80,1.00531
30 | 2800,2815.33,1.00533
31 | 2900,2915.87,1.00535
32 | 3000,3016.40,1.00536
33 | 3100,3116.94,1.00536
34 | 3200,3217.47,1.00536
35 | 3300,3318.01,1.00536
36 | 3400,3418.55,1.00536
37 | 3500,3519.08,1.00535
38 | 3600,3619.62,1.00533
39 | 3700,3720.15,1.00529
40 | 3800,3820.68,1.00526
41 | 3900,3921.20,1.00523
42 | 4000,4021.73,1.00519
43 | 4100,4122.25,1.00513
44 | 4200,4222.76,1.00509
45 | 4300,4323.27,1.00504
46 | 4400,4423.77,1.00500
47 | 4500,4524.27,1.00494
48 | 4600,4624.77,1.00487
49 | 4700,4725.25,1.00480
50 | 4800,4825.73,1.00474
51 | 4900,4926.21,1.00464
52 | 5000,5026.67,1.00454
53 | 5100,5127.13,1.00444
54 | 5200,5227.57,1.00432
55 | 5300,5328.00,1.00420
56 | 5400,5428.42,1.00406
57 | 5500,5528.83,1.00392
58 | 5600,5629.22,1.00375
59 | 5700,5729.59,1.00355
60 | 5800,5829.95,1.00335
61 | 5900,5930.28,1.00316
62 | 6000,6030.60,1.00296
63 | 6100,6130.90,1.00275
64 | 6200,6231.17,1.00254
65 | 6300,6331.43,1.00231
66 | 6400,6431.66,1.00206
67 | 6500,6531.86,1.00181
68 | 6600,6632.04,1.00154
69 | 6700,6732.20,1.00123
70 | 6800,6832.32,1.00089
71 | 6900,6932.41,1.00047
72 | 7000,7032.46,1.00000
--------------------------------------------------------------------------------
/data/cape-town-surveys.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/data/cape-town-surveys.zip
--------------------------------------------------------------------------------
/data/cape-town-surveys/cape-town-gravity-day-1.csv:
--------------------------------------------------------------------------------
1 | station_id,longitude,latitude,easting,northing,elevation,time_minutes,reading
2 | 0,18.34444,-34.12971,255105.43,6220276.33,32.2,0.0,2555.08
3 | 1,18.37418,-34.19583,258037.64,6213013.01,18.4,8.0,2565.12
4 | 2,18.40388,-34.23972,260899.25,6208214.71,25.0,14.0,2569.49
5 | 3,18.41112,-34.16444,261353.99,6216582.03,228.7,23.0,2514.59
6 | 4,18.42557,-34.29778,263060.44,6201825.21,104.0,41.0,2560.43
7 | 5,18.4586,-34.205,265844.02,6212193.18,8.9,52.0,2559.84
8 | 6,18.48611,-34.08528,268052.07,6225535.49,19.0,66.0,2539.93
9 | 7,18.50333,-34.03555,269506.57,6231090.44,15.1,75.0,2537.01
10 | 8,18.54388,-34.07861,273365.76,6226404.98,34.7,81.0,2536.94
11 | 9,18.59306,-34.04916,277827.86,6229779.46,59.6,89.0,2530.35
12 | 10,18.6525,-34.07167,283372.95,6227410.34,64.8,96.0,2532.21
13 | 11,18.66722,-34.01418,284586.18,6233817.86,43.9,105.0,2529.27
14 | 12,18.71722,-34.06194,289322.41,6228624.82,75.5,112.0,2527.23
15 | 13,18.71889,-34.03082,289399.59,6232079.83,19.3,116.0,2536.1
16 | 14,18.79668,-34.00307,296516.56,6235314.97,111.0,126.0,2499.35
17 | 15,18.81917,-34.08083,298777.81,6226735.15,15.4,137.0,2534.75
18 | 16,18.84778,-34.13861,301553.14,6220382.79,14.0,147.0,2544.3
19 | 17,18.855,-34.24028,302456.31,6209120.56,43.6,163.0,2548.86
20 | 18,18.88528,-34.09473,304910.65,6225321.75,296.5,181.0,2468.01
21 | 0,18.34444,-34.12971,255105.43,6220276.33,32.2,238.0,2547.94
22 |
--------------------------------------------------------------------------------
/data/cape-town-surveys/cape-town-gravity-day-2.csv:
--------------------------------------------------------------------------------
1 | station_id,longitude,latitude,easting,northing,elevation,time_minutes,reading
2 | 0,18.34444,-34.12971,255105.43,6220276.33,32.2,0.0,2544.12
3 | 19,18.37361,-33.95972,257311.95,6239201.71,7.9,22.0,2523.81
4 | 20,18.38167,-33.92168,257949.19,6243440.2,24.69,27.0,2519.0
5 | 21,18.41167,-33.89944,260661.04,6245977.44,6.7,31.0,2524.83
6 | 22,18.41861,-33.92111,261363.39,6243589.98,24.3,34.0,2521.49
7 | 23,18.4375,-33.73473,262595.07,6264306.55,19.8,57.0,2505.26
8 | 24,18.43971,-33.92751,263332.19,6242928.99,10.3,81.0,2524.1
9 | 25,18.44667,-33.90556,263915.14,6245379.68,2.4,84.0,2524.47
10 | 26,18.44861,-33.69778,263523.25,6268430.41,21.8,113.0,2498.37
11 | 27,18.45444,-33.97221,264817.24,6238004.82,59.4,156.0,2511.48
12 | 28,18.46611,-33.75667,265306.16,6261938.6,231.2,182.0,2457.41
13 | 29,18.46832,-33.95168,266043.68,6240313.75,38.4,208.0,2516.67
14 | 30,18.48334,-33.89166,267268.75,6247005.19,5.3,217.0,2519.25
15 | 31,18.49722,-33.72917,268114.28,6265059.18,136.4,239.0,2475.77
16 | 32,18.50667,-33.66417,268815.88,6272289.75,111.5,247.0,2475.94
17 | 33,18.51028,-33.87361,269712.13,6249067.96,26.6,271.0,2511.21
18 | 34,18.51279,-33.78389,269703.7,6259024.88,38.3,284.0,2497.4
19 | 35,18.52417,-33.9164,271111.64,6244352.94,14.6,301.0,2517.22
20 | 36,18.53574,-33.81841,271920.87,6255247.24,17.18,315.0,2503.9
21 | 0,18.34444,-34.12971,255105.43,6220276.33,32.2,360.0,2536.92
22 |
--------------------------------------------------------------------------------
/data/cape-town-surveys/cape-town-gravity-day-3.csv:
--------------------------------------------------------------------------------
1 | station_id,longitude,latitude,easting,northing,elevation,time_minutes,reading
2 | 0,18.34444,-34.12971,255105.43,6220276.33,32.2,0.0,2537.29
3 | 37,18.55641,-33.84975,273917.01,6251816.84,58.58,47.0,2493.92
4 | 38,18.55667,-33.79944,273808.54,6257397.47,80.0,54.0,2484.02
5 | 39,18.56111,-33.94389,274599.99,6241385.69,36.0,71.0,2511.92
6 | 40,18.5625,-33.75471,274230.96,6262371.39,55.2,99.0,2484.42
7 | 41,18.56833,-33.88693,275117.71,6247719.23,51.4,116.0,2496.27
8 | 42,18.575,-33.67917,275192.06,6270776.96,191.5,149.0,2448.27
9 | 43,18.58221,-33.77361,276106.18,6260318.18,208.2,160.0,2449.13
10 | 44,18.58305,-33.71584,276033.75,6266727.36,138.8,167.0,2461.06
11 | 45,18.58472,-33.73528,276239.03,6264574.87,102.7,170.0,2469.96
12 | 46,18.58722,-33.81277,276672.01,6255985.74,268.0,179.0,2436.73
13 | 47,18.59805,-33.98666,278125.89,6236722.48,50.0,207.0,2505.12
14 | 48,18.60056,-33.68443,277575.68,6270248.94,72.0,250.0,2466.84
15 | 49,18.61028,-33.70667,278534.02,6267803.2,69.3,254.0,2468.12
16 | 50,18.61472,-33.86694,279357.36,6250037.0,234.9,276.0,2443.62
17 | 51,18.6161,-33.79639,279303.67,6257864.79,283.8,284.0,2424.35
18 | 52,18.61945,-33.7625,279527.0,6261630.73,94.8,289.0,2465.82
19 | 53,18.62193,-33.74278,279706.26,6263823.19,92.2,292.0,2463.63
20 | 54,18.62889,-33.8364,280590.27,6253454.58,252.7,305.0,2431.17
21 | 0,18.34444,-34.12971,255105.43,6220276.33,32.2,362.0,2522.81
22 |
--------------------------------------------------------------------------------
/data/cape-town-surveys/cape-town-gravity-day-4.csv:
--------------------------------------------------------------------------------
1 | station_id,longitude,latitude,easting,northing,elevation,time_minutes,reading
2 | 0,18.34444,-34.12971,255105.43,6220276.33,32.2,0.0,2536.56
3 | 55,18.63361,-33.72278,280737.58,6266066.29,75.3,75.0,2472.56
4 | 56,18.63556,-33.69028,280835.71,6269674.99,72.6,79.0,2469.64
5 | 57,18.63722,-33.80528,281281.98,6256923.88,188.3,96.0,2450.5
6 | 58,18.64166,-33.77278,281610.51,6260537.89,162.0,100.0,2456.26
7 | 59,18.64223,-33.86333,281893.45,6250496.13,191.1,114.0,2454.21
8 | 60,18.64555,-33.94057,282397.1,6241936.34,71.4,123.0,2492.58
9 | 61,18.65028,-33.66888,282146.42,6272079.59,117.9,161.0,2451.67
10 | 62,18.65668,-33.73444,282905.02,6264821.9,112.4,171.0,2459.47
11 | 63,18.65668,-33.98193,283530.84,6237372.57,52.7,202.0,2498.5
12 | 64,18.65694,-33.72,282892.73,6266423.98,83.8,232.0,2461.4
13 | 65,18.65944,-33.69722,283067.12,6268955.73,99.8,235.0,2455.65
14 | 66,18.66667,-33.78751,283964.02,6258956.95,147.6,245.0,2450.26
15 | 67,18.67389,-33.87473,284851.41,6249298.51,109.2,257.0,2464.63
16 | 68,18.68443,-33.82832,285710.55,6254467.87,153.0,263.0,2451.04
17 | 69,18.69611,-33.86333,286878.68,6250609.2,122.1,268.0,2458.98
18 | 70,18.70612,-33.67972,287351.4,6270993.76,100.9,288.0,2446.03
19 | 71,18.71861,-33.78833,288775.99,6258973.78,111.5,300.0,2453.6
20 | 72,18.73611,-33.73807,290274.09,6264583.74,108.0,307.0,2449.63
21 | 0,18.34444,-34.12971,255105.43,6220276.33,32.2,369.0,2518.11
22 |
--------------------------------------------------------------------------------
/data/cape-town-surveys/cape-town-gravity-day-5.csv:
--------------------------------------------------------------------------------
1 | station_id,longitude,latitude,easting,northing,elevation,time_minutes,reading
2 | 0,18.34444,-34.12971,255105.43,6220276.33,32.2,0.0,2560.34
3 | 73,18.7475,-33.99222,291947.29,6236419.51,113.2,48.0,2511.84
4 | 74,18.75694,-33.81194,292382.56,6256433.25,133.0,72.0,2487.06
5 | 75,18.75945,-33.8539,292716.3,6251784.63,179.4,77.0,2479.31
6 | 76,18.76723,-33.75999,293210.26,6262215.56,137.1,90.0,2482.65
7 | 77,18.76944,-33.96832,293916.47,6239114.6,177.1,115.0,2489.16
8 | 78,18.77917,-33.69528,294161.78,6269416.14,118.2,149.0,2480.86
9 | 79,18.78471,-33.67833,294635.02,6271307.01,134.1,151.0,2474.76
10 | 80,18.81416,-33.94057,297983.35,6242281.32,170.3,192.0,2484.96
11 | 81,18.81444,-33.80167,297681.57,6257686.79,205.9,209.0,2467.63
12 | 82,18.82388,-33.745,298422.84,6263990.27,191.0,216.0,2467.63
13 | 83,18.84444,-33.99194,300902.16,6236643.26,172.3,244.0,2487.17
14 | 84,18.85944,-33.86166,301986.45,6251121.16,250.4,266.0,2465.24
15 | 85,18.86555,-33.9525,302761.22,6241058.25,162.4,277.0,2487.98
16 | 86,18.87862,-33.68611,303360.1,6270627.01,183.2,307.0,2462.07
17 | 87,18.88222,-33.75389,303848.17,6263116.91,193.8,315.0,2463.85
18 | 88,18.89111,-33.92944,305070.98,6243664.61,199.2,342.0,2479.34
19 | 89,18.95612,-33.79388,310782.02,6258820.18,144.1,358.0,2474.6
20 | 90,18.97333,-33.85944,312518.77,6251580.97,169.4,366.0,2475.11
21 | 0,18.34444,-34.12971,255105.43,6220276.33,32.2,436.0,2551.62
22 |
--------------------------------------------------------------------------------
/data/gravimeter-scaling.csv:
--------------------------------------------------------------------------------
1 | counter_reading,value_mgal,interval_factor
2 | 0000,0000.00,1.00636
3 | 0100,0100.64,1.00621
4 | 0200,0201.26,1.00609
5 | 0300,0301.87,1.00597
6 | 0400,0402.46,1.00588
7 | 0500,0503.05,1.00579
8 | 0600,0603.63,1.00570
9 | 0700,0704.20,1.00563
10 | 0800,0804.76,1.00557
11 | 0900,0905.32,1.00551
12 | 1000,1005.87,1.00544
13 | 1100,1106.42,1.00539
14 | 1200,1206.95,1.00533
15 | 1300,1307.49,1.00528
16 | 1400,1408.02,1.00524
17 | 1500,1508.54,1.00522
18 | 1600,1609.06,1.00520
19 | 1700,1709.58,1.00519
20 | 1800,1810.10,1.00518
21 | 1900,1910.62,1.00518
22 | 2000,2011.14,1.00519
23 | 2100,2111.66,1.00520
24 | 2200,2212.18,1.00521
25 | 2300,2312.70,1.00523
26 | 2400,2413.22,1.00525
27 | 2500,2513.74,1.00528
28 | 2600,2614.27,1.00530
29 | 2700,2714.80,1.00531
30 | 2800,2815.33,1.00533
31 | 2900,2915.87,1.00535
32 | 3000,3016.40,1.00536
33 | 3100,3116.94,1.00536
34 | 3200,3217.47,1.00536
35 | 3300,3318.01,1.00536
36 | 3400,3418.55,1.00536
37 | 3500,3519.08,1.00535
38 | 3600,3619.62,1.00533
39 | 3700,3720.15,1.00529
40 | 3800,3820.68,1.00526
41 | 3900,3921.20,1.00523
42 | 4000,4021.73,1.00519
43 | 4100,4122.25,1.00513
44 | 4200,4222.76,1.00509
45 | 4300,4323.27,1.00504
46 | 4400,4423.77,1.00500
47 | 4500,4524.27,1.00494
48 | 4600,4624.77,1.00487
49 | 4700,4725.25,1.00480
50 | 4800,4825.73,1.00474
51 | 4900,4926.21,1.00464
52 | 5000,5026.67,1.00454
53 | 5100,5127.13,1.00444
54 | 5200,5227.57,1.00432
55 | 5300,5328.00,1.00420
56 | 5400,5428.42,1.00406
57 | 5500,5528.83,1.00392
58 | 5600,5629.22,1.00375
59 | 5700,5729.59,1.00355
60 | 5800,5829.95,1.00335
61 | 5900,5930.28,1.00316
62 | 6000,6030.60,1.00296
63 | 6100,6130.90,1.00275
64 | 6200,6231.17,1.00254
65 | 6300,6331.43,1.00231
66 | 6400,6431.66,1.00206
67 | 6500,6531.86,1.00181
68 | 6600,6632.04,1.00154
69 | 6700,6732.20,1.00123
70 | 6800,6832.32,1.00089
71 | 6900,6932.41,1.00047
72 | 7000,7032.46,1.00000
--------------------------------------------------------------------------------
/environment.yml:
--------------------------------------------------------------------------------
1 | name: gravity
2 | channels:
3 | - defaults
4 | - conda-forge
5 | dependencies:
6 | - python=3.8
7 | - pip
8 | - numpy
9 | - scipy
10 | - pandas
11 | - matplotlib
12 | - jupyter
13 | - jupyterlab
14 | - livereload
15 | - pyproj
16 | # Fatiando a Terra packages (used to check calculations and prepare data)
17 | - pooch
18 | - verde
19 | - harmonica
20 | - boule
21 |
--------------------------------------------------------------------------------
/lectures/0-introduction/content.md:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | ENVS258 Environmental Geophysics
7 |
8 | Gravimetry
9 |
10 |
11 |
12 |
13 | [
](https://www.liverpool.ac.uk/earth-ocean-and-ecological-sciences/)
14 |
15 |
16 |
17 |
18 |
19 |
20 | # Introduction
21 |
22 |
23 |
24 | ## Instructor: **[Leonardo Uieda](https://www.leouieda.com)**
25 |
26 |
27 | [Leonardo.Uieda@liverpool.ac.uk](mailto:Leonardo.Uieda@liverpool.ac.uk)
28 | |
29 | [@leouieda](https://twitter.com/leouieda)
30 | |
31 | [ CC-BY 4.0 License](https://creativecommons.org/licenses/by/4.0/)
32 |
33 | ---
34 |
35 | # Learning outcomes
36 |
37 | 1. Explain the basics of ground-based gravimetry
38 | 1. Execute the steps to convert gravimeter readings to anomalies
39 | 1. Interpret the physical/geological meaning the observed anomalies
40 | 1. Practice data analysis in Python
41 |
42 | ---
43 |
44 | # Sessions (weeks 4-6)
45 |
46 |
47 |
48 | Live sessions on Wednesday:
49 |
50 | * 15:00 - 17:00: Lecture + computer practical (using Python)
51 |
52 | Recorded videos, reading, and practical homework:
53 |
54 | * Short videos to supplement the lecture (10 minutes maximum)
55 | * Reading material
56 | * Parts of the practical to do on your own
57 |
58 |
59 |
60 | ---
61 |
62 | # Assessment: Computational Report
63 |
64 | * Worth 15%
65 | * Process and analyse a given gravity survey
66 | * The report is a Jupyter notebook
67 | * Includes your code, images, and explanations (all assessed)
68 | * Explain the processing steps and what they mean physically
69 | * Small discussion of the geological/geophysical meaning
70 |
71 | ---
72 |
73 | # Participation
74 |
75 | Ask questions early and often.
76 |
77 | **Won't work without active participation.**
78 |
79 | ---
80 |
81 | # COVID-19
82 |
83 | We won't be able to gather data ourselves.
84 |
85 | Instead, we'll use a synthetic dataset (based on real data).
86 |
87 | You will still learn the most important points about gravimetry.
88 |
89 | This is a different type of data for us to process in Python, so you'll
90 | practice new coding skills as well.
91 |
92 | ---
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 | Unless otherwise noted,
107 | the contents of this lecture are
108 | licensed under the
109 |
110 | [Creative Commons Attribution 4.0 International License](https://creativecommons.org/licenses/by/4.0/).
111 |
112 |
113 |
114 |
--------------------------------------------------------------------------------
/lectures/Makefile:
--------------------------------------------------------------------------------
1 | .PHONY: serve
2 |
3 | serve:
4 | xdg-open http://localhost:8000
5 | livereload -p 8000 .
6 |
--------------------------------------------------------------------------------
/lectures/assets/background.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/assets/background.jpg
--------------------------------------------------------------------------------
/lectures/assets/favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/assets/favicon.png
--------------------------------------------------------------------------------
/lectures/assets/university-of-liverpool-black.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/assets/university-of-liverpool-black.png
--------------------------------------------------------------------------------
/lectures/assets/university-of-liverpool-white.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/assets/university-of-liverpool-white.png
--------------------------------------------------------------------------------
/lectures/css/fontawesome/LICENSE.txt:
--------------------------------------------------------------------------------
1 | Font Awesome Free License
2 | -------------------------
3 |
4 | Font Awesome Free is free, open source, and GPL friendly. You can use it for
5 | commercial projects, open source projects, or really almost whatever you want.
6 | Full Font Awesome Free license: https://fontawesome.com/license/free.
7 |
8 | # Icons: CC BY 4.0 License (https://creativecommons.org/licenses/by/4.0/)
9 | In the Font Awesome Free download, the CC BY 4.0 license applies to all icons
10 | packaged as SVG and JS file types.
11 |
12 | # Fonts: SIL OFL 1.1 License (https://scripts.sil.org/OFL)
13 | In the Font Awesome Free download, the SIL OFL license applies to all icons
14 | packaged as web and desktop font files.
15 |
16 | # Code: MIT License (https://opensource.org/licenses/MIT)
17 | In the Font Awesome Free download, the MIT license applies to all non-font and
18 | non-icon files.
19 |
20 | # Attribution
21 | Attribution is required by MIT, SIL OFL, and CC BY licenses. Downloaded Font
22 | Awesome Free files already contain embedded comments with sufficient
23 | attribution, so you shouldn't need to do anything additional when using these
24 | files normally.
25 |
26 | We've kept attribution comments terse, so we ask that you do not actively work
27 | to remove them from files, especially code. They're a great way for folks to
28 | learn about Font Awesome.
29 |
30 | # Brand Icons
31 | All brand icons are trademarks of their respective owners. The use of these
32 | trademarks does not indicate endorsement of the trademark holder by Font
33 | Awesome, nor vice versa. **Please do not use brand logos for any purpose except
34 | to represent the company, product, or service to which they refer.**
35 |
--------------------------------------------------------------------------------
/lectures/css/fontawesome/css/brands.css:
--------------------------------------------------------------------------------
1 | @font-face {
2 | font-family: 'Font Awesome 5 Brands';
3 | font-style: normal;
4 | font-weight: normal;
5 | src: url("../webfonts/fa-brands-400.eot");
6 | src: url("../webfonts/fa-brands-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.woff") format("woff"), url("../webfonts/fa-brands-400.ttf") format("truetype"), url("../webfonts/fa-brands-400.svg#fontawesome") format("svg"); }
7 |
8 | .fab {
9 | font-family: 'Font Awesome 5 Brands'; }
10 |
--------------------------------------------------------------------------------
/lectures/css/fontawesome/css/brands.min.css:
--------------------------------------------------------------------------------
1 | @font-face{font-family:"Font Awesome 5 Brands";font-style:normal;font-weight:normal;src:url(../webfonts/fa-brands-400.eot);src:url(../webfonts/fa-brands-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.woff) format("woff"),url(../webfonts/fa-brands-400.ttf) format("truetype"),url(../webfonts/fa-brands-400.svg#fontawesome) format("svg")}.fab{font-family:"Font Awesome 5 Brands"}
--------------------------------------------------------------------------------
/lectures/css/fontawesome/css/regular.css:
--------------------------------------------------------------------------------
1 | @font-face {
2 | font-family: 'Font Awesome 5 Free';
3 | font-style: normal;
4 | font-weight: 400;
5 | src: url("../webfonts/fa-regular-400.eot");
6 | src: url("../webfonts/fa-regular-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.woff") format("woff"), url("../webfonts/fa-regular-400.ttf") format("truetype"), url("../webfonts/fa-regular-400.svg#fontawesome") format("svg"); }
7 |
8 | .far {
9 | font-family: 'Font Awesome 5 Free';
10 | font-weight: 400; }
11 |
--------------------------------------------------------------------------------
/lectures/css/fontawesome/css/regular.min.css:
--------------------------------------------------------------------------------
1 | @font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:400;src:url(../webfonts/fa-regular-400.eot);src:url(../webfonts/fa-regular-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.woff) format("woff"),url(../webfonts/fa-regular-400.ttf) format("truetype"),url(../webfonts/fa-regular-400.svg#fontawesome) format("svg")}.far{font-family:"Font Awesome 5 Free";font-weight:400}
--------------------------------------------------------------------------------
/lectures/css/fontawesome/css/solid.css:
--------------------------------------------------------------------------------
1 | @font-face {
2 | font-family: 'Font Awesome 5 Free';
3 | font-style: normal;
4 | font-weight: 900;
5 | src: url("../webfonts/fa-solid-900.eot");
6 | src: url("../webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.woff") format("woff"), url("../webfonts/fa-solid-900.ttf") format("truetype"), url("../webfonts/fa-solid-900.svg#fontawesome") format("svg"); }
7 |
8 | .fa,
9 | .fas {
10 | font-family: 'Font Awesome 5 Free';
11 | font-weight: 900; }
12 |
--------------------------------------------------------------------------------
/lectures/css/fontawesome/css/solid.min.css:
--------------------------------------------------------------------------------
1 | @font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:900;src:url(../webfonts/fa-solid-900.eot);src:url(../webfonts/fa-solid-900.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.woff) format("woff"),url(../webfonts/fa-solid-900.ttf) format("truetype"),url(../webfonts/fa-solid-900.svg#fontawesome) format("svg")}.fa,.fas{font-family:"Font Awesome 5 Free";font-weight:900}
--------------------------------------------------------------------------------
/lectures/css/fontawesome/css/svg-with-js.min.css:
--------------------------------------------------------------------------------
1 | .svg-inline--fa,svg:not(:root).svg-inline--fa{overflow:visible}.svg-inline--fa{display:inline-block;font-size:inherit;height:1em;vertical-align:-.125em}.svg-inline--fa.fa-lg{vertical-align:-.225em}.svg-inline--fa.fa-w-1{width:.0625em}.svg-inline--fa.fa-w-2{width:.125em}.svg-inline--fa.fa-w-3{width:.1875em}.svg-inline--fa.fa-w-4{width:.25em}.svg-inline--fa.fa-w-5{width:.3125em}.svg-inline--fa.fa-w-6{width:.375em}.svg-inline--fa.fa-w-7{width:.4375em}.svg-inline--fa.fa-w-8{width:.5em}.svg-inline--fa.fa-w-9{width:.5625em}.svg-inline--fa.fa-w-10{width:.625em}.svg-inline--fa.fa-w-11{width:.6875em}.svg-inline--fa.fa-w-12{width:.75em}.svg-inline--fa.fa-w-13{width:.8125em}.svg-inline--fa.fa-w-14{width:.875em}.svg-inline--fa.fa-w-15{width:.9375em}.svg-inline--fa.fa-w-16{width:1em}.svg-inline--fa.fa-w-17{width:1.0625em}.svg-inline--fa.fa-w-18{width:1.125em}.svg-inline--fa.fa-w-19{width:1.1875em}.svg-inline--fa.fa-w-20{width:1.25em}.svg-inline--fa.fa-pull-left{margin-right:.3em;width:auto}.svg-inline--fa.fa-pull-right{margin-left:.3em;width:auto}.svg-inline--fa.fa-border{height:1.5em}.svg-inline--fa.fa-li{width:2em}.svg-inline--fa.fa-fw{width:1.25em}.fa-layers svg.svg-inline--fa{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0}.fa-layers{display:inline-block;height:1em;position:relative;text-align:center;vertical-align:-.125em;width:1em}.fa-layers svg.svg-inline--fa{transform-origin:center center}.fa-layers-counter,.fa-layers-text{display:inline-block;position:absolute;text-align:center}.fa-layers-text{left:50%;top:50%;transform:translate(-50%,-50%);transform-origin:center center}.fa-layers-counter{background-color:#ff253a;border-radius:1em;box-sizing:border-box;color:#fff;height:1.5em;line-height:1;max-width:5em;min-width:1.5em;overflow:hidden;padding:.25em;right:0;text-overflow:ellipsis;top:0;transform:scale(.25);transform-origin:top right}.fa-layers-bottom-right{bottom:0;right:0;top:auto;transform:scale(.25);transform-origin:bottom right}.fa-layers-bottom-left{bottom:0;left:0;right:auto;top:auto;transform:scale(.25);transform-origin:bottom left}.fa-layers-top-right{right:0;top:0;transform:scale(.25);transform-origin:top right}.fa-layers-top-left{left:0;right:auto;top:0;transform:scale(.25);transform-origin:top left}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{animation:fa-spin 2s infinite linear}.fa-pulse{animation:fa-spin 1s infinite steps(8)}@keyframes fa-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-horizontal.fa-flip-vertical,.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"}.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{filter:none}.fa-stack{display:inline-block;height:2em;position:relative;width:2.5em}.fa-stack-1x,.fa-stack-2x{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0}.svg-inline--fa.fa-stack-1x{height:1em;width:1.25em}.svg-inline--fa.fa-stack-2x{height:2em;width:2.5em}.fa-inverse{color:#fff}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}
--------------------------------------------------------------------------------
/lectures/css/fontawesome/webfonts/fa-brands-400.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/css/fontawesome/webfonts/fa-brands-400.eot
--------------------------------------------------------------------------------
/lectures/css/fontawesome/webfonts/fa-brands-400.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/css/fontawesome/webfonts/fa-brands-400.ttf
--------------------------------------------------------------------------------
/lectures/css/fontawesome/webfonts/fa-brands-400.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/css/fontawesome/webfonts/fa-brands-400.woff
--------------------------------------------------------------------------------
/lectures/css/fontawesome/webfonts/fa-brands-400.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/css/fontawesome/webfonts/fa-brands-400.woff2
--------------------------------------------------------------------------------
/lectures/css/fontawesome/webfonts/fa-regular-400.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/css/fontawesome/webfonts/fa-regular-400.eot
--------------------------------------------------------------------------------
/lectures/css/fontawesome/webfonts/fa-regular-400.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/css/fontawesome/webfonts/fa-regular-400.ttf
--------------------------------------------------------------------------------
/lectures/css/fontawesome/webfonts/fa-regular-400.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/css/fontawesome/webfonts/fa-regular-400.woff
--------------------------------------------------------------------------------
/lectures/css/fontawesome/webfonts/fa-regular-400.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/css/fontawesome/webfonts/fa-regular-400.woff2
--------------------------------------------------------------------------------
/lectures/css/fontawesome/webfonts/fa-solid-900.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/css/fontawesome/webfonts/fa-solid-900.eot
--------------------------------------------------------------------------------
/lectures/css/fontawesome/webfonts/fa-solid-900.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/css/fontawesome/webfonts/fa-solid-900.ttf
--------------------------------------------------------------------------------
/lectures/css/fontawesome/webfonts/fa-solid-900.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/css/fontawesome/webfonts/fa-solid-900.woff
--------------------------------------------------------------------------------
/lectures/css/fontawesome/webfonts/fa-solid-900.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/css/fontawesome/webfonts/fa-solid-900.woff2
--------------------------------------------------------------------------------
/lectures/images/A10_absolute_gravity_meter.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/images/A10_absolute_gravity_meter.jpg
--------------------------------------------------------------------------------
/lectures/images/Autograv_CG5_P1150838.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/images/Autograv_CG5_P1150838.JPG
--------------------------------------------------------------------------------
/lectures/images/DetalleNivelDeBurbuja.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/images/DetalleNivelDeBurbuja.jpg
--------------------------------------------------------------------------------
/lectures/images/heights.svg:
--------------------------------------------------------------------------------
1 |
2 |
17 |
19 |
38 |
40 |
41 |
43 | image/svg+xml
44 |
46 |
47 |
48 |
49 |
50 |
54 |
59 |
64 |
68 |
72 |
77 |
78 |
79 |
--------------------------------------------------------------------------------
/lectures/js/less/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "less",
3 | "version": "3.11.1",
4 | "description": "Leaner CSS",
5 | "homepage": "http://lesscss.org",
6 | "author": {
7 | "name": "Alexis Sellier",
8 | "email": "self@cloudhead.net"
9 | },
10 | "contributors": [
11 | "The Core Less Team"
12 | ],
13 | "bugs": {
14 | "url": "https://github.com/less/less.js/issues"
15 | },
16 | "repository": {
17 | "type": "git",
18 | "url": "https://github.com/less/less.js.git"
19 | },
20 | "master": {
21 | "url": "https://github.com/less/less.js/blob/master/",
22 | "raw": "https://raw.githubusercontent.com/less/less.js/master/"
23 | },
24 | "license": "Apache-2.0",
25 | "bin": {
26 | "lessc": "./bin/lessc"
27 | },
28 | "main": "index",
29 | "module": "./lib/less-node/index",
30 | "directories": {
31 | "test": "./test"
32 | },
33 | "browser": "./dist/less.js",
34 | "engines": {
35 | "node": ">=6"
36 | },
37 | "scripts": {
38 | "test": "grunt test",
39 | "grunt": "grunt",
40 | "changelog": "github-changes -o less -r less.js -a --only-pulls --use-commit-body -m \"(YYYY-MM-DD)\""
41 | },
42 | "optionalDependencies": {
43 | "errno": "^0.1.1",
44 | "graceful-fs": "^4.1.2",
45 | "image-size": "~0.5.0",
46 | "make-dir":"^2.1.0",
47 | "mime": "^1.4.1",
48 | "promise": "^7.1.1",
49 | "request": "^2.83.0",
50 | "source-map": "~0.6.0"
51 | },
52 | "devDependencies": {
53 | "@typescript-eslint/eslint-plugin": "^2.3.3",
54 | "@typescript-eslint/parser": "^2.3.3",
55 | "benny": "^3.6.12",
56 | "bootstrap-less-port": "0.3.0",
57 | "chai": "^4.2.0",
58 | "diff": "^3.2.0",
59 | "fs-extra": "^8.1.0",
60 | "git-rev": "^0.2.1",
61 | "github-changes": "^1.1.2",
62 | "globby": "^10.0.1",
63 | "grunt": "^1.0.4",
64 | "grunt-cli": "^1.3.2",
65 | "grunt-contrib-clean": "^1.0.0",
66 | "grunt-contrib-connect": "^1.0.2",
67 | "grunt-eslint": "^21.1.0",
68 | "grunt-saucelabs": "^9.0.1",
69 | "grunt-shell": "^1.3.0",
70 | "html-template-tag": "^3.2.0",
71 | "import-module": "file:test/import-module",
72 | "jit-grunt": "^0.10.0",
73 | "less-plugin-autoprefix": "^1.5.1",
74 | "less-plugin-clean-css": "^1.5.1",
75 | "minimist": "^1.2.0",
76 | "mocha": "^6.2.1",
77 | "mocha-headless-chrome": "^2.0.3",
78 | "mocha-teamcity-reporter": "^3.0.0",
79 | "performance-now": "^0.2.0",
80 | "phin": "^2.2.3",
81 | "promise": "^7.1.1",
82 | "read-glob": "^3.0.0",
83 | "rollup": "^1.17.0",
84 | "rollup-plugin-commonjs": "^10.0.1",
85 | "rollup-plugin-node-resolve": "^5.2.0",
86 | "rollup-plugin-terser": "^5.1.1",
87 | "rollup-plugin-typescript2": "^0.24.3",
88 | "semver": "^6.3.0",
89 | "time-grunt": "^1.3.0",
90 | "ts-node": "^8.4.1",
91 | "typescript": "^3.6.3",
92 | "uikit": "2.27.4"
93 | },
94 | "keywords": [
95 | "compile less",
96 | "css nesting",
97 | "css variable",
98 | "css",
99 | "gradients css",
100 | "gradients css3",
101 | "less compiler",
102 | "less css",
103 | "less mixins",
104 | "less",
105 | "less.js",
106 | "lesscss",
107 | "mixins",
108 | "nested css",
109 | "parser",
110 | "preprocessor",
111 | "bootstrap css",
112 | "bootstrap less",
113 | "style",
114 | "styles",
115 | "stylesheet",
116 | "variables in css",
117 | "css less"
118 | ],
119 | "rawcurrent": "https://raw.github.com/less/less.js/v",
120 | "sourcearchive": "https://github.com/less/less.js/archive/v",
121 | "dependencies": {
122 | "clone": "^2.1.2",
123 | "tslib": "^1.10.0"
124 | }
125 | }
126 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/.npmignore:
--------------------------------------------------------------------------------
1 | /test
2 | /examples
3 | /css
4 | /js
5 | .github
6 | .gulpfile
7 | .sass-cache
--------------------------------------------------------------------------------
/lectures/js/revealjs/CONTRIBUTING.md:
--------------------------------------------------------------------------------
1 | ## Contributing
2 |
3 | Please keep the [issue tracker](http://github.com/hakimel/reveal.js/issues) limited to **bug reports**, **feature requests** and **pull requests**.
4 |
5 |
6 | ### Personal Support
7 | If you have personal support or setup questions the best place to ask those are [StackOverflow](http://stackoverflow.com/questions/tagged/reveal.js).
8 |
9 |
10 | ### Bug Reports
11 | When reporting a bug make sure to include information about which browser and operating system you are on as well as the necessary steps to reproduce the issue. If possible please include a link to a sample presentation where the bug can be tested.
12 |
13 |
14 | ### Pull Requests
15 | - Should follow the coding style of the file you work in, most importantly:
16 | - Tabs to indent
17 | - Single-quoted strings
18 | - Should be made towards the **dev branch**
19 | - Should be submitted from a feature/topic branch (not your master)
20 |
21 |
22 | ### Plugins
23 | Please do not submit plugins as pull requests. They should be maintained in their own separate repository. More information here: https://github.com/hakimel/reveal.js/wiki/Plugin-Guidelines
24 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (C) 2020 Hakim El Hattab, http://hakim.se, and reveal.js contributors
2 |
3 | Permission is hereby granted, free of charge, to any person obtaining a copy
4 | of this software and associated documentation files (the "Software"), to deal
5 | in the Software without restriction, including without limitation the rights
6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7 | copies of the Software, and to permit persons to whom the Software is
8 | furnished to do so, subject to the following conditions:
9 |
10 | The above copyright notice and this permission notice shall be included in
11 | all copies or substantial portions of the Software.
12 |
13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19 | THE SOFTWARE.
--------------------------------------------------------------------------------
/lectures/js/revealjs/README.md:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 | reveal.js is an open source HTML presentation framework. It enables anyone with a web browser to create fully featured and beautiful presentations for free. [Check out the live demo](https://revealjs.com/).
9 |
10 | The framework comes with a broad range of features including [nested slides](https://revealjs.com/vertical-slides/), [Markdown support](https://revealjs.com/markdown/), [Auto-Animate](https://revealjs.com/auto-animate/), [PDF export](https://revealjs.com/pdf-export/), [speaker notes](https://revealjs.com/speaker-view/), [LaTeX support](https://revealjs.com/math/), [syntax highlighted code](https://revealjs.com/code/) and much more.
11 |
12 |
15 |
16 | ## Documentation
17 | The full reveal.js documentation is available at [revealjs.com](https://revealjs.com).
18 |
19 | ## Online Editor
20 | Want to create your presentation using a visual editor? Try the official reveal.js presentation platform for free at [Slides.com](https://slides.com). It's made by the same people behind reveal.js.
21 |
22 | ## License
23 |
24 | MIT licensed
25 |
26 | Copyright (C) 2011-2020 Hakim El Hattab, https://hakim.se
27 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/css/layout.scss:
--------------------------------------------------------------------------------
1 | /**
2 | * Layout helpers.
3 | */
4 |
5 | // Stretch an element vertically based on available space
6 | .reveal .stretch,
7 | .reveal .r-stretch {
8 | max-width: none;
9 | max-height: none;
10 | }
11 |
12 | .reveal pre.stretch code,
13 | .reveal pre.r-stretch code {
14 | height: 100%;
15 | max-height: 100%;
16 | box-sizing: border-box;
17 | }
18 |
19 | // Stack multiple elements on top of each other
20 | .reveal .r-stack {
21 | display: grid;
22 | }
23 |
24 | .reveal .r-stack > * {
25 | grid-area: 1/1;
26 | margin: auto;
27 | }
28 |
29 | // Horizontal and vertical stacks
30 | .reveal .r-vstack,
31 | .reveal .r-hstack {
32 | display: flex;
33 | }
34 |
35 | .reveal .r-vstack {
36 | flex-direction: column;
37 | align-items: center;
38 | justify-content: center;
39 | }
40 |
41 | .reveal .r-hstack {
42 | flex-direction: row;
43 | align-items: center;
44 | justify-content: center;
45 | }
46 |
47 | // Naming based on tailwindcss
48 | .reveal .items-stretch { align-items: stretch; }
49 | .reveal .items-start { align-items: flex-start; }
50 | .reveal .items-center { align-items: center; }
51 | .reveal .items-end { align-items: flex-end; }
52 |
53 | .reveal .justify-between { justify-content: space-between; }
54 | .reveal .justify-around { justify-content: space-around; }
55 | .reveal .justify-start { justify-content: flex-start; }
56 | .reveal .justify-center { justify-content: center; }
57 | .reveal .justify-end { justify-content: flex-end; }
58 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/css/print/paper.scss:
--------------------------------------------------------------------------------
1 | /* Default Print Stylesheet Template
2 | by Rob Glazebrook of CSSnewbie.com
3 | Last Updated: June 4, 2008
4 |
5 | Feel free (nay, compelled) to edit, append, and
6 | manipulate this file as you see fit. */
7 |
8 | @media print {
9 | html:not(.print-pdf) {
10 |
11 | background: #fff;
12 | width: auto;
13 | height: auto;
14 | overflow: visible;
15 |
16 | body {
17 | background: #fff;
18 | font-size: 20pt;
19 | width: auto;
20 | height: auto;
21 | border: 0;
22 | margin: 0 5%;
23 | padding: 0;
24 | overflow: visible;
25 | float: none !important;
26 | }
27 |
28 | .nestedarrow,
29 | .controls,
30 | .fork-reveal,
31 | .share-reveal,
32 | .state-background,
33 | .reveal .progress,
34 | .reveal .backgrounds,
35 | .reveal .slide-number {
36 | display: none !important;
37 | }
38 |
39 | body, p, td, li {
40 | font-size: 20pt!important;
41 | color: #000;
42 | }
43 |
44 | h1,h2,h3,h4,h5,h6 {
45 | color: #000!important;
46 | height: auto;
47 | line-height: normal;
48 | text-align: left;
49 | letter-spacing: normal;
50 | }
51 |
52 | /* Need to reduce the size of the fonts for printing */
53 | h1 { font-size: 28pt !important; }
54 | h2 { font-size: 24pt !important; }
55 | h3 { font-size: 22pt !important; }
56 | h4 { font-size: 22pt !important; font-variant: small-caps; }
57 | h5 { font-size: 21pt !important; }
58 | h6 { font-size: 20pt !important; font-style: italic; }
59 |
60 | a:link,
61 | a:visited {
62 | color: #000 !important;
63 | font-weight: bold;
64 | text-decoration: underline;
65 | }
66 |
67 | ul, ol, div, p {
68 | visibility: visible;
69 | position: static;
70 | width: auto;
71 | height: auto;
72 | display: block;
73 | overflow: visible;
74 | margin: 0;
75 | text-align: left !important;
76 | }
77 | .reveal pre,
78 | .reveal table {
79 | margin-left: 0;
80 | margin-right: 0;
81 | }
82 | .reveal pre code {
83 | padding: 20px;
84 | }
85 | .reveal blockquote {
86 | margin: 20px 0;
87 | }
88 | .reveal .slides {
89 | position: static !important;
90 | width: auto !important;
91 | height: auto !important;
92 |
93 | left: 0 !important;
94 | top: 0 !important;
95 | margin-left: 0 !important;
96 | margin-top: 0 !important;
97 | padding: 0 !important;
98 | zoom: 1 !important;
99 | transform: none !important;
100 |
101 | overflow: visible !important;
102 | display: block !important;
103 |
104 | text-align: left !important;
105 | perspective: none;
106 |
107 | perspective-origin: 50% 50%;
108 | }
109 | .reveal .slides section {
110 | visibility: visible !important;
111 | position: static !important;
112 | width: auto !important;
113 | height: auto !important;
114 | display: block !important;
115 | overflow: visible !important;
116 |
117 | left: 0 !important;
118 | top: 0 !important;
119 | margin-left: 0 !important;
120 | margin-top: 0 !important;
121 | padding: 60px 20px !important;
122 | z-index: auto !important;
123 |
124 | opacity: 1 !important;
125 |
126 | page-break-after: always !important;
127 |
128 | transform-style: flat !important;
129 | transform: none !important;
130 | transition: none !important;
131 | }
132 | .reveal .slides section.stack {
133 | padding: 0 !important;
134 | }
135 | .reveal section:last-of-type {
136 | page-break-after: avoid !important;
137 | }
138 | .reveal section .fragment {
139 | opacity: 1 !important;
140 | visibility: visible !important;
141 |
142 | transform: none !important;
143 | }
144 | .reveal section img {
145 | display: block;
146 | margin: 15px 0px;
147 | background: rgba(255,255,255,1);
148 | border: 1px solid #666;
149 | box-shadow: none;
150 | }
151 |
152 | .reveal section small {
153 | font-size: 0.8em;
154 | }
155 |
156 | .reveal .hljs {
157 | max-height: 100%;
158 | white-space: pre-wrap;
159 | word-wrap: break-word;
160 | word-break: break-word;
161 | font-size: 15pt;
162 | }
163 |
164 | .reveal .hljs .hljs-ln-numbers {
165 | white-space: nowrap;
166 | }
167 |
168 | .reveal .hljs td {
169 | font-size: inherit !important;
170 | color: inherit !important;
171 | }
172 | }
173 | }
174 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/css/print/pdf.scss:
--------------------------------------------------------------------------------
1 | /**
2 | * This stylesheet is used to print reveal.js
3 | * presentations to PDF.
4 | *
5 | * https://revealjs.revealjs.com/pdf-export/
6 | */
7 |
8 | html.print-pdf {
9 | * {
10 | -webkit-print-color-adjust: exact;
11 | }
12 |
13 | & {
14 | width: 100%;
15 | height: 100%;
16 | overflow: visible;
17 | }
18 |
19 | body {
20 | margin: 0 auto !important;
21 | border: 0;
22 | padding: 0;
23 | float: none !important;
24 | overflow: visible;
25 | }
26 |
27 | /* Remove any elements not needed in print. */
28 | .nestedarrow,
29 | .reveal .controls,
30 | .reveal .progress,
31 | .reveal .playback,
32 | .reveal.overview,
33 | .fork-reveal,
34 | .share-reveal,
35 | .state-background {
36 | display: none !important;
37 | }
38 |
39 | h1, h2, h3, h4, h5, h6 {
40 | text-shadow: 0 0 0 #000 !important;
41 | }
42 |
43 | .reveal pre code {
44 | overflow: hidden !important;
45 | font-family: Courier, 'Courier New', monospace !important;
46 | }
47 |
48 | ul, ol, div, p {
49 | visibility: visible;
50 | position: static;
51 | width: auto;
52 | height: auto;
53 | display: block;
54 | overflow: visible;
55 | margin: auto;
56 | }
57 | .reveal {
58 | width: auto !important;
59 | height: auto !important;
60 | overflow: hidden !important;
61 | }
62 | .reveal .slides {
63 | position: static;
64 | width: 100% !important;
65 | height: auto !important;
66 | zoom: 1 !important;
67 | pointer-events: initial;
68 |
69 | left: auto;
70 | top: auto;
71 | margin: 0 !important;
72 | padding: 0 !important;
73 |
74 | overflow: visible;
75 | display: block;
76 |
77 | perspective: none;
78 | perspective-origin: 50% 50%;
79 | }
80 |
81 | .reveal .slides .pdf-page {
82 | position: relative;
83 | overflow: hidden;
84 | z-index: 1;
85 |
86 | page-break-after: always;
87 | }
88 |
89 | .reveal .slides section {
90 | visibility: visible !important;
91 | display: block !important;
92 | position: absolute !important;
93 |
94 | margin: 0 !important;
95 | padding: 0 !important;
96 | box-sizing: border-box !important;
97 | min-height: 1px;
98 |
99 | opacity: 1 !important;
100 |
101 | transform-style: flat !important;
102 | transform: none !important;
103 | }
104 |
105 | .reveal section.stack {
106 | position: relative !important;
107 | margin: 0 !important;
108 | padding: 0 !important;
109 | page-break-after: avoid !important;
110 | height: auto !important;
111 | min-height: auto !important;
112 | }
113 |
114 | .reveal img {
115 | box-shadow: none;
116 | }
117 |
118 | .reveal .roll {
119 | overflow: visible;
120 | line-height: 1em;
121 | }
122 |
123 | /* Slide backgrounds are placed inside of their slide when exporting to PDF */
124 | .reveal .slide-background {
125 | display: block !important;
126 | position: absolute;
127 | top: 0;
128 | left: 0;
129 | width: 100%;
130 | height: 100%;
131 | z-index: auto !important;
132 | }
133 |
134 | /* Display slide speaker notes when 'showNotes' is enabled */
135 | .reveal.show-notes {
136 | max-width: none;
137 | max-height: none;
138 | }
139 | .reveal .speaker-notes-pdf {
140 | display: block;
141 | width: 100%;
142 | height: auto;
143 | max-height: none;
144 | top: auto;
145 | right: auto;
146 | bottom: auto;
147 | left: auto;
148 | z-index: 100;
149 | }
150 |
151 | /* Layout option which makes notes appear on a separate page */
152 | .reveal .speaker-notes-pdf[data-layout="separate-page"] {
153 | position: relative;
154 | color: inherit;
155 | background-color: transparent;
156 | padding: 20px;
157 | page-break-after: always;
158 | border: 0;
159 | }
160 |
161 | /* Display slide numbers when 'slideNumber' is enabled */
162 | .reveal .slide-number-pdf {
163 | display: block;
164 | position: absolute;
165 | font-size: 14px;
166 | }
167 |
168 | /* This accessibility tool is not useful in PDF and breaks it visually */
169 | .aria-status {
170 | display: none;
171 | }
172 | }
173 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/css/theme/README.md:
--------------------------------------------------------------------------------
1 | ## Dependencies
2 |
3 | Themes are written using Sass to keep things modular and reduce the need for repeated selectors across files. Make sure that you have the reveal.js development environment installed before proceeding: https://revealjs.revealjs.com/installation/#full-setup
4 |
5 | ## Creating a Theme
6 |
7 | To create your own theme, start by duplicating a ```.scss``` file in [/css/theme/source](https://github.com/hakimel/reveal.js/blob/master/css/theme/source). It will be automatically compiled from Sass to CSS (see the [gulpfile](https://github.com/hakimel/reveal.js/blob/master/gulpfile.js)) when you run `npm run build -- css-themes`.
8 |
9 | Each theme file does four things in the following order:
10 |
11 | 1. **Include [/css/theme/template/mixins.scss](https://github.com/hakimel/reveal.js/blob/master/css/theme/template/mixins.scss)**
12 | Shared utility functions.
13 |
14 | 2. **Include [/css/theme/template/settings.scss](https://github.com/hakimel/reveal.js/blob/master/css/theme/template/settings.scss)**
15 | Declares a set of custom variables that the template file (step 4) expects. Can be overridden in step 3.
16 |
17 | 3. **Override**
18 | This is where you override the default theme. Either by specifying variables (see [settings.scss](https://github.com/hakimel/reveal.js/blob/master/css/theme/template/settings.scss) for reference) or by adding any selectors and styles you please.
19 |
20 | 4. **Include [/css/theme/template/theme.scss](https://github.com/hakimel/reveal.js/blob/master/css/theme/template/theme.scss)**
21 | The template theme file which will generate final CSS output based on the currently defined variables.
22 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/css/theme/source/beige.scss:
--------------------------------------------------------------------------------
1 | /**
2 | * Beige theme for reveal.js.
3 | *
4 | * Copyright (C) 2011-2012 Hakim El Hattab, http://hakim.se
5 | */
6 |
7 |
8 | // Default mixins and settings -----------------
9 | @import "../template/mixins";
10 | @import "../template/settings";
11 | // ---------------------------------------------
12 |
13 |
14 |
15 | // Include theme-specific fonts
16 | @import url(fonts/league-gothic/league-gothic.css);
17 | @import url(https://fonts.googleapis.com/css?family=Lato:400,700,400italic,700italic);
18 |
19 |
20 | // Override theme settings (see ../template/settings.scss)
21 | $mainColor: #333;
22 | $headingColor: #333;
23 | $headingTextShadow: none;
24 | $backgroundColor: #f7f3de;
25 | $linkColor: #8b743d;
26 | $linkColorHover: lighten( $linkColor, 20% );
27 | $selectionBackgroundColor: rgba(79, 64, 28, 0.99);
28 | $heading1TextShadow: 0 1px 0 #ccc, 0 2px 0 #c9c9c9, 0 3px 0 #bbb, 0 4px 0 #b9b9b9, 0 5px 0 #aaa, 0 6px 1px rgba(0,0,0,.1), 0 0 5px rgba(0,0,0,.1), 0 1px 3px rgba(0,0,0,.3), 0 3px 5px rgba(0,0,0,.2), 0 5px 10px rgba(0,0,0,.25), 0 20px 20px rgba(0,0,0,.15);
29 |
30 | // Background generator
31 | @mixin bodyBackground() {
32 | @include radial-gradient( rgba(247,242,211,1), rgba(255,255,255,1) );
33 | }
34 |
35 |
36 |
37 | // Theme template ------------------------------
38 | @import "../template/theme";
39 | // ---------------------------------------------
--------------------------------------------------------------------------------
/lectures/js/revealjs/css/theme/source/black.scss:
--------------------------------------------------------------------------------
1 | /**
2 | * Black theme for reveal.js. This is the opposite of the 'white' theme.
3 | *
4 | * By Hakim El Hattab, http://hakim.se
5 | */
6 |
7 |
8 | // Default mixins and settings -----------------
9 | @import "../template/mixins";
10 | @import "../template/settings";
11 | // ---------------------------------------------
12 |
13 |
14 | // Include theme-specific fonts
15 | @import url(fonts/source-sans-pro/source-sans-pro.css);
16 |
17 |
18 | // Override theme settings (see ../template/settings.scss)
19 | $backgroundColor: #191919;
20 |
21 | $mainColor: #fff;
22 | $headingColor: #fff;
23 |
24 | $mainFontSize: 42px;
25 | $mainFont: 'Source Sans Pro', Helvetica, sans-serif;
26 | $headingFont: 'Source Sans Pro', Helvetica, sans-serif;
27 | $headingTextShadow: none;
28 | $headingLetterSpacing: normal;
29 | $headingTextTransform: uppercase;
30 | $headingFontWeight: 600;
31 | $linkColor: #42affa;
32 | $linkColorHover: lighten( $linkColor, 15% );
33 | $selectionBackgroundColor: lighten( $linkColor, 25% );
34 |
35 | $heading1Size: 2.5em;
36 | $heading2Size: 1.6em;
37 | $heading3Size: 1.3em;
38 | $heading4Size: 1.0em;
39 |
40 | section.has-light-background {
41 | &, h1, h2, h3, h4, h5, h6 {
42 | color: #222;
43 | }
44 | }
45 |
46 |
47 | // Theme template ------------------------------
48 | @import "../template/theme";
49 | // ---------------------------------------------
--------------------------------------------------------------------------------
/lectures/js/revealjs/css/theme/source/blood.scss:
--------------------------------------------------------------------------------
1 | /**
2 | * Blood theme for reveal.js
3 | * Author: Walther http://github.com/Walther
4 | *
5 | * Designed to be used with highlight.js theme
6 | * "monokai_sublime.css" available from
7 | * https://github.com/isagalaev/highlight.js/
8 | *
9 | * For other themes, change $codeBackground accordingly.
10 | *
11 | */
12 |
13 | // Default mixins and settings -----------------
14 | @import "../template/mixins";
15 | @import "../template/settings";
16 | // ---------------------------------------------
17 |
18 | // Include theme-specific fonts
19 |
20 | @import url(https://fonts.googleapis.com/css?family=Ubuntu:300,700,300italic,700italic);
21 |
22 | // Colors used in the theme
23 | $blood: #a23;
24 | $coal: #222;
25 | $codeBackground: #23241f;
26 |
27 | $backgroundColor: $coal;
28 |
29 | // Main text
30 | $mainFont: Ubuntu, 'sans-serif';
31 | $mainColor: #eee;
32 |
33 | // Headings
34 | $headingFont: Ubuntu, 'sans-serif';
35 | $headingTextShadow: 2px 2px 2px $coal;
36 |
37 | // h1 shadow, borrowed humbly from
38 | // (c) Default theme by Hakim El Hattab
39 | $heading1TextShadow: 0 1px 0 #ccc, 0 2px 0 #c9c9c9, 0 3px 0 #bbb, 0 4px 0 #b9b9b9, 0 5px 0 #aaa, 0 6px 1px rgba(0,0,0,.1), 0 0 5px rgba(0,0,0,.1), 0 1px 3px rgba(0,0,0,.3), 0 3px 5px rgba(0,0,0,.2), 0 5px 10px rgba(0,0,0,.25), 0 20px 20px rgba(0,0,0,.15);
40 |
41 | // Links
42 | $linkColor: $blood;
43 | $linkColorHover: lighten( $linkColor, 20% );
44 |
45 | // Text selection
46 | $selectionBackgroundColor: $blood;
47 | $selectionColor: #fff;
48 |
49 |
50 | // Theme template ------------------------------
51 | @import "../template/theme";
52 | // ---------------------------------------------
53 |
54 | // some overrides after theme template import
55 |
56 | .reveal p {
57 | font-weight: 300;
58 | text-shadow: 1px 1px $coal;
59 | }
60 |
61 | .reveal h1,
62 | .reveal h2,
63 | .reveal h3,
64 | .reveal h4,
65 | .reveal h5,
66 | .reveal h6 {
67 | font-weight: 700;
68 | }
69 |
70 | .reveal p code {
71 | background-color: $codeBackground;
72 | display: inline-block;
73 | border-radius: 7px;
74 | }
75 |
76 | .reveal small code {
77 | vertical-align: baseline;
78 | }
--------------------------------------------------------------------------------
/lectures/js/revealjs/css/theme/source/league.scss:
--------------------------------------------------------------------------------
1 | /**
2 | * League theme for reveal.js.
3 | *
4 | * This was the default theme pre-3.0.0.
5 | *
6 | * Copyright (C) 2011-2012 Hakim El Hattab, http://hakim.se
7 | */
8 |
9 |
10 | // Default mixins and settings -----------------
11 | @import "../template/mixins";
12 | @import "../template/settings";
13 | // ---------------------------------------------
14 |
15 |
16 |
17 | // Include theme-specific fonts
18 | @import url(fonts/league-gothic/league-gothic.css);
19 | @import url(https://fonts.googleapis.com/css?family=Lato:400,700,400italic,700italic);
20 |
21 | // Override theme settings (see ../template/settings.scss)
22 | $headingTextShadow: 0px 0px 6px rgba(0,0,0,0.2);
23 | $heading1TextShadow: 0 1px 0 #ccc, 0 2px 0 #c9c9c9, 0 3px 0 #bbb, 0 4px 0 #b9b9b9, 0 5px 0 #aaa, 0 6px 1px rgba(0,0,0,.1), 0 0 5px rgba(0,0,0,.1), 0 1px 3px rgba(0,0,0,.3), 0 3px 5px rgba(0,0,0,.2), 0 5px 10px rgba(0,0,0,.25), 0 20px 20px rgba(0,0,0,.15);
24 |
25 | // Background generator
26 | @mixin bodyBackground() {
27 | @include radial-gradient( rgba(28,30,32,1), rgba(85,90,95,1) );
28 | }
29 |
30 |
31 |
32 | // Theme template ------------------------------
33 | @import "../template/theme";
34 | // ---------------------------------------------
--------------------------------------------------------------------------------
/lectures/js/revealjs/css/theme/source/moon.scss:
--------------------------------------------------------------------------------
1 | /**
2 | * Solarized Dark theme for reveal.js.
3 | * Author: Achim Staebler
4 | */
5 |
6 |
7 | // Default mixins and settings -----------------
8 | @import "../template/mixins";
9 | @import "../template/settings";
10 | // ---------------------------------------------
11 |
12 |
13 |
14 | // Include theme-specific fonts
15 | @import url(fonts/league-gothic/league-gothic.css);
16 | @import url(https://fonts.googleapis.com/css?family=Lato:400,700,400italic,700italic);
17 |
18 | /**
19 | * Solarized colors by Ethan Schoonover
20 | */
21 | html * {
22 | color-profile: sRGB;
23 | rendering-intent: auto;
24 | }
25 |
26 | // Solarized colors
27 | $base03: #002b36;
28 | $base02: #073642;
29 | $base01: #586e75;
30 | $base00: #657b83;
31 | $base0: #839496;
32 | $base1: #93a1a1;
33 | $base2: #eee8d5;
34 | $base3: #fdf6e3;
35 | $yellow: #b58900;
36 | $orange: #cb4b16;
37 | $red: #dc322f;
38 | $magenta: #d33682;
39 | $violet: #6c71c4;
40 | $blue: #268bd2;
41 | $cyan: #2aa198;
42 | $green: #859900;
43 |
44 | // Override theme settings (see ../template/settings.scss)
45 | $mainColor: $base1;
46 | $headingColor: $base2;
47 | $headingTextShadow: none;
48 | $backgroundColor: $base03;
49 | $linkColor: $blue;
50 | $linkColorHover: lighten( $linkColor, 20% );
51 | $selectionBackgroundColor: $magenta;
52 |
53 |
54 |
55 | // Theme template ------------------------------
56 | @import "../template/theme";
57 | // ---------------------------------------------
58 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/css/theme/source/night.scss:
--------------------------------------------------------------------------------
1 | /**
2 | * Black theme for reveal.js.
3 | *
4 | * Copyright (C) 2011-2012 Hakim El Hattab, http://hakim.se
5 | */
6 |
7 |
8 | // Default mixins and settings -----------------
9 | @import "../template/mixins";
10 | @import "../template/settings";
11 | // ---------------------------------------------
12 |
13 |
14 | // Include theme-specific fonts
15 | @import url(https://fonts.googleapis.com/css?family=Montserrat:700);
16 | @import url(https://fonts.googleapis.com/css?family=Open+Sans:400,700,400italic,700italic);
17 |
18 |
19 | // Override theme settings (see ../template/settings.scss)
20 | $backgroundColor: #111;
21 |
22 | $mainFont: 'Open Sans', sans-serif;
23 | $linkColor: #e7ad52;
24 | $linkColorHover: lighten( $linkColor, 20% );
25 | $headingFont: 'Montserrat', Impact, sans-serif;
26 | $headingTextShadow: none;
27 | $headingLetterSpacing: -0.03em;
28 | $headingTextTransform: none;
29 | $selectionBackgroundColor: #e7ad52;
30 |
31 |
32 | // Theme template ------------------------------
33 | @import "../template/theme";
34 | // ---------------------------------------------
--------------------------------------------------------------------------------
/lectures/js/revealjs/css/theme/source/serif.scss:
--------------------------------------------------------------------------------
1 | /**
2 | * A simple theme for reveal.js presentations, similar
3 | * to the default theme. The accent color is brown.
4 | *
5 | * This theme is Copyright (C) 2012-2013 Owen Versteeg, http://owenversteeg.com - it is MIT licensed.
6 | */
7 |
8 |
9 | // Default mixins and settings -----------------
10 | @import "../template/mixins";
11 | @import "../template/settings";
12 | // ---------------------------------------------
13 |
14 |
15 |
16 | // Override theme settings (see ../template/settings.scss)
17 | $mainFont: 'Palatino Linotype', 'Book Antiqua', Palatino, FreeSerif, serif;
18 | $mainColor: #000;
19 | $headingFont: 'Palatino Linotype', 'Book Antiqua', Palatino, FreeSerif, serif;
20 | $headingColor: #383D3D;
21 | $headingTextShadow: none;
22 | $headingTextTransform: none;
23 | $backgroundColor: #F0F1EB;
24 | $linkColor: #51483D;
25 | $linkColorHover: lighten( $linkColor, 20% );
26 | $selectionBackgroundColor: #26351C;
27 |
28 | .reveal a {
29 | line-height: 1.3em;
30 | }
31 |
32 |
33 | // Theme template ------------------------------
34 | @import "../template/theme";
35 | // ---------------------------------------------
36 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/css/theme/source/simple.scss:
--------------------------------------------------------------------------------
1 | /**
2 | * A simple theme for reveal.js presentations, similar
3 | * to the default theme. The accent color is darkblue.
4 | *
5 | * This theme is Copyright (C) 2012 Owen Versteeg, https://github.com/StereotypicalApps. It is MIT licensed.
6 | * reveal.js is Copyright (C) 2011-2012 Hakim El Hattab, http://hakim.se
7 | */
8 |
9 |
10 | // Default mixins and settings -----------------
11 | @import "../template/mixins";
12 | @import "../template/settings";
13 | // ---------------------------------------------
14 |
15 |
16 |
17 | // Include theme-specific fonts
18 | @import url(https://fonts.googleapis.com/css?family=News+Cycle:400,700);
19 | @import url(https://fonts.googleapis.com/css?family=Lato:400,700,400italic,700italic);
20 |
21 |
22 | // Override theme settings (see ../template/settings.scss)
23 | $mainFont: 'Lato', sans-serif;
24 | $mainColor: #000;
25 | $headingFont: 'News Cycle', Impact, sans-serif;
26 | $headingColor: #000;
27 | $headingTextShadow: none;
28 | $headingTextTransform: none;
29 | $backgroundColor: #fff;
30 | $linkColor: #00008B;
31 | $linkColorHover: lighten( $linkColor, 20% );
32 | $selectionBackgroundColor: rgba(0, 0, 0, 0.99);
33 |
34 | section.has-dark-background {
35 | &, h1, h2, h3, h4, h5, h6 {
36 | color: #fff;
37 | }
38 | }
39 |
40 |
41 | // Theme template ------------------------------
42 | @import "../template/theme";
43 | // ---------------------------------------------
--------------------------------------------------------------------------------
/lectures/js/revealjs/css/theme/source/sky.scss:
--------------------------------------------------------------------------------
1 | /**
2 | * Sky theme for reveal.js.
3 | *
4 | * Copyright (C) 2011-2012 Hakim El Hattab, http://hakim.se
5 | */
6 |
7 |
8 | // Default mixins and settings -----------------
9 | @import "../template/mixins";
10 | @import "../template/settings";
11 | // ---------------------------------------------
12 |
13 |
14 |
15 | // Include theme-specific fonts
16 | @import url(https://fonts.googleapis.com/css?family=Quicksand:400,700,400italic,700italic);
17 | @import url(https://fonts.googleapis.com/css?family=Open+Sans:400italic,700italic,400,700);
18 |
19 |
20 | // Override theme settings (see ../template/settings.scss)
21 | $mainFont: 'Open Sans', sans-serif;
22 | $mainColor: #333;
23 | $headingFont: 'Quicksand', sans-serif;
24 | $headingColor: #333;
25 | $headingLetterSpacing: -0.08em;
26 | $headingTextShadow: none;
27 | $backgroundColor: #f7fbfc;
28 | $linkColor: #3b759e;
29 | $linkColorHover: lighten( $linkColor, 20% );
30 | $selectionBackgroundColor: #134674;
31 |
32 | // Fix links so they are not cut off
33 | .reveal a {
34 | line-height: 1.3em;
35 | }
36 |
37 | // Background generator
38 | @mixin bodyBackground() {
39 | @include radial-gradient( #add9e4, #f7fbfc );
40 | }
41 |
42 |
43 |
44 | // Theme template ------------------------------
45 | @import "../template/theme";
46 | // ---------------------------------------------
47 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/css/theme/source/solarized.scss:
--------------------------------------------------------------------------------
1 | /**
2 | * Solarized Light theme for reveal.js.
3 | * Author: Achim Staebler
4 | */
5 |
6 |
7 | // Default mixins and settings -----------------
8 | @import "../template/mixins";
9 | @import "../template/settings";
10 | // ---------------------------------------------
11 |
12 |
13 |
14 | // Include theme-specific fonts
15 | @import url(fonts/league-gothic/league-gothic.css);
16 | @import url(https://fonts.googleapis.com/css?family=Lato:400,700,400italic,700italic);
17 |
18 |
19 | /**
20 | * Solarized colors by Ethan Schoonover
21 | */
22 | html * {
23 | color-profile: sRGB;
24 | rendering-intent: auto;
25 | }
26 |
27 | // Solarized colors
28 | $base03: #002b36;
29 | $base02: #073642;
30 | $base01: #586e75;
31 | $base00: #657b83;
32 | $base0: #839496;
33 | $base1: #93a1a1;
34 | $base2: #eee8d5;
35 | $base3: #fdf6e3;
36 | $yellow: #b58900;
37 | $orange: #cb4b16;
38 | $red: #dc322f;
39 | $magenta: #d33682;
40 | $violet: #6c71c4;
41 | $blue: #268bd2;
42 | $cyan: #2aa198;
43 | $green: #859900;
44 |
45 | // Override theme settings (see ../template/settings.scss)
46 | $mainColor: $base00;
47 | $headingColor: $base01;
48 | $headingTextShadow: none;
49 | $backgroundColor: $base3;
50 | $linkColor: $blue;
51 | $linkColorHover: lighten( $linkColor, 20% );
52 | $selectionBackgroundColor: $magenta;
53 |
54 | // Background generator
55 | // @mixin bodyBackground() {
56 | // @include radial-gradient( rgba($base3,1), rgba(lighten($base3, 20%),1) );
57 | // }
58 |
59 |
60 |
61 | // Theme template ------------------------------
62 | @import "../template/theme";
63 | // ---------------------------------------------
64 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/css/theme/source/white.scss:
--------------------------------------------------------------------------------
1 | /**
2 | * White theme for reveal.js. This is the opposite of the 'black' theme.
3 | *
4 | * By Hakim El Hattab, http://hakim.se
5 | */
6 |
7 |
8 | // Default mixins and settings -----------------
9 | @import "../template/mixins";
10 | @import "../template/settings";
11 | // ---------------------------------------------
12 |
13 |
14 | // Include theme-specific fonts
15 | @import url(fonts/source-sans-pro/source-sans-pro.css);
16 |
17 |
18 | // Override theme settings (see ../template/settings.scss)
19 | $backgroundColor: #fff;
20 |
21 | $mainColor: #222;
22 | $headingColor: #222;
23 |
24 | $mainFontSize: 42px;
25 | $mainFont: 'Source Sans Pro', Helvetica, sans-serif;
26 | $headingFont: 'Source Sans Pro', Helvetica, sans-serif;
27 | $headingTextShadow: none;
28 | $headingLetterSpacing: normal;
29 | $headingTextTransform: uppercase;
30 | $headingFontWeight: 600;
31 | $linkColor: #2a76dd;
32 | $linkColorHover: lighten( $linkColor, 15% );
33 | $selectionBackgroundColor: lighten( $linkColor, 25% );
34 |
35 | $heading1Size: 2.5em;
36 | $heading2Size: 1.6em;
37 | $heading3Size: 1.3em;
38 | $heading4Size: 1.0em;
39 |
40 | section.has-dark-background {
41 | &, h1, h2, h3, h4, h5, h6 {
42 | color: #fff;
43 | }
44 | }
45 |
46 |
47 | // Theme template ------------------------------
48 | @import "../template/theme";
49 | // ---------------------------------------------
--------------------------------------------------------------------------------
/lectures/js/revealjs/css/theme/template/exposer.scss:
--------------------------------------------------------------------------------
1 | // Exposes theme's variables for easy re-use in CSS for plugin authors
2 |
3 | :root {
4 | --background-color: #{$backgroundColor};
5 | --main-font: #{$mainFont};
6 | --main-font-size: #{$mainFontSize};
7 | --main-color: #{$mainColor};
8 | --block-margin: #{$blockMargin};
9 | --heading-margin: #{$headingMargin};
10 | --heading-font: #{$headingFont};
11 | --heading-color: #{$headingColor};
12 | --heading-line-height: #{$headingLineHeight};
13 | --heading-letter-spacing: #{$headingLetterSpacing};
14 | --heading-text-transform: #{$headingTextTransform};
15 | --heading-text-shadow: #{$headingTextShadow};
16 | --heading-font-weight: #{$headingFontWeight};
17 | --heading1-text-shadow: #{$heading1TextShadow};
18 | --heading1-size: #{$heading1Size};
19 | --heading2-size: #{$heading2Size};
20 | --heading3-size: #{$heading3Size};
21 | --heading4-size: #{$heading4Size};
22 | --code-font: #{$codeFont};
23 | --link-color: #{$linkColor};
24 | --link-color-hover: #{$linkColorHover};
25 | --selection-background-color: #{$selectionBackgroundColor};
26 | --selection-color: #{$selectionColor};
27 | }
28 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/css/theme/template/mixins.scss:
--------------------------------------------------------------------------------
1 | @mixin vertical-gradient( $top, $bottom ) {
2 | background: $top;
3 | background: -moz-linear-gradient( top, $top 0%, $bottom 100% );
4 | background: -webkit-gradient( linear, left top, left bottom, color-stop(0%,$top), color-stop(100%,$bottom) );
5 | background: -webkit-linear-gradient( top, $top 0%, $bottom 100% );
6 | background: -o-linear-gradient( top, $top 0%, $bottom 100% );
7 | background: -ms-linear-gradient( top, $top 0%, $bottom 100% );
8 | background: linear-gradient( top, $top 0%, $bottom 100% );
9 | }
10 |
11 | @mixin horizontal-gradient( $top, $bottom ) {
12 | background: $top;
13 | background: -moz-linear-gradient( left, $top 0%, $bottom 100% );
14 | background: -webkit-gradient( linear, left top, right top, color-stop(0%,$top), color-stop(100%,$bottom) );
15 | background: -webkit-linear-gradient( left, $top 0%, $bottom 100% );
16 | background: -o-linear-gradient( left, $top 0%, $bottom 100% );
17 | background: -ms-linear-gradient( left, $top 0%, $bottom 100% );
18 | background: linear-gradient( left, $top 0%, $bottom 100% );
19 | }
20 |
21 | @mixin radial-gradient( $outer, $inner, $type: circle ) {
22 | background: $outer;
23 | background: -moz-radial-gradient( center, $type cover, $inner 0%, $outer 100% );
24 | background: -webkit-gradient( radial, center center, 0px, center center, 100%, color-stop(0%,$inner), color-stop(100%,$outer) );
25 | background: -webkit-radial-gradient( center, $type cover, $inner 0%, $outer 100% );
26 | background: -o-radial-gradient( center, $type cover, $inner 0%, $outer 100% );
27 | background: -ms-radial-gradient( center, $type cover, $inner 0%, $outer 100% );
28 | background: radial-gradient( center, $type cover, $inner 0%, $outer 100% );
29 | }
--------------------------------------------------------------------------------
/lectures/js/revealjs/css/theme/template/settings.scss:
--------------------------------------------------------------------------------
1 | // Base settings for all themes that can optionally be
2 | // overridden by the super-theme
3 |
4 | // Background of the presentation
5 | $backgroundColor: #2b2b2b;
6 |
7 | // Primary/body text
8 | $mainFont: 'Lato', sans-serif;
9 | $mainFontSize: 40px;
10 | $mainColor: #eee;
11 |
12 | // Vertical spacing between blocks of text
13 | $blockMargin: 20px;
14 |
15 | // Headings
16 | $headingMargin: 0 0 $blockMargin 0;
17 | $headingFont: 'League Gothic', Impact, sans-serif;
18 | $headingColor: #eee;
19 | $headingLineHeight: 1.2;
20 | $headingLetterSpacing: normal;
21 | $headingTextTransform: uppercase;
22 | $headingTextShadow: none;
23 | $headingFontWeight: normal;
24 | $heading1TextShadow: $headingTextShadow;
25 |
26 | $heading1Size: 3.77em;
27 | $heading2Size: 2.11em;
28 | $heading3Size: 1.55em;
29 | $heading4Size: 1.00em;
30 |
31 | $codeFont: monospace;
32 |
33 | // Links and actions
34 | $linkColor: #13DAEC;
35 | $linkColorHover: lighten( $linkColor, 20% );
36 |
37 | // Text selection
38 | $selectionBackgroundColor: #FF5E99;
39 | $selectionColor: #fff;
40 |
41 | // Generates the presentation background, can be overridden
42 | // to return a background image or gradient
43 | @mixin bodyBackground() {
44 | background: $backgroundColor;
45 | }
46 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/dist/reset.css:
--------------------------------------------------------------------------------
1 | /* http://meyerweb.com/eric/tools/css/reset/
2 | v4.0 | 20180602
3 | License: none (public domain)
4 | */
5 |
6 | html, body, div, span, applet, object, iframe,
7 | h1, h2, h3, h4, h5, h6, p, blockquote, pre,
8 | a, abbr, acronym, address, big, cite, code,
9 | del, dfn, em, img, ins, kbd, q, s, samp,
10 | small, strike, strong, sub, sup, tt, var,
11 | b, u, i, center,
12 | dl, dt, dd, ol, ul, li,
13 | fieldset, form, label, legend,
14 | table, caption, tbody, tfoot, thead, tr, th, td,
15 | article, aside, canvas, details, embed,
16 | figure, figcaption, footer, header, hgroup,
17 | main, menu, nav, output, ruby, section, summary,
18 | time, mark, audio, video {
19 | margin: 0;
20 | padding: 0;
21 | border: 0;
22 | font-size: 100%;
23 | font: inherit;
24 | vertical-align: baseline;
25 | }
26 | /* HTML5 display-role reset for older browsers */
27 | article, aside, details, figcaption, figure,
28 | footer, header, hgroup, main, menu, nav, section {
29 | display: block;
30 | }
--------------------------------------------------------------------------------
/lectures/js/revealjs/dist/theme/fonts/league-gothic/LICENSE:
--------------------------------------------------------------------------------
1 | SIL Open Font License (OFL)
2 | http://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=OFL
3 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/dist/theme/fonts/league-gothic/league-gothic.css:
--------------------------------------------------------------------------------
1 | @font-face {
2 | font-family: 'League Gothic';
3 | src: url('league-gothic.eot');
4 | src: url('league-gothic.eot?#iefix') format('embedded-opentype'),
5 | url('league-gothic.woff') format('woff'),
6 | url('league-gothic.ttf') format('truetype');
7 |
8 | font-weight: normal;
9 | font-style: normal;
10 | }
--------------------------------------------------------------------------------
/lectures/js/revealjs/dist/theme/fonts/league-gothic/league-gothic.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/js/revealjs/dist/theme/fonts/league-gothic/league-gothic.eot
--------------------------------------------------------------------------------
/lectures/js/revealjs/dist/theme/fonts/league-gothic/league-gothic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/js/revealjs/dist/theme/fonts/league-gothic/league-gothic.ttf
--------------------------------------------------------------------------------
/lectures/js/revealjs/dist/theme/fonts/league-gothic/league-gothic.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/js/revealjs/dist/theme/fonts/league-gothic/league-gothic.woff
--------------------------------------------------------------------------------
/lectures/js/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-italic.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/js/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-italic.eot
--------------------------------------------------------------------------------
/lectures/js/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-italic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/js/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-italic.ttf
--------------------------------------------------------------------------------
/lectures/js/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-italic.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/js/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-italic.woff
--------------------------------------------------------------------------------
/lectures/js/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-regular.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/js/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-regular.eot
--------------------------------------------------------------------------------
/lectures/js/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/js/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-regular.ttf
--------------------------------------------------------------------------------
/lectures/js/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/js/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-regular.woff
--------------------------------------------------------------------------------
/lectures/js/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibold.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/js/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibold.eot
--------------------------------------------------------------------------------
/lectures/js/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/js/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibold.ttf
--------------------------------------------------------------------------------
/lectures/js/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibold.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/js/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibold.woff
--------------------------------------------------------------------------------
/lectures/js/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibolditalic.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/js/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibolditalic.eot
--------------------------------------------------------------------------------
/lectures/js/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibolditalic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/js/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibolditalic.ttf
--------------------------------------------------------------------------------
/lectures/js/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibolditalic.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/js/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibolditalic.woff
--------------------------------------------------------------------------------
/lectures/js/revealjs/dist/theme/fonts/source-sans-pro/source-sans-pro.css:
--------------------------------------------------------------------------------
1 | @font-face {
2 | font-family: 'Source Sans Pro';
3 | src: url('source-sans-pro-regular.eot');
4 | src: url('source-sans-pro-regular.eot?#iefix') format('embedded-opentype'),
5 | url('source-sans-pro-regular.woff') format('woff'),
6 | url('source-sans-pro-regular.ttf') format('truetype');
7 | font-weight: normal;
8 | font-style: normal;
9 | }
10 |
11 | @font-face {
12 | font-family: 'Source Sans Pro';
13 | src: url('source-sans-pro-italic.eot');
14 | src: url('source-sans-pro-italic.eot?#iefix') format('embedded-opentype'),
15 | url('source-sans-pro-italic.woff') format('woff'),
16 | url('source-sans-pro-italic.ttf') format('truetype');
17 | font-weight: normal;
18 | font-style: italic;
19 | }
20 |
21 | @font-face {
22 | font-family: 'Source Sans Pro';
23 | src: url('source-sans-pro-semibold.eot');
24 | src: url('source-sans-pro-semibold.eot?#iefix') format('embedded-opentype'),
25 | url('source-sans-pro-semibold.woff') format('woff'),
26 | url('source-sans-pro-semibold.ttf') format('truetype');
27 | font-weight: 600;
28 | font-style: normal;
29 | }
30 |
31 | @font-face {
32 | font-family: 'Source Sans Pro';
33 | src: url('source-sans-pro-semibolditalic.eot');
34 | src: url('source-sans-pro-semibolditalic.eot?#iefix') format('embedded-opentype'),
35 | url('source-sans-pro-semibolditalic.woff') format('woff'),
36 | url('source-sans-pro-semibolditalic.ttf') format('truetype');
37 | font-weight: 600;
38 | font-style: italic;
39 | }
--------------------------------------------------------------------------------
/lectures/js/revealjs/examples/assets/beeping.txt:
--------------------------------------------------------------------------------
1 | Source: https://freesound.org/people/fennelliott/sounds/379419/
2 | License: CC0 (public domain)
--------------------------------------------------------------------------------
/lectures/js/revealjs/examples/assets/beeping.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/js/revealjs/examples/assets/beeping.wav
--------------------------------------------------------------------------------
/lectures/js/revealjs/examples/assets/image1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/js/revealjs/examples/assets/image1.png
--------------------------------------------------------------------------------
/lectures/js/revealjs/examples/assets/image2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leouieda/gravity-processing/983c6f3eadb9d6fb77a3aaddb783604497d3a4c0/lectures/js/revealjs/examples/assets/image2.png
--------------------------------------------------------------------------------
/lectures/js/revealjs/examples/barebones.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | reveal.js - Barebones
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 | Barebones Presentation
15 | This example contains the bare minimum includes and markup required to run a reveal.js presentation.
16 |
17 |
18 |
19 | No Theme
20 | There's no theme included, so it will fall back on browser defaults.
21 |
22 |
23 |
24 |
25 |
26 |
27 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/examples/layout-helpers.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | reveal.js - Layout Helpers
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 | Layout Helper Examples
24 |
30 |
31 |
32 |
33 | Stretch
34 | Makes an element as tall as possible while remaining within the slide bounds.
35 |
36 | Stretch Example
37 |
38 | Image byline
39 |
40 |
41 |
42 |
43 | Stretch Example
44 |
45 | Image byline
46 |
47 |
48 |
49 | Stack
50 | Stacks multiple elements on top of each other, for use with fragments.
51 |
52 |
53 | <img class="fragment" width="450" height="300" src="...">
54 | <img class="fragment" width="300" height="450" src="...">
55 | <img class="fragment" width="400" height="400" src="...">
56 |
57 |
58 |
59 |
60 |
61 | Stack Example
62 |
67 |
68 |
69 |
70 | Stack Example
71 | One at a time.
72 |
77 |
78 |
79 |
80 | HStack
81 | Stacks multiple elements horizontally.
82 |
83 |
84 | <img width="450" height="300" src="...">
85 | <img width="300" height="450" src="...">
86 | <img width="400" height="400" src="...">
87 |
88 |
89 |
90 |
91 |
92 | HStack Example
93 |
94 |
One
95 |
Two
96 |
Three
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
113 |
114 |
115 |
116 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/examples/markdown.md:
--------------------------------------------------------------------------------
1 | # Markdown Demo
2 |
3 |
4 |
5 | ## External 1.1
6 |
7 | Content 1.1
8 |
9 | Note: This will only appear in the speaker notes window.
10 |
11 |
12 | ## External 1.2
13 |
14 | Content 1.2
15 |
16 |
17 |
18 | ## External 2
19 |
20 | Content 2.1
21 |
22 |
23 |
24 | ## External 3.1
25 |
26 | Content 3.1
27 |
28 |
29 | ## External 3.2
30 |
31 | Content 3.2
32 |
33 |
34 | ## External 3.3
35 |
36 | 
37 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/examples/media.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | reveal.js - Video, Audio and Iframes
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 | Examples of embedded Video, Audio and Iframes
23 |
24 |
25 |
29 |
30 |
31 | Iframe Background
32 |
33 |
34 |
35 | Auto-playing audio
36 |
37 |
38 |
39 |
40 | Audio with controls
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
54 |
55 |
56 |
57 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/examples/multiple-presentations.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | reveal.js - Multiple Presentations
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 | import React, { useState } from 'react';
26 | function Example() {
27 | const [count, setCount] = useState(0);
28 | }
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
47 |
48 | The Lorenz Equations
49 |
50 | \[\begin{aligned}
51 | \dot{x} & = \sigma(y-x) \\
52 | \dot{y} & = \rho x - y - xz \\
53 | \dot{z} & = -\beta z + xy
54 | \end{aligned} \]
55 |
56 |
57 |
58 |
59 |
60 |
68 |
69 |
70 |
71 |
72 |
73 |
100 |
101 |
102 |
103 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/examples/slide-transitions.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | reveal.js - Slide Transitions
8 |
9 |
10 |
11 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
32 |
33 |
36 |
37 |
38 | data-transition: zoom
39 |
40 |
41 |
42 | data-transition: zoom-in fade-out
43 |
44 |
45 |
48 |
49 |
50 | data-transition: convex
51 |
52 |
53 |
54 | data-transition: convex-in concave-out
55 |
56 |
57 |
58 |
61 |
62 | data-transition: concave
63 |
64 |
65 | data-transition: convex-in fade-out
66 |
67 |
70 |
71 |
72 |
73 | data-transition: none
74 |
75 |
76 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
95 |
96 |
97 |
98 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | reveal.js
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
23 |
24 |
25 |
26 |
27 |
28 |
39 |
40 |
41 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/js/controllers/focus.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Manages focus when a presentation is embedded. This
3 | * helps us only capture keyboard from the presentation
4 | * a user is currently interacting with in a page where
5 | * multiple presentations are embedded.
6 | */
7 |
8 | const STATE_FOCUS = 'focus';
9 | const STATE_BLUR = 'blur';
10 |
11 | export default class Focus {
12 |
13 | constructor( Reveal ) {
14 |
15 | this.Reveal = Reveal;
16 |
17 | this.onRevealPointerDown = this.onRevealPointerDown.bind( this );
18 | this.onDocumentPointerDown = this.onDocumentPointerDown.bind( this );
19 |
20 | }
21 |
22 | /**
23 | * Called when the reveal.js config is updated.
24 | */
25 | configure( config, oldConfig ) {
26 |
27 | if( config.embedded ) {
28 | this.blur();
29 | }
30 | else {
31 | this.focus();
32 | this.unbind();
33 | }
34 |
35 | }
36 |
37 | bind() {
38 |
39 | if( this.Reveal.getConfig().embedded ) {
40 | this.Reveal.getRevealElement().addEventListener( 'pointerdown', this.onRevealPointerDown, false );
41 | }
42 |
43 | }
44 |
45 | unbind() {
46 |
47 | this.Reveal.getRevealElement().removeEventListener( 'pointerdown', this.onRevealPointerDown, false );
48 | document.removeEventListener( 'pointerdown', this.onDocumentPointerDown, false );
49 |
50 | }
51 |
52 | focus() {
53 |
54 | if( this.state !== STATE_FOCUS ) {
55 | this.Reveal.getRevealElement().classList.add( 'focused' );
56 | document.addEventListener( 'pointerdown', this.onDocumentPointerDown, false );
57 | }
58 |
59 | this.state = STATE_FOCUS;
60 |
61 | }
62 |
63 | blur() {
64 |
65 | if( this.state !== STATE_BLUR ) {
66 | this.Reveal.getRevealElement().classList.remove( 'focused' );
67 | document.removeEventListener( 'pointerdown', this.onDocumentPointerDown, false );
68 | }
69 |
70 | this.state = STATE_BLUR;
71 |
72 | }
73 |
74 | isFocused() {
75 |
76 | return this.state === STATE_FOCUS;
77 |
78 | }
79 |
80 | onRevealPointerDown( event ) {
81 |
82 | this.focus();
83 |
84 | }
85 |
86 | onDocumentPointerDown( event ) {
87 |
88 | let revealElement = event.target.closest( '.reveal' );
89 | if( !revealElement || revealElement !== this.Reveal.getRevealElement() ) {
90 | this.blur();
91 | }
92 |
93 | }
94 |
95 | }
--------------------------------------------------------------------------------
/lectures/js/revealjs/js/controllers/notes.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Handles the showing and
3 | */
4 | export default class Notes {
5 |
6 | constructor( Reveal ) {
7 |
8 | this.Reveal = Reveal;
9 |
10 | }
11 |
12 | render() {
13 |
14 | this.element = document.createElement( 'div' );
15 | this.element.className = 'speaker-notes';
16 | this.element.setAttribute( 'data-prevent-swipe', '' );
17 | this.element.setAttribute( 'tabindex', '0' );
18 | this.Reveal.getRevealElement().appendChild( this.element );
19 |
20 | }
21 |
22 | /**
23 | * Called when the reveal.js config is updated.
24 | */
25 | configure( config, oldConfig ) {
26 |
27 | if( config.showNotes ) {
28 | this.element.setAttribute( 'data-layout', typeof config.showNotes === 'string' ? config.showNotes : 'inline' );
29 | }
30 |
31 | }
32 |
33 | /**
34 | * Pick up notes from the current slide and display them
35 | * to the viewer.
36 | *
37 | * @see {@link config.showNotes}
38 | */
39 | update() {
40 |
41 | if( this.Reveal.getConfig().showNotes && this.element && this.Reveal.getCurrentSlide() && !this.Reveal.print.isPrintingPDF() ) {
42 |
43 | this.element.innerHTML = this.getSlideNotes() || 'No notes on this slide. ';
44 |
45 | }
46 |
47 | }
48 |
49 | /**
50 | * Updates the visibility of the speaker notes sidebar that
51 | * is used to share annotated slides. The notes sidebar is
52 | * only visible if showNotes is true and there are notes on
53 | * one or more slides in the deck.
54 | */
55 | updateVisibility() {
56 |
57 | if( this.Reveal.getConfig().showNotes && this.hasNotes() && !this.Reveal.print.isPrintingPDF() ) {
58 | this.Reveal.getRevealElement().classList.add( 'show-notes' );
59 | }
60 | else {
61 | this.Reveal.getRevealElement().classList.remove( 'show-notes' );
62 | }
63 |
64 | }
65 |
66 | /**
67 | * Checks if there are speaker notes for ANY slide in the
68 | * presentation.
69 | */
70 | hasNotes() {
71 |
72 | return this.Reveal.getSlidesElement().querySelectorAll( '[data-notes], aside.notes' ).length > 0;
73 |
74 | }
75 |
76 | /**
77 | * Checks if this presentation is running inside of the
78 | * speaker notes window.
79 | *
80 | * @return {boolean}
81 | */
82 | isSpeakerNotesWindow() {
83 |
84 | return !!window.location.search.match( /receiver/gi );
85 |
86 | }
87 |
88 | /**
89 | * Retrieves the speaker notes from a slide. Notes can be
90 | * defined in two ways:
91 | * 1. As a data-notes attribute on the slide
92 | * 2. As an inside of the slide
93 | *
94 | * @param {HTMLElement} [slide=currentSlide]
95 | * @return {(string|null)}
96 | */
97 | getSlideNotes( slide = this.Reveal.getCurrentSlide() ) {
98 |
99 | // Notes can be specified via the data-notes attribute...
100 | if( slide.hasAttribute( 'data-notes' ) ) {
101 | return slide.getAttribute( 'data-notes' );
102 | }
103 |
104 | // ... or using an element
105 | let notesElement = slide.querySelector( 'aside.notes' );
106 | if( notesElement ) {
107 | return notesElement.innerHTML;
108 | }
109 |
110 | return null;
111 |
112 | }
113 |
114 | }
--------------------------------------------------------------------------------
/lectures/js/revealjs/js/controllers/pointer.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Handles hiding of the pointer/cursor when inactive.
3 | */
4 | export default class Pointer {
5 |
6 | constructor( Reveal ) {
7 |
8 | this.Reveal = Reveal;
9 |
10 | // Throttles mouse wheel navigation
11 | this.lastMouseWheelStep = 0;
12 |
13 | // Is the mouse pointer currently hidden from view
14 | this.cursorHidden = false;
15 |
16 | // Timeout used to determine when the cursor is inactive
17 | this.cursorInactiveTimeout = 0;
18 |
19 | this.onDocumentCursorActive = this.onDocumentCursorActive.bind( this );
20 | this.onDocumentMouseScroll = this.onDocumentMouseScroll.bind( this );
21 |
22 | }
23 |
24 | /**
25 | * Called when the reveal.js config is updated.
26 | */
27 | configure( config, oldConfig ) {
28 |
29 | if( config.mouseWheel ) {
30 | document.addEventListener( 'DOMMouseScroll', this.onDocumentMouseScroll, false ); // FF
31 | document.addEventListener( 'mousewheel', this.onDocumentMouseScroll, false );
32 | }
33 | else {
34 | document.removeEventListener( 'DOMMouseScroll', this.onDocumentMouseScroll, false ); // FF
35 | document.removeEventListener( 'mousewheel', this.onDocumentMouseScroll, false );
36 | }
37 |
38 | // Auto-hide the mouse pointer when its inactive
39 | if( config.hideInactiveCursor ) {
40 | document.addEventListener( 'mousemove', this.onDocumentCursorActive, false );
41 | document.addEventListener( 'mousedown', this.onDocumentCursorActive, false );
42 | }
43 | else {
44 | this.showCursor();
45 |
46 | document.removeEventListener( 'mousemove', this.onDocumentCursorActive, false );
47 | document.removeEventListener( 'mousedown', this.onDocumentCursorActive, false );
48 | }
49 |
50 | }
51 |
52 | /**
53 | * Shows the mouse pointer after it has been hidden with
54 | * #hideCursor.
55 | */
56 | showCursor() {
57 |
58 | if( this.cursorHidden ) {
59 | this.cursorHidden = false;
60 | this.Reveal.getRevealElement().style.cursor = '';
61 | }
62 |
63 | }
64 |
65 | /**
66 | * Hides the mouse pointer when it's on top of the .reveal
67 | * container.
68 | */
69 | hideCursor() {
70 |
71 | if( this.cursorHidden === false ) {
72 | this.cursorHidden = true;
73 | this.Reveal.getRevealElement().style.cursor = 'none';
74 | }
75 |
76 | }
77 |
78 | /**
79 | * Called whenever there is mouse input at the document level
80 | * to determine if the cursor is active or not.
81 | *
82 | * @param {object} event
83 | */
84 | onDocumentCursorActive( event ) {
85 |
86 | this.showCursor();
87 |
88 | clearTimeout( this.cursorInactiveTimeout );
89 |
90 | this.cursorInactiveTimeout = setTimeout( this.hideCursor.bind( this ), this.Reveal.getConfig().hideCursorTime );
91 |
92 | }
93 |
94 | /**
95 | * Handles mouse wheel scrolling, throttled to avoid skipping
96 | * multiple slides.
97 | *
98 | * @param {object} event
99 | */
100 | onDocumentMouseScroll( event ) {
101 |
102 | if( Date.now() - this.lastMouseWheelStep > 1000 ) {
103 |
104 | this.lastMouseWheelStep = Date.now();
105 |
106 | let delta = event.detail || -event.wheelDelta;
107 | if( delta > 0 ) {
108 | this.Reveal.next();
109 | }
110 | else if( delta < 0 ) {
111 | this.Reveal.prev();
112 | }
113 |
114 | }
115 |
116 | }
117 |
118 | }
--------------------------------------------------------------------------------
/lectures/js/revealjs/js/controllers/progress.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Creates a visual progress bar for the presentation.
3 | */
4 | export default class Progress {
5 |
6 | constructor( Reveal ) {
7 |
8 | this.Reveal = Reveal;
9 |
10 | this.onProgressClicked = this.onProgressClicked.bind( this );
11 |
12 | }
13 |
14 | render() {
15 |
16 | this.element = document.createElement( 'div' );
17 | this.element.className = 'progress';
18 | this.Reveal.getRevealElement().appendChild( this.element );
19 |
20 | this.bar = document.createElement( 'span' );
21 | this.element.appendChild( this.bar );
22 |
23 | }
24 |
25 | /**
26 | * Called when the reveal.js config is updated.
27 | */
28 | configure( config, oldConfig ) {
29 |
30 | this.element.style.display = config.progress ? 'block' : 'none';
31 |
32 | }
33 |
34 | bind() {
35 |
36 | if( this.Reveal.getConfig().progress && this.element ) {
37 | this.element.addEventListener( 'click', this.onProgressClicked, false );
38 | }
39 |
40 | }
41 |
42 | unbind() {
43 |
44 | if ( this.Reveal.getConfig().progress && this.element ) {
45 | this.element.removeEventListener( 'click', this.onProgressClicked, false );
46 | }
47 |
48 | }
49 |
50 | /**
51 | * Updates the progress bar to reflect the current slide.
52 | */
53 | update() {
54 |
55 | // Update progress if enabled
56 | if( this.Reveal.getConfig().progress && this.bar ) {
57 |
58 | this.bar.style.transform = 'scaleX('+ this.Reveal.getProgress() +')';
59 |
60 | }
61 |
62 | }
63 |
64 | getMaxWidth() {
65 |
66 | return this.Reveal.getRevealElement().offsetWidth;
67 |
68 | }
69 |
70 | /**
71 | * Clicking on the progress bar results in a navigation to the
72 | * closest approximate horizontal slide using this equation:
73 | *
74 | * ( clickX / presentationWidth ) * numberOfSlides
75 | *
76 | * @param {object} event
77 | */
78 | onProgressClicked( event ) {
79 |
80 | this.Reveal.onUserInput( event );
81 |
82 | event.preventDefault();
83 |
84 | let slidesTotal = this.Reveal.getHorizontalSlides().length;
85 | let slideIndex = Math.floor( ( event.clientX / this.getMaxWidth() ) * slidesTotal );
86 |
87 | if( this.Reveal.getConfig().rtl ) {
88 | slideIndex = slidesTotal - slideIndex;
89 | }
90 |
91 | this.Reveal.slide( slideIndex );
92 |
93 | }
94 |
95 |
96 | }
--------------------------------------------------------------------------------
/lectures/js/revealjs/js/controllers/slidenumber.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Handles the display of reveal.js' optional slide number.
3 | */
4 | export default class SlideNumber {
5 |
6 | constructor( Reveal ) {
7 |
8 | this.Reveal = Reveal;
9 |
10 | }
11 |
12 | render() {
13 |
14 | this.element = document.createElement( 'div' );
15 | this.element.className = 'slide-number';
16 | this.Reveal.getRevealElement().appendChild( this.element );
17 |
18 | }
19 |
20 | /**
21 | * Called when the reveal.js config is updated.
22 | */
23 | configure( config, oldConfig ) {
24 |
25 | let slideNumberDisplay = 'none';
26 | if( config.slideNumber && !this.Reveal.isPrintingPDF() ) {
27 | if( config.showSlideNumber === 'all' ) {
28 | slideNumberDisplay = 'block';
29 | }
30 | else if( config.showSlideNumber === 'speaker' && this.Reveal.isSpeakerNotes() ) {
31 | slideNumberDisplay = 'block';
32 | }
33 | }
34 |
35 | this.element.style.display = slideNumberDisplay;
36 |
37 | }
38 |
39 | /**
40 | * Updates the slide number to match the current slide.
41 | */
42 | update() {
43 |
44 | // Update slide number if enabled
45 | if( this.Reveal.getConfig().slideNumber && this.element ) {
46 | this.element.innerHTML = this.getSlideNumber();
47 | }
48 |
49 | }
50 |
51 | /**
52 | * Returns the HTML string corresponding to the current slide
53 | * number, including formatting.
54 | */
55 | getSlideNumber( slide = this.Reveal.getCurrentSlide() ) {
56 |
57 | let config = this.Reveal.getConfig();
58 | let value;
59 | let format = 'h.v';
60 |
61 | if ( typeof config.slideNumber === 'function' ) {
62 | value = config.slideNumber( slide );
63 | } else {
64 | // Check if a custom number format is available
65 | if( typeof config.slideNumber === 'string' ) {
66 | format = config.slideNumber;
67 | }
68 |
69 | // If there are ONLY vertical slides in this deck, always use
70 | // a flattened slide number
71 | if( !/c/.test( format ) && this.Reveal.getHorizontalSlides().length === 1 ) {
72 | format = 'c';
73 | }
74 |
75 | value = [];
76 | switch( format ) {
77 | case 'c':
78 | value.push( this.Reveal.getSlidePastCount( slide ) + 1 );
79 | break;
80 | case 'c/t':
81 | value.push( this.Reveal.getSlidePastCount( slide ) + 1, '/', this.Reveal.getTotalSlides() );
82 | break;
83 | default:
84 | let indices = this.Reveal.getIndices( slide );
85 | value.push( indices.h + 1 );
86 | let sep = format === 'h/v' ? '/' : '.';
87 | if( this.Reveal.isVerticalSlide( slide ) ) value.push( sep, indices.v + 1 );
88 | }
89 | }
90 |
91 | let url = '#' + this.Reveal.location.getHash( slide );
92 | return this.formatNumber( value[0], value[1], value[2], url );
93 |
94 | }
95 |
96 | /**
97 | * Applies HTML formatting to a slide number before it's
98 | * written to the DOM.
99 | *
100 | * @param {number} a Current slide
101 | * @param {string} delimiter Character to separate slide numbers
102 | * @param {(number|*)} b Total slides
103 | * @param {HTMLElement} [url='#'+locationHash()] The url to link to
104 | * @return {string} HTML string fragment
105 | */
106 | formatNumber( a, delimiter, b, url = '#' + this.Reveal.location.getHash() ) {
107 |
108 | if( typeof b === 'number' && !isNaN( b ) ) {
109 | return `
110 | ${a}
111 | ${delimiter}
112 | ${b}
113 | `;
114 | }
115 | else {
116 | return `
117 | ${a}
118 | `;
119 | }
120 |
121 | }
122 |
123 | }
--------------------------------------------------------------------------------
/lectures/js/revealjs/js/index.js:
--------------------------------------------------------------------------------
1 | import Deck, { VERSION } from './reveal.js'
2 |
3 | /**
4 | * Expose the Reveal class to the window. To create a
5 | * new instance:
6 | * let deck = new Reveal( document.querySelector( '.reveal' ), {
7 | * controls: false
8 | * } );
9 | * deck.initialize().then(() => {
10 | * // reveal.js is ready
11 | * });
12 | */
13 | let Reveal = Deck;
14 |
15 |
16 | /**
17 | * The below is a thin shell that mimics the pre 4.0
18 | * reveal.js API and ensures backwards compatibility.
19 | * This API only allows for one Reveal instance per
20 | * page, whereas the new API above lets you run many
21 | * presentations on the same page.
22 | *
23 | * Reveal.initialize( { controls: false } ).then(() => {
24 | * // reveal.js is ready
25 | * });
26 | */
27 |
28 | let enqueuedAPICalls = [];
29 |
30 | Reveal.initialize = options => {
31 |
32 | // Create our singleton reveal.js instance
33 | Object.assign( Reveal, new Deck( document.querySelector( '.reveal' ), options ) );
34 |
35 | // Invoke any enqueued API calls
36 | enqueuedAPICalls.map( method => method( Reveal ) );
37 |
38 | return Reveal.initialize();
39 |
40 | }
41 |
42 | /**
43 | * The pre 4.0 API let you add event listener before
44 | * initializing. We maintain the same behavior by
45 | * queuing up premature API calls and invoking all
46 | * of them when Reveal.initialize is called.
47 | */
48 | [ 'on', 'off', 'addEventListener', 'removeEventListener', 'registerPlugin' ].forEach( method => {
49 | Reveal[method] = ( ...args ) => {
50 | enqueuedAPICalls.push( deck => deck[method].call( null, ...args ) );
51 | }
52 | } );
53 |
54 | Reveal.VERSION = VERSION;
55 |
56 | export default Reveal;
--------------------------------------------------------------------------------
/lectures/js/revealjs/js/utils/color.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Converts various color input formats to an {r:0,g:0,b:0} object.
3 | *
4 | * @param {string} color The string representation of a color
5 | * @example
6 | * colorToRgb('#000');
7 | * @example
8 | * colorToRgb('#000000');
9 | * @example
10 | * colorToRgb('rgb(0,0,0)');
11 | * @example
12 | * colorToRgb('rgba(0,0,0)');
13 | *
14 | * @return {{r: number, g: number, b: number, [a]: number}|null}
15 | */
16 | export const colorToRgb = ( color ) => {
17 |
18 | let hex3 = color.match( /^#([0-9a-f]{3})$/i );
19 | if( hex3 && hex3[1] ) {
20 | hex3 = hex3[1];
21 | return {
22 | r: parseInt( hex3.charAt( 0 ), 16 ) * 0x11,
23 | g: parseInt( hex3.charAt( 1 ), 16 ) * 0x11,
24 | b: parseInt( hex3.charAt( 2 ), 16 ) * 0x11
25 | };
26 | }
27 |
28 | let hex6 = color.match( /^#([0-9a-f]{6})$/i );
29 | if( hex6 && hex6[1] ) {
30 | hex6 = hex6[1];
31 | return {
32 | r: parseInt( hex6.substr( 0, 2 ), 16 ),
33 | g: parseInt( hex6.substr( 2, 2 ), 16 ),
34 | b: parseInt( hex6.substr( 4, 2 ), 16 )
35 | };
36 | }
37 |
38 | let rgb = color.match( /^rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/i );
39 | if( rgb ) {
40 | return {
41 | r: parseInt( rgb[1], 10 ),
42 | g: parseInt( rgb[2], 10 ),
43 | b: parseInt( rgb[3], 10 )
44 | };
45 | }
46 |
47 | let rgba = color.match( /^rgba\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\,\s*([\d]+|[\d]*.[\d]+)\s*\)$/i );
48 | if( rgba ) {
49 | return {
50 | r: parseInt( rgba[1], 10 ),
51 | g: parseInt( rgba[2], 10 ),
52 | b: parseInt( rgba[3], 10 ),
53 | a: parseFloat( rgba[4] )
54 | };
55 | }
56 |
57 | return null;
58 |
59 | }
60 |
61 | /**
62 | * Calculates brightness on a scale of 0-255.
63 | *
64 | * @param {string} color See colorToRgb for supported formats.
65 | * @see {@link colorToRgb}
66 | */
67 | export const colorBrightness = ( color ) => {
68 |
69 | if( typeof color === 'string' ) color = colorToRgb( color );
70 |
71 | if( color ) {
72 | return ( color.r * 299 + color.g * 587 + color.b * 114 ) / 1000;
73 | }
74 |
75 | return null;
76 |
77 | }
--------------------------------------------------------------------------------
/lectures/js/revealjs/js/utils/constants.js:
--------------------------------------------------------------------------------
1 |
2 | export const SLIDES_SELECTOR = '.slides section';
3 | export const HORIZONTAL_SLIDES_SELECTOR = '.slides>section';
4 | export const VERTICAL_SLIDES_SELECTOR = '.slides>section.present>section';
5 |
6 | // Methods that may not be invoked via the postMessage API
7 | export const POST_MESSAGE_METHOD_BLACKLIST = /registerPlugin|registerKeyboardShortcut|addKeyBinding|addEventListener/;
8 |
9 | // Regex for retrieving the fragment style from a class attribute
10 | export const FRAGMENT_STYLE_REGEX = /fade-(down|up|right|left|out|in-then-out|in-then-semi-out)|semi-fade-out|current-visible|shrink|grow/;
--------------------------------------------------------------------------------
/lectures/js/revealjs/js/utils/device.js:
--------------------------------------------------------------------------------
1 | const UA = navigator.userAgent;
2 | const testElement = document.createElement( 'div' );
3 |
4 | export const isMobile = /(iphone|ipod|ipad|android)/gi.test( UA ) ||
5 | ( navigator.platform === 'MacIntel' && navigator.maxTouchPoints > 1 ); // iPadOS
6 |
7 | export const isChrome = /chrome/i.test( UA ) && !/edge/i.test( UA );
8 |
9 | export const isAndroid = /android/gi.test( UA );
10 |
11 | // Flags if we should use zoom instead of transform to scale
12 | // up slides. Zoom produces crisper results but has a lot of
13 | // xbrowser quirks so we only use it in whitelisted browsers.
14 | export const supportsZoom = 'zoom' in testElement.style && !isMobile &&
15 | ( isChrome || /Version\/[\d\.]+.*Safari/.test( UA ) );
16 |
17 | export const supportsHistoryAPI = typeof window.history.replaceState === 'function' && !/PhantomJS/.test( UA );
--------------------------------------------------------------------------------
/lectures/js/revealjs/js/utils/loader.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Loads a JavaScript file from the given URL and executes it.
3 | *
4 | * @param {string} url Address of the .js file to load
5 | * @param {function} callback Method to invoke when the script
6 | * has loaded and executed
7 | */
8 | export const loadScript = ( url, callback ) => {
9 |
10 | const script = document.createElement( 'script' );
11 | script.type = 'text/javascript';
12 | script.async = false;
13 | script.defer = false;
14 | script.src = url;
15 |
16 | if( typeof callback === 'function' ) {
17 |
18 | // Success callback
19 | script.onload = script.onreadystatechange = event => {
20 | if( event.type === 'load' || /loaded|complete/.test( script.readyState ) ) {
21 |
22 | // Kill event listeners
23 | script.onload = script.onreadystatechange = script.onerror = null;
24 |
25 | callback();
26 |
27 | }
28 | };
29 |
30 | // Error callback
31 | script.onerror = err => {
32 |
33 | // Kill event listeners
34 | script.onload = script.onreadystatechange = script.onerror = null;
35 |
36 | callback( new Error( 'Failed loading script: ' + script.src + '\n' + err ) );
37 |
38 | };
39 |
40 | }
41 |
42 | // Append the script at the end of
43 | const head = document.querySelector( 'head' );
44 | head.insertBefore( script, head.lastChild );
45 |
46 | }
--------------------------------------------------------------------------------
/lectures/js/revealjs/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "reveal.js",
3 | "version": "4.0.1",
4 | "description": "The HTML Presentation Framework",
5 | "homepage": "https://revealjs.com",
6 | "subdomain": "revealjs",
7 | "main": "dist/reveal.js",
8 | "module": "dist/reveal.esm.js",
9 | "license": "MIT",
10 | "scripts": {
11 | "test": "gulp test",
12 | "start": "gulp serve",
13 | "build": "gulp build"
14 | },
15 | "author": {
16 | "name": "Hakim El Hattab",
17 | "email": "hakim.elhattab@gmail.com",
18 | "web": "https://hakim.se"
19 | },
20 | "repository": {
21 | "type": "git",
22 | "url": "git://github.com/hakimel/reveal.js.git"
23 | },
24 | "engines": {
25 | "node": ">=10.0.0"
26 | },
27 | "keywords": [
28 | "reveal",
29 | "slides",
30 | "presentation"
31 | ],
32 | "devDependencies": {
33 | "@babel/core": "^7.9.6",
34 | "@babel/preset-env": "^7.9.6",
35 | "@rollup/plugin-commonjs": "^11.1.0",
36 | "@rollup/plugin-node-resolve": "^7.1.3",
37 | "babel-eslint": "^10.1.0",
38 | "babel-plugin-transform-html-import-to-string": "0.0.1",
39 | "colors": "^1.4.0",
40 | "core-js": "^3.6.5",
41 | "glob": "^7.1.6",
42 | "gulp": "^4.0.2",
43 | "gulp-autoprefixer": "^7.0.1",
44 | "gulp-clean-css": "^4.2.0",
45 | "gulp-connect": "^5.7.0",
46 | "gulp-eslint": "^6.0.0",
47 | "gulp-header": "^2.0.9",
48 | "gulp-sass": "^4.0.2",
49 | "gulp-tap": "^2.0.0",
50 | "gulp-zip": "^5.0.1",
51 | "highlight.js": "^10.0.3",
52 | "marked": "^1.1.0",
53 | "node-qunit-puppeteer": "^2.0.1",
54 | "qunit": "^2.10.0",
55 | "rollup": "^2.10.4",
56 | "rollup-plugin-babel": "^4.4.0",
57 | "rollup-plugin-terser": "^5.3.0",
58 | "yargs": "^15.1.0"
59 | },
60 | "browserslist": "> 0.5%, IE 11, not dead",
61 | "eslintConfig": {
62 | "env": {
63 | "browser": true,
64 | "es6": true
65 | },
66 | "parser": "babel-eslint",
67 | "parserOptions": {
68 | "sourceType": "module",
69 | "allowImportExportEverywhere": true
70 | },
71 | "globals": {
72 | "module": false,
73 | "console": false,
74 | "unescape": false,
75 | "define": false,
76 | "exports": false
77 | },
78 | "rules": {
79 | "curly": 0,
80 | "eqeqeq": 2,
81 | "wrap-iife": [
82 | 2,
83 | "any"
84 | ],
85 | "no-use-before-define": [
86 | 2,
87 | {
88 | "functions": false
89 | }
90 | ],
91 | "new-cap": 2,
92 | "no-caller": 2,
93 | "dot-notation": 0,
94 | "no-eq-null": 2,
95 | "no-unused-expressions": 0
96 | }
97 | }
98 | }
99 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/plugin/highlight/monokai.css:
--------------------------------------------------------------------------------
1 | /*
2 | Monokai style - ported by Luigi Maselli - http://grigio.org
3 | */
4 |
5 | .hljs {
6 | display: block;
7 | overflow-x: auto;
8 | padding: 0.5em;
9 | background: #272822;
10 | color: #ddd;
11 | }
12 |
13 | .hljs-tag,
14 | .hljs-keyword,
15 | .hljs-selector-tag,
16 | .hljs-literal,
17 | .hljs-strong,
18 | .hljs-name {
19 | color: #f92672;
20 | }
21 |
22 | .hljs-code {
23 | color: #66d9ef;
24 | }
25 |
26 | .hljs-class .hljs-title {
27 | color: white;
28 | }
29 |
30 | .hljs-attribute,
31 | .hljs-symbol,
32 | .hljs-regexp,
33 | .hljs-link {
34 | color: #bf79db;
35 | }
36 |
37 | .hljs-string,
38 | .hljs-bullet,
39 | .hljs-subst,
40 | .hljs-title,
41 | .hljs-section,
42 | .hljs-emphasis,
43 | .hljs-type,
44 | .hljs-built_in,
45 | .hljs-builtin-name,
46 | .hljs-selector-attr,
47 | .hljs-selector-pseudo,
48 | .hljs-addition,
49 | .hljs-variable,
50 | .hljs-template-tag,
51 | .hljs-template-variable {
52 | color: #a6e22e;
53 | }
54 |
55 | .hljs-comment,
56 | .hljs-quote,
57 | .hljs-deletion,
58 | .hljs-meta {
59 | color: #75715e;
60 | }
61 |
62 | .hljs-keyword,
63 | .hljs-selector-tag,
64 | .hljs-literal,
65 | .hljs-doctag,
66 | .hljs-title,
67 | .hljs-section,
68 | .hljs-type,
69 | .hljs-selector-id {
70 | font-weight: bold;
71 | }
72 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/plugin/highlight/zenburn.css:
--------------------------------------------------------------------------------
1 | /*
2 |
3 | Zenburn style from voldmar.ru (c) Vladimir Epifanov
4 | based on dark.css by Ivan Sagalaev
5 |
6 | */
7 |
8 | .hljs {
9 | display: block;
10 | overflow-x: auto;
11 | padding: 0.5em;
12 | background: #3f3f3f;
13 | color: #dcdcdc;
14 | }
15 |
16 | .hljs-keyword,
17 | .hljs-selector-tag,
18 | .hljs-tag {
19 | color: #e3ceab;
20 | }
21 |
22 | .hljs-template-tag {
23 | color: #dcdcdc;
24 | }
25 |
26 | .hljs-number {
27 | color: #8cd0d3;
28 | }
29 |
30 | .hljs-variable,
31 | .hljs-template-variable,
32 | .hljs-attribute {
33 | color: #efdcbc;
34 | }
35 |
36 | .hljs-literal {
37 | color: #efefaf;
38 | }
39 |
40 | .hljs-subst {
41 | color: #8f8f8f;
42 | }
43 |
44 | .hljs-title,
45 | .hljs-name,
46 | .hljs-selector-id,
47 | .hljs-selector-class,
48 | .hljs-section,
49 | .hljs-type {
50 | color: #efef8f;
51 | }
52 |
53 | .hljs-symbol,
54 | .hljs-bullet,
55 | .hljs-link {
56 | color: #dca3a3;
57 | }
58 |
59 | .hljs-deletion,
60 | .hljs-string,
61 | .hljs-built_in,
62 | .hljs-builtin-name {
63 | color: #cc9393;
64 | }
65 |
66 | .hljs-addition,
67 | .hljs-comment,
68 | .hljs-quote,
69 | .hljs-meta {
70 | color: #7f9f7f;
71 | }
72 |
73 |
74 | .hljs-emphasis {
75 | font-style: italic;
76 | }
77 |
78 | .hljs-strong {
79 | font-weight: bold;
80 | }
81 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/plugin/math/math.esm.js:
--------------------------------------------------------------------------------
1 | function e(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function t(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function n(n){for(var r=1;r {
8 |
9 | // The reveal.js instance this plugin is attached to
10 | let deck;
11 |
12 | let defaultOptions = {
13 | messageStyle: 'none',
14 | tex2jax: {
15 | inlineMath: [ [ '$', '$' ], [ '\\(', '\\)' ] ],
16 | skipTags: [ 'script', 'noscript', 'style', 'textarea', 'pre' ]
17 | },
18 | skipStartupTypeset: true
19 | };
20 |
21 | function loadScript( url, callback ) {
22 |
23 | let head = document.querySelector( 'head' );
24 | let script = document.createElement( 'script' );
25 | script.type = 'text/javascript';
26 | script.src = url;
27 |
28 | // Wrapper for callback to make sure it only fires once
29 | let finish = () => {
30 | if( typeof callback === 'function' ) {
31 | callback.call();
32 | callback = null;
33 | }
34 | }
35 |
36 | script.onload = finish;
37 |
38 | // IE
39 | script.onreadystatechange = () => {
40 | if ( this.readyState === 'loaded' ) {
41 | finish();
42 | }
43 | }
44 |
45 | // Normal browsers
46 | head.appendChild( script );
47 |
48 | }
49 |
50 | return {
51 | id: 'math',
52 |
53 | init: function( reveal ) {
54 |
55 | deck = reveal;
56 |
57 | let revealOptions = deck.getConfig().math || {};
58 |
59 | let options = { ...defaultOptions, ...revealOptions };
60 | let mathjax = options.mathjax || 'https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.0/MathJax.js';
61 | let config = options.config || 'TeX-AMS_HTML-full';
62 | let url = mathjax + '?config=' + config;
63 |
64 | options.tex2jax = { ...defaultOptions.tex2jax, ...revealOptions.tex2jax };
65 |
66 | options.mathjax = options.config = null;
67 |
68 | loadScript( url, function() {
69 |
70 | MathJax.Hub.Config( options );
71 |
72 | // Typeset followed by an immediate reveal.js layout since
73 | // the typesetting process could affect slide height
74 | MathJax.Hub.Queue( [ 'Typeset', MathJax.Hub, deck.getRevealElement() ] );
75 | MathJax.Hub.Queue( deck.layout );
76 |
77 | // Reprocess equations in slides when they turn visible
78 | deck.on( 'slidechanged', function( event ) {
79 |
80 | MathJax.Hub.Queue( [ 'Typeset', MathJax.Hub, event.currentSlide ] );
81 |
82 | } );
83 |
84 | } );
85 |
86 | }
87 | }
88 |
89 | };
90 |
91 | export default Plugin;
92 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/plugin/search/search.esm.js:
--------------------------------------------------------------------------------
1 | /*!
2 | * Handles finding a text string anywhere in the slides and showing the next occurrence to the user
3 | * by navigatating to that slide and highlighting it.
4 | *
5 | * @author Jon Snyder , February 2013
6 | */
7 | export default function(){var e,t,n,l,i,o,r;function s(){(t=document.createElement("div")).classList.add("searchbox"),t.style.position="absolute",t.style.top="10px",t.style.right="10px",t.style.zIndex=10,t.innerHTML=' \n\t\t',(n=t.querySelector(".searchinput")).style.width="240px",n.style.fontSize="14px",n.style.padding="4px 6px",n.style.color="#000",n.style.background="#fff",n.style.borderRadius="2px",n.style.border="0",n.style.outline="0",n.style.boxShadow="0 2px 18px rgba(0, 0, 0, 0.2)",n.style["-webkit-appearance"]="none",e.getRevealElement().appendChild(t),n.addEventListener("keyup",(function(t){switch(t.keyCode){case 13:t.preventDefault(),function(){if(o){var t=n.value;""===t?(r&&r.remove(),l=null):(r=new c("slidecontent"),l=r.apply(t),i=0)}l&&(l.length&&l.length<=i&&(i=0),l.length>i&&(e.slide(l[i].h,l[i].v),i++))}(),o=!1;break;default:o=!0}}),!1),d()}function a(){t||s(),t.style.display="inline",n.focus(),n.select()}function d(){t||s(),t.style.display="none",r&&r.remove()}function c(t,n){var l=document.getElementById(t)||document.body,i=n||"EM",o=new RegExp("^(?:"+i+"|SCRIPT|FORM)$"),r=["#ff6","#a0ffff","#9f9","#f99","#f6f"],s=[],a=0,d="",c=[];this.setRegex=function(e){e=e.replace(/^[^\w]+|[^\w]+$/g,"").replace(/[^\w'-]+/g,"|"),d=new RegExp("("+e+")","i")},this.getRegex=function(){return d.toString().replace(/^\/\\b\(|\)\\b\/i$/g,"").replace(/\|/g," ")},this.hiliteWords=function(t){if(null!=t&&t&&d&&!o.test(t.nodeName)){if(t.hasChildNodes())for(var n=0;n, February 2013
7 | */return function(){var e,t,n,o,i,l,r;function s(){(t=document.createElement("div")).classList.add("searchbox"),t.style.position="absolute",t.style.top="10px",t.style.right="10px",t.style.zIndex=10,t.innerHTML=' \n\t\t',(n=t.querySelector(".searchinput")).style.width="240px",n.style.fontSize="14px",n.style.padding="4px 6px",n.style.color="#000",n.style.background="#fff",n.style.borderRadius="2px",n.style.border="0",n.style.outline="0",n.style.boxShadow="0 2px 18px rgba(0, 0, 0, 0.2)",n.style["-webkit-appearance"]="none",e.getRevealElement().appendChild(t),n.addEventListener("keyup",(function(t){switch(t.keyCode){case 13:t.preventDefault(),function(){if(l){var t=n.value;""===t?(r&&r.remove(),o=null):(r=new c("slidecontent"),o=r.apply(t),i=0)}o&&(o.length&&o.length<=i&&(i=0),o.length>i&&(e.slide(o[i].h,o[i].v),i++))}(),l=!1;break;default:l=!0}}),!1),d()}function a(){t||s(),t.style.display="inline",n.focus(),n.select()}function d(){t||s(),t.style.display="none",r&&r.remove()}function c(t,n){var o=document.getElementById(t)||document.body,i=n||"EM",l=new RegExp("^(?:"+i+"|SCRIPT|FORM)$"),r=["#ff6","#a0ffff","#9f9","#f99","#f6f"],s=[],a=0,d="",c=[];this.setRegex=function(e){e=e.replace(/^[^\w]+|[^\w]+$/g,"").replace(/[^\w'-]+/g,"|"),d=new RegExp("("+e+")","i")},this.getRegex=function(){return d.toString().replace(/^\/\\b\(|\)\\b\/i$/g,"").replace(/\|/g," ")},this.hiliteWords=function(t){if(null!=t&&t&&d&&!l.test(t.nodeName)){if(t.hasChildNodes())for(var n=0;nwindow.innerHeight-i&&window.scroll(d.x,d.y+(1-(window.innerHeight-n)/i)*(14/e)),owindow.innerWidth-t&&window.scroll(d.x+(1-(window.innerWidth-o)/t)*(14/e),d.y)}function y(){return{x:void 0!==window.scrollX?window.scrollX:window.pageXOffset,y:void 0!==window.scrollY?window.scrollY:window.pageYOffset}}return s&&(document.body.style.transition="transform 0.8s ease",document.body.style.OTransition="-o-transform 0.8s ease",document.body.style.msTransition="-ms-transform 0.8s ease",document.body.style.MozTransition="-moz-transform 0.8s ease",document.body.style.WebkitTransition="-webkit-transform 0.8s ease"),document.addEventListener("keyup",(function(o){1!==e&&27===o.keyCode&&t.out()})),document.addEventListener("mousemove",(function(t){1!==e&&(o=t.clientX,n=t.clientY)})),{to:function(o){if(1!==e)t.out();else{if(o.x=o.x||0,o.y=o.y||0,o.element){var n=o.element.getBoundingClientRect();o.x=n.left-20,o.y=n.top-20,o.width=n.width+40,o.height=n.height+40}void 0!==o.width&&void 0!==o.height&&(o.scale=Math.max(Math.min(window.innerWidth/o.width,window.innerHeight/o.height),1)),o.scale>1&&(o.x*=o.scale,o.y*=o.scale,r(o,o.scale),!1!==o.pan&&(i=setTimeout((function(){d=setInterval(m,1e3/60)}),800)))}},out:function(){clearTimeout(i),clearInterval(d),r({x:0,y:0},1),e=1},magnify:function(e){this.to(e)},reset:function(){this.out()},zoomLevel:function(){return e}}}();export default function(){return e}
5 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/plugin/zoom/zoom.js:
--------------------------------------------------------------------------------
1 | !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e=e||self).RevealZoom=t()}(this,(function(){"use strict";
2 | /*!
3 | * reveal.js Zoom plugin
4 | */var e={id:"zoom",init:function(e){e.getRevealElement().addEventListener("mousedown",(function(o){var n=/Linux/.test(window.navigator.platform)?"ctrl":"alt",i=(e.getConfig().zoomKey?e.getConfig().zoomKey:n)+"Key",d=e.getConfig().zoomLevel?e.getConfig().zoomLevel:2;o[i]&&!e.isOverview()&&(o.preventDefault(),t.to({x:o.clientX,y:o.clientY,scale:d,pan:!1}))}))}},t=function(){var e=1,o=0,n=0,i=-1,d=-1,s="WebkitTransform"in document.body.style||"MozTransform"in document.body.style||"msTransform"in document.body.style||"OTransform"in document.body.style||"transform"in document.body.style;function r(t,o){var n=y();if(t.width=t.width||1,t.height=t.height||1,t.x-=(window.innerWidth-t.width*o)/2,t.y-=(window.innerHeight-t.height*o)/2,s)if(1===o)document.body.style.transform="",document.body.style.OTransform="",document.body.style.msTransform="",document.body.style.MozTransform="",document.body.style.WebkitTransform="";else{var i=n.x+"px "+n.y+"px",d="translate("+-t.x+"px,"+-t.y+"px) scale("+o+")";document.body.style.transformOrigin=i,document.body.style.OTransformOrigin=i,document.body.style.msTransformOrigin=i,document.body.style.MozTransformOrigin=i,document.body.style.WebkitTransformOrigin=i,document.body.style.transform=d,document.body.style.OTransform=d,document.body.style.msTransform=d,document.body.style.MozTransform=d,document.body.style.WebkitTransform=d}else 1===o?(document.body.style.position="",document.body.style.left="",document.body.style.top="",document.body.style.width="",document.body.style.height="",document.body.style.zoom=""):(document.body.style.position="relative",document.body.style.left=-(n.x+t.x)/o+"px",document.body.style.top=-(n.y+t.y)/o+"px",document.body.style.width=100*o+"%",document.body.style.height=100*o+"%",document.body.style.zoom=o);e=o,document.documentElement.classList&&(1!==e?document.documentElement.classList.add("zoomed"):document.documentElement.classList.remove("zoomed"))}function m(){var t=.12*window.innerWidth,i=.12*window.innerHeight,d=y();nwindow.innerHeight-i&&window.scroll(d.x,d.y+(1-(window.innerHeight-n)/i)*(14/e)),owindow.innerWidth-t&&window.scroll(d.x+(1-(window.innerWidth-o)/t)*(14/e),d.y)}function y(){return{x:void 0!==window.scrollX?window.scrollX:window.pageXOffset,y:void 0!==window.scrollY?window.scrollY:window.pageYOffset}}return s&&(document.body.style.transition="transform 0.8s ease",document.body.style.OTransition="-o-transform 0.8s ease",document.body.style.msTransition="-ms-transform 0.8s ease",document.body.style.MozTransition="-moz-transform 0.8s ease",document.body.style.WebkitTransition="-webkit-transform 0.8s ease"),document.addEventListener("keyup",(function(o){1!==e&&27===o.keyCode&&t.out()})),document.addEventListener("mousemove",(function(t){1!==e&&(o=t.clientX,n=t.clientY)})),{to:function(o){if(1!==e)t.out();else{if(o.x=o.x||0,o.y=o.y||0,o.element){var n=o.element.getBoundingClientRect();o.x=n.left-20,o.y=n.top-20,o.width=n.width+40,o.height=n.height+40}void 0!==o.width&&void 0!==o.height&&(o.scale=Math.max(Math.min(window.innerWidth/o.width,window.innerHeight/o.height),1)),o.scale>1&&(o.x*=o.scale,o.y*=o.scale,r(o,o.scale),!1!==o.pan&&(i=setTimeout((function(){d=setInterval(m,1e3/60)}),800)))}},out:function(){clearTimeout(i),clearInterval(d),r({x:0,y:0},1),e=1},magnify:function(e){this.to(e)},reset:function(){this.out()},zoomLevel:function(){return e}}}();return function(){return e}}));
5 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/test/assets/external-script-a.js:
--------------------------------------------------------------------------------
1 | window.externalScriptSequence += 'A';
--------------------------------------------------------------------------------
/lectures/js/revealjs/test/assets/external-script-b.js:
--------------------------------------------------------------------------------
1 | window.externalScriptSequence += 'B';
--------------------------------------------------------------------------------
/lectures/js/revealjs/test/assets/external-script-c.js:
--------------------------------------------------------------------------------
1 | window.externalScriptSequence += 'C';
--------------------------------------------------------------------------------
/lectures/js/revealjs/test/assets/external-script-d.js:
--------------------------------------------------------------------------------
1 | window.externalScriptSequence += 'D';
--------------------------------------------------------------------------------
/lectures/js/revealjs/test/simple.md:
--------------------------------------------------------------------------------
1 | ## Slide 1.1
2 |
3 | ```js
4 | var a = 1;
5 | ```
6 |
7 |
8 | ## Slide 1.2
9 |
10 |
11 |
12 | ## Slide 2
13 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/test/test-dependencies-async.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | reveal.js - Test Async Dependencies
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
75 |
76 |
77 |
78 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/test/test-dependencies.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | reveal.js - Test Dependencies
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
49 |
50 |
51 |
52 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/test/test-grid-navigation.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | reveal.js - Test Grid
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
30 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
69 |
70 |
71 |
72 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/test/test-iframe-backgrounds.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | reveal.js - Test Iframe Backgrounds
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
96 |
97 |
98 |
99 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/test/test-iframes.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | reveal.js - Test Iframes
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
100 |
101 |
102 |
103 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/test/test-multiple-instances-es5.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | reveal.js - Test Iframes
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
83 |
84 |
85 |
86 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/test/test-multiple-instances.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | reveal.js - Test Iframes
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
96 |
101 |
102 |
103 |
104 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/test/test-pdf.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | reveal.js - Test PDF exports
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 | 1
25 |
26 |
27 |
28 |
39 |
40 |
41 |
42 | 3.1
43 |
44 | 4.1
45 | 4.2
46 | 4.3
47 |
48 |
49 |
50 |
57 |
58 |
59 | 3.3
60 |
61 | 3.3.1
62 | 3.3.2
63 | 3.3.3
64 |
65 |
66 |
67 |
68 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
90 |
91 |
92 |
93 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/test/test-plugins.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | reveal.js - Test Plugins
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
105 |
106 |
107 |
108 |
--------------------------------------------------------------------------------
/lectures/js/revealjs/test/test-state.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | reveal.js - Test State
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
134 |
135 |
136 |
137 |
--------------------------------------------------------------------------------