├── .github └── workflows │ └── Deploy.yml ├── .gitignore ├── README.md ├── courseworks ├── .vscode │ └── settings.json ├── exercise_lesson │ └── lesson1 │ │ └── lesson1.ipynb ├── week1 │ ├── Tinho_WHU │ │ ├── hw1.docx │ │ ├── hw1.md │ │ └── readme.md │ ├── XU,Chengzhen │ │ ├── Coursework 1 XU,Chengzhen.md │ │ ├── XCZ_1.pdf │ │ ├── lscpu.res │ │ ├── lsmem.res │ │ ├── number-of-failed-tests.txt │ │ └── versions.txt │ ├── XU_Shiqinrui │ │ ├── Assignment 1.md │ │ ├── latest-chage.txt │ │ ├── lscpu.res │ │ ├── lsmem.res │ │ ├── number-of-failed-tests.txt │ │ └── versions.txt │ ├── XuanzhaoGao │ │ ├── HW1.md │ │ ├── latest-change.txt │ │ ├── lscpu.res │ │ ├── lsmem.res │ │ └── versions.txt │ ├── ZhigaoXIE │ │ ├── Q1.md │ │ ├── latest-change.txt │ │ ├── lscpu.res │ │ ├── lsmem.res │ │ ├── number-of-failed-tests.txt │ │ └── versions.txt │ ├── yanyuduan │ │ ├── note.md │ │ └── week1_yanyuduan.pdf │ └── yushengzhao │ │ ├── hw1 │ │ ├── ans.org │ │ ├── ans.pdf │ │ ├── ans.tex │ │ ├── cpu.txt │ │ └── mem.txt │ │ ├── latest-change.txt │ │ ├── lscpu.res │ │ ├── lsmem.res │ │ ├── number-of-failed-tests.txt │ │ └── versions.txt ├── week10 │ ├── tianhaohu │ │ ├── flowchart.jpeg │ │ ├── hw10.ipynb │ │ └── hw10.md │ ├── xuanzhaogao │ │ └── hw10.ipynb │ └── yushengzhao │ │ ├── answer.org │ │ └── tensor_train.jpeg ├── week11 │ ├── tianhaohu │ │ ├── week11.ipynb │ │ └── week11.md │ └── yushengzhao │ │ ├── assignment11.jl │ │ ├── assignment11.jl.html │ │ └── last_deriv.pdf ├── week2 │ ├── Shiqinrui_Xu │ │ ├── 2D_brown_motion.jl │ │ └── result.png │ ├── Tinho_WHU │ │ ├── Brownian_Motion.jl │ │ ├── hw2_2_a.jl │ │ ├── hw2_revised │ │ │ ├── hw3_revised.ipynb │ │ │ └── week2_1_reviesed.md │ │ └── week2_1.md │ ├── XU,Chengzhen │ │ ├── Assignment 2.md │ │ └── repl_history.jl │ ├── Xuanzhao_Gao │ │ ├── 3x+1.ipynb │ │ ├── HW2.ipynb │ │ └── HW2.md │ ├── ZhigaoXIE │ │ ├── Q1.jl │ │ ├── Q1.md │ │ └── repl_history.jl │ ├── yanyu Duan │ │ ├── Q1andQ2.md │ │ ├── Q1andQ2yanyuduan.pdf │ │ ├── Q3yanyuduan.jl │ │ └── Week2_hw.md │ └── yanyuduan │ │ ├── repl_history.jl │ │ └── week2.md ├── week3 │ ├── ChengzhenXU │ │ └── Week3.md │ ├── TianhaoHu │ │ ├── hw3.ipynb │ │ └── hw_3.md │ ├── ZhigaoXIE │ │ ├── AS3.md │ │ ├── Q1.txt │ │ ├── Q1_revised.md │ │ └── Q3.jl │ ├── shiqinruixu │ │ └── week3.ipynb │ ├── xuanzhaogao │ │ ├── hw.md │ │ └── hw3.ipynb │ └── yushengzhao │ │ ├── ans.md │ │ ├── ans.org │ │ ├── brownian.jl │ │ └── period.jl ├── week4 │ ├── ChengzhenXU │ │ └── Week4.md │ ├── TianhaoHu │ │ ├── hw4.md │ │ └── hw_week4.ipynb │ ├── ZhigaoXIE │ │ ├── Q1.md │ │ └── code.jl │ ├── shiqinruixu │ │ └── week4.ipynb │ ├── xuanzhaogao │ │ └── hw4.ipynb │ ├── yanyu duan │ │ ├── Q1yanyuduan.md │ │ └── Q2yanyuduan.jl │ └── yushengzhao │ │ ├── gauss_jordan.jl │ │ ├── hw.org │ │ └── hw.tex ├── week5 │ ├── ChengzhenXU │ │ └── week5.md │ ├── TianhaoHu │ │ ├── hw5.md │ │ └── sparse_vector_mul.ipynb │ ├── ZhigaoXIE │ │ ├── Q1.jl │ │ ├── Q2.jl │ │ └── Q2_revised.jl │ ├── shiqinruixu │ │ └── week5.ipynb │ ├── xuanzhaogao │ │ └── hw5.ipynb │ ├── yuanyu Duan │ │ ├── Q1.jl │ │ └── Q2.jl │ └── yushengzhao │ │ ├── given_trisym.jl │ │ └── hw5.org ├── week6 │ ├── TianhaoHu │ │ └── hw6.ipynb │ ├── ZhigaoXIE │ │ ├── HW_FFTW.jl │ │ ├── wavelet-2.png │ │ └── wavelet.png │ ├── shiqinruixu │ │ ├── wavelet.png │ │ └── week6.ipynb │ ├── xuanzhaogao │ │ ├── hw6.ipynb │ │ └── wavelet.png │ └── yushengzhao │ │ ├── ans.org │ │ ├── csc.jl │ │ └── lanczos.jl ├── week7 │ ├── ChengzhenXU │ │ └── week7.md │ ├── ZhigaoXIE │ │ ├── HW7.jl │ │ └── unit_disk_embedding.png │ ├── shiqinruixu │ │ └── week7.ipynb │ ├── xuanzhaogao │ │ ├── HW7.pdf │ │ ├── hw7.jl │ │ ├── plot.py │ │ └── unit_disk_py.png │ └── yushengzhao │ │ ├── 7.fft.jl │ │ └── heatmap.png ├── week8 │ ├── ChengzhenXU │ │ └── week8.md │ ├── TianhaoHU │ │ └── hw8.ipynb │ ├── XuanzhaoGao │ │ └── hw8.ipynb │ ├── shiqinruixu │ │ └── week8.ipynb │ └── yushengzhao │ │ ├── make_plot.py │ │ ├── unit_disk_py.png │ │ └── unitdisk.jl └── week9 │ ├── ChengzhenXU │ ├── 1.png │ └── week9.md │ ├── shiqinruixu │ ├── digram.jpg │ ├── digram2.jpg │ └── week9.ipynb │ ├── tianhaohu │ ├── HW9.ipynb │ └── HW9.md │ ├── xuanzhaogao │ ├── hw_9_tensor.ipynb │ └── tensors.jpg │ └── yushengzhao │ ├── hw9.md │ └── hw9.org ├── lib ├── CUDATutorial │ ├── Manifest.toml │ ├── Project.toml │ ├── kernelprog.jl │ └── libraries.jl ├── CompressedSensingTutorial │ ├── .github │ │ └── workflows │ │ │ ├── CI.yml │ │ │ ├── CompatHelper.yml │ │ │ └── TagBot.yml │ ├── .gitignore │ ├── LICENSE │ ├── Project.toml │ ├── README.md │ ├── src │ │ ├── CompressedSensingTutorial.jl │ │ ├── compressed_sensing_2d.jl │ │ └── owlqn.jl │ └── test │ │ ├── compressed_sensing_2d.jl │ │ ├── owlqn.jl │ │ ├── runtests.jl │ │ └── waterfall.jpeg ├── KernelPCA │ ├── .github │ │ └── workflows │ │ │ ├── CI.yml │ │ │ ├── CompatHelper.yml │ │ │ └── TagBot.yml │ ├── .gitignore │ ├── LICENSE │ ├── Project.toml │ ├── README.md │ ├── project │ │ └── kernelf.jl │ ├── src │ │ ├── KernelPCA.jl │ │ ├── dataset.jl │ │ ├── kernels.jl │ │ └── kpca.jl │ └── test │ │ ├── kernels.jl │ │ ├── kpca.jl │ │ └── runtests.jl ├── LatticeGasCA │ ├── .github │ │ └── workflows │ │ │ ├── CI.yml │ │ │ ├── CompatHelper.yml │ │ │ └── TagBot.yml │ ├── .gitignore │ ├── LICENSE │ ├── Project.toml │ ├── README.md │ ├── docs │ │ ├── Manifest.toml │ │ ├── Project.toml │ │ ├── make.jl │ │ └── src │ │ │ └── index.md │ ├── project │ │ └── visualize.jl │ ├── src │ │ ├── LatticeGasCA.jl │ │ ├── cuda.jl │ │ └── hpp.jl │ └── test │ │ ├── cuda.jl │ │ ├── hpp.jl │ │ └── runtests.jl └── PlutoLecturing │ ├── .gitignore │ ├── LICENSE │ ├── Project.toml │ ├── README.md │ ├── src │ ├── PlutoLecturing.jl │ ├── functions.jl │ ├── trees.jl │ └── xbind.jl │ └── test │ └── runtests.jl ├── notebooks ├── 1.understanding-our-computing-devices.jl ├── 1.understanding-our-computing-devices.pdf ├── 10.inference.jl ├── 10.inference.pdf ├── 11.data-sparsity.jl ├── 11.data-sparsity.pdf ├── 12.cuda.jl ├── 12.cuda.pdf ├── 3.julia.jl ├── 3.julia.pdf ├── 4.linearequation.jl ├── 4.linearequation.pdf ├── 5.linear-least-square.jl ├── 5.linear-least-square.pdf ├── 6.sparse.jl ├── 6.sparse.pdf ├── 7.fft.jl ├── 7.fft.pdf ├── 8.optimization.jl ├── 8.optimization.pdf ├── 9.autodiff.jl ├── 9.autodiff.pdf ├── clib │ └── demo.c ├── garbage.jl └── images │ ├── chatgpt.png │ ├── correct_answer.png │ ├── float-format.png │ ├── hkust-gz.png │ ├── textbook.jpg │ ├── trafalgar-square.jpg │ ├── waterfall.jpeg │ └── zulip1.png └── website ├── .gitignore ├── 404.md ├── Manifest.toml ├── Project.toml ├── README.md ├── _assets ├── favicon.jpg ├── images │ ├── arch.png │ └── gnu.png └── msc2.jpg ├── _css ├── basic.css └── franklin.css ├── _ignore ├── 2017-12-14-factorgraph.md ├── 2017-12-14-slackapp.md ├── 2017-12-28-requirements.md ├── 2017-12-7-groupleader.md ├── 2018-01-01-measurement.md ├── 2018-01-02-rbmmps.md ├── 2018-01-31-qv.md ├── 2018-06-2-HamiltonianDo.md └── diff.md ├── _layout ├── foot.html ├── foot_highlight.html ├── foot_katex.html ├── head.html ├── head_highlight.html ├── head_katex.html ├── header.html ├── page_foot.html ├── sidebar.html ├── style.html └── tag.html ├── _libs ├── asciinema │ ├── asciinema-player.css │ └── asciinema-player.min.js ├── highlight │ ├── highlight.min.js │ └── styles │ │ ├── a11y-dark.min.css │ │ ├── a11y-light.min.css │ │ ├── agate.min.css │ │ ├── an-old-hope.min.css │ │ ├── androidstudio.min.css │ │ ├── arduino-light.min.css │ │ ├── arta.min.css │ │ ├── ascetic.min.css │ │ ├── atom-one-dark-reasonable.min.css │ │ ├── atom-one-dark.min.css │ │ ├── atom-one-light.min.css │ │ ├── base16 │ │ ├── 3024.min.css │ │ ├── apathy.min.css │ │ ├── apprentice.min.css │ │ ├── ashes.min.css │ │ ├── atelier-cave-light.min.css │ │ ├── atelier-cave.min.css │ │ ├── atelier-dune-light.min.css │ │ ├── atelier-dune.min.css │ │ ├── atelier-estuary-light.min.css │ │ ├── atelier-estuary.min.css │ │ ├── atelier-forest-light.min.css │ │ ├── atelier-forest.min.css │ │ ├── atelier-heath-light.min.css │ │ ├── atelier-heath.min.css │ │ ├── atelier-lakeside-light.min.css │ │ ├── atelier-lakeside.min.css │ │ ├── atelier-plateau-light.min.css │ │ ├── atelier-plateau.min.css │ │ ├── atelier-savanna-light.min.css │ │ ├── atelier-savanna.min.css │ │ ├── atelier-seaside-light.min.css │ │ ├── atelier-seaside.min.css │ │ ├── atelier-sulphurpool-light.min.css │ │ ├── atelier-sulphurpool.min.css │ │ ├── atlas.min.css │ │ ├── bespin.min.css │ │ ├── black-metal-bathory.min.css │ │ ├── black-metal-burzum.min.css │ │ ├── black-metal-dark-funeral.min.css │ │ ├── black-metal-gorgoroth.min.css │ │ ├── black-metal-immortal.min.css │ │ ├── black-metal-khold.min.css │ │ ├── black-metal-marduk.min.css │ │ ├── black-metal-mayhem.min.css │ │ ├── black-metal-nile.min.css │ │ ├── black-metal-venom.min.css │ │ ├── black-metal.min.css │ │ ├── brewer.min.css │ │ ├── bright.min.css │ │ ├── brogrammer.min.css │ │ ├── brush-trees-dark.min.css │ │ ├── brush-trees.min.css │ │ ├── chalk.min.css │ │ ├── circus.min.css │ │ ├── classic-dark.min.css │ │ ├── classic-light.min.css │ │ ├── codeschool.min.css │ │ ├── colors.min.css │ │ ├── cupcake.min.css │ │ ├── cupertino.min.css │ │ ├── danqing.min.css │ │ ├── darcula.min.css │ │ ├── dark-violet.min.css │ │ ├── darkmoss.min.css │ │ ├── darktooth.min.css │ │ ├── decaf.min.css │ │ ├── default-dark.min.css │ │ ├── default-light.min.css │ │ ├── dirtysea.min.css │ │ ├── dracula.min.css │ │ ├── edge-dark.min.css │ │ ├── edge-light.min.css │ │ ├── eighties.min.css │ │ ├── embers.min.css │ │ ├── equilibrium-dark.min.css │ │ ├── equilibrium-gray-dark.min.css │ │ ├── equilibrium-gray-light.min.css │ │ ├── equilibrium-light.min.css │ │ ├── espresso.min.css │ │ ├── eva-dim.min.css │ │ ├── eva.min.css │ │ ├── flat.min.css │ │ ├── framer.min.css │ │ ├── fruit-soda.min.css │ │ ├── gigavolt.min.css │ │ ├── github.min.css │ │ ├── google-dark.min.css │ │ ├── google-light.min.css │ │ ├── grayscale-dark.min.css │ │ ├── grayscale-light.min.css │ │ ├── green-screen.min.css │ │ ├── gruvbox-dark-hard.min.css │ │ ├── gruvbox-dark-medium.min.css │ │ ├── gruvbox-dark-pale.min.css │ │ ├── gruvbox-dark-soft.min.css │ │ ├── gruvbox-light-hard.min.css │ │ ├── gruvbox-light-medium.min.css │ │ ├── gruvbox-light-soft.min.css │ │ ├── hardcore.min.css │ │ ├── harmonic16-dark.min.css │ │ ├── harmonic16-light.min.css │ │ ├── heetch-dark.min.css │ │ ├── heetch-light.min.css │ │ ├── helios.min.css │ │ ├── hopscotch.min.css │ │ ├── horizon-dark.min.css │ │ ├── horizon-light.min.css │ │ ├── humanoid-dark.min.css │ │ ├── humanoid-light.min.css │ │ ├── ia-dark.min.css │ │ ├── ia-light.min.css │ │ ├── icy-dark.min.css │ │ ├── ir-black.min.css │ │ ├── isotope.min.css │ │ ├── kimber.min.css │ │ ├── london-tube.min.css │ │ ├── macintosh.min.css │ │ ├── marrakesh.min.css │ │ ├── materia.min.css │ │ ├── material-darker.min.css │ │ ├── material-lighter.min.css │ │ ├── material-palenight.min.css │ │ ├── material-vivid.min.css │ │ ├── material.min.css │ │ ├── mellow-purple.min.css │ │ ├── mexico-light.min.css │ │ ├── mocha.min.css │ │ ├── monokai.min.css │ │ ├── nebula.min.css │ │ ├── nord.min.css │ │ ├── nova.min.css │ │ ├── ocean.min.css │ │ ├── oceanicnext.min.css │ │ ├── one-light.min.css │ │ ├── onedark.min.css │ │ ├── outrun-dark.min.css │ │ ├── papercolor-dark.min.css │ │ ├── papercolor-light.min.css │ │ ├── paraiso.min.css │ │ ├── pasque.min.css │ │ ├── phd.min.css │ │ ├── pico.min.css │ │ ├── pop.min.css │ │ ├── porple.min.css │ │ ├── qualia.min.css │ │ ├── railscasts.min.css │ │ ├── rebecca.min.css │ │ ├── ros-pine-dawn.min.css │ │ ├── ros-pine-moon.min.css │ │ ├── ros-pine.min.css │ │ ├── sagelight.min.css │ │ ├── sandcastle.min.css │ │ ├── seti-ui.min.css │ │ ├── shapeshifter.min.css │ │ ├── silk-dark.min.css │ │ ├── silk-light.min.css │ │ ├── snazzy.min.css │ │ ├── solar-flare-light.min.css │ │ ├── solar-flare.min.css │ │ ├── solarized-dark.min.css │ │ ├── solarized-light.min.css │ │ ├── spacemacs.min.css │ │ ├── summercamp.min.css │ │ ├── summerfruit-dark.min.css │ │ ├── summerfruit-light.min.css │ │ ├── synth-midnight-terminal-dark.min.css │ │ ├── synth-midnight-terminal-light.min.css │ │ ├── tango.min.css │ │ ├── tender.min.css │ │ ├── tomorrow-night.min.css │ │ ├── tomorrow.min.css │ │ ├── twilight.min.css │ │ ├── unikitty-dark.min.css │ │ ├── unikitty-light.min.css │ │ ├── vulcan.min.css │ │ ├── windows-10-light.min.css │ │ ├── windows-10.min.css │ │ ├── windows-95-light.min.css │ │ ├── windows-95.min.css │ │ ├── windows-high-contrast-light.min.css │ │ ├── windows-high-contrast.min.css │ │ ├── windows-nt-light.min.css │ │ ├── windows-nt.min.css │ │ ├── woodland.min.css │ │ ├── xcode-dusk.min.css │ │ └── zenburn.min.css │ │ ├── brown-paper.min.css │ │ ├── brown-papersq.png │ │ ├── codepen-embed.min.css │ │ ├── color-brewer.min.css │ │ ├── dark.min.css │ │ ├── default.min.css │ │ ├── devibeans.min.css │ │ ├── docco.min.css │ │ ├── far.min.css │ │ ├── felipec.min.css │ │ ├── foundation.min.css │ │ ├── github-dark-dimmed.min.css │ │ ├── github-dark.min.css │ │ ├── github.min.css │ │ ├── gml.min.css │ │ ├── googlecode.min.css │ │ ├── gradient-dark.min.css │ │ ├── gradient-light.min.css │ │ ├── grayscale.min.css │ │ ├── hybrid.min.css │ │ ├── idea.min.css │ │ ├── intellij-light.min.css │ │ ├── ir-black.min.css │ │ ├── isbl-editor-dark.min.css │ │ ├── isbl-editor-light.min.css │ │ ├── kimbie-dark.min.css │ │ ├── kimbie-light.min.css │ │ ├── lightfair.min.css │ │ ├── lioshi.min.css │ │ ├── magula.min.css │ │ ├── mono-blue.min.css │ │ ├── monokai-sublime.min.css │ │ ├── monokai.min.css │ │ ├── night-owl.min.css │ │ ├── nnfx-dark.min.css │ │ ├── nnfx-light.min.css │ │ ├── nord.min.css │ │ ├── obsidian.min.css │ │ ├── paraiso-dark.min.css │ │ ├── paraiso-light.min.css │ │ ├── pojoaque.jpg │ │ ├── pojoaque.min.css │ │ ├── purebasic.min.css │ │ ├── qtcreator-dark.min.css │ │ ├── qtcreator-light.min.css │ │ ├── rainbow.min.css │ │ ├── routeros.min.css │ │ ├── school-book.min.css │ │ ├── shades-of-purple.min.css │ │ ├── srcery.min.css │ │ ├── stackoverflow-dark.min.css │ │ ├── stackoverflow-light.min.css │ │ ├── sunburst.min.css │ │ ├── tokyo-night-dark.min.css │ │ ├── tokyo-night-light.min.css │ │ ├── tomorrow-night-blue.min.css │ │ ├── tomorrow-night-bright.min.css │ │ ├── vs.min.css │ │ ├── vs2015.min.css │ │ ├── xcode.min.css │ │ └── xt256.min.css └── katex │ ├── contrib │ └── auto-render.min.js │ ├── fonts │ ├── KaTeX_AMS-Regular.ttf │ ├── KaTeX_AMS-Regular.woff │ ├── KaTeX_AMS-Regular.woff2 │ ├── KaTeX_Caligraphic-Bold.ttf │ ├── KaTeX_Caligraphic-Bold.woff │ ├── KaTeX_Caligraphic-Bold.woff2 │ ├── KaTeX_Caligraphic-Regular.ttf │ ├── KaTeX_Caligraphic-Regular.woff │ ├── KaTeX_Caligraphic-Regular.woff2 │ ├── KaTeX_Fraktur-Bold.ttf │ ├── KaTeX_Fraktur-Bold.woff │ ├── KaTeX_Fraktur-Bold.woff2 │ ├── KaTeX_Fraktur-Regular.ttf │ ├── KaTeX_Fraktur-Regular.woff │ ├── KaTeX_Fraktur-Regular.woff2 │ ├── KaTeX_Main-Bold.ttf │ ├── KaTeX_Main-Bold.woff │ ├── KaTeX_Main-Bold.woff2 │ ├── KaTeX_Main-BoldItalic.ttf │ ├── KaTeX_Main-BoldItalic.woff │ ├── KaTeX_Main-BoldItalic.woff2 │ ├── KaTeX_Main-Italic.ttf │ ├── KaTeX_Main-Italic.woff │ ├── KaTeX_Main-Italic.woff2 │ ├── KaTeX_Main-Regular.ttf │ ├── KaTeX_Main-Regular.woff │ ├── KaTeX_Main-Regular.woff2 │ ├── KaTeX_Math-BoldItalic.ttf │ ├── KaTeX_Math-BoldItalic.woff │ ├── KaTeX_Math-BoldItalic.woff2 │ ├── KaTeX_Math-Italic.ttf │ ├── KaTeX_Math-Italic.woff │ ├── KaTeX_Math-Italic.woff2 │ ├── KaTeX_SansSerif-Bold.ttf │ ├── KaTeX_SansSerif-Bold.woff │ ├── KaTeX_SansSerif-Bold.woff2 │ ├── KaTeX_SansSerif-Italic.ttf │ ├── KaTeX_SansSerif-Italic.woff │ ├── KaTeX_SansSerif-Italic.woff2 │ ├── KaTeX_SansSerif-Regular.ttf │ ├── KaTeX_SansSerif-Regular.woff │ ├── KaTeX_SansSerif-Regular.woff2 │ ├── KaTeX_Script-Regular.ttf │ ├── KaTeX_Script-Regular.woff │ ├── KaTeX_Script-Regular.woff2 │ ├── KaTeX_Size1-Regular.ttf │ ├── KaTeX_Size1-Regular.woff │ ├── KaTeX_Size1-Regular.woff2 │ ├── KaTeX_Size2-Regular.ttf │ ├── KaTeX_Size2-Regular.woff │ ├── KaTeX_Size2-Regular.woff2 │ ├── KaTeX_Size3-Regular.ttf │ ├── KaTeX_Size3-Regular.woff │ ├── KaTeX_Size3-Regular.woff2 │ ├── KaTeX_Size4-Regular.ttf │ ├── KaTeX_Size4-Regular.woff │ ├── KaTeX_Size4-Regular.woff2 │ ├── KaTeX_Typewriter-Regular.ttf │ ├── KaTeX_Typewriter-Regular.woff │ └── KaTeX_Typewriter-Regular.woff2 │ ├── katex.min.css │ └── katex.min.js ├── _rss ├── head.xml └── item.xml ├── config.md ├── index.md ├── msc.md ├── msc ├── 1.devices.md ├── 2.1.opensource.md ├── 2.2.cheatsheets.md └── 3.julia.md ├── package-lock.json └── utils.jl /.gitignore: -------------------------------------------------------------------------------- 1 | __pycache__/ 2 | *.aux 3 | *.log 4 | *.out 5 | *.synctex.gz 6 | *.synctex(busy) 7 | *.synctex 8 | .DS_Store 9 | *~ 10 | *.svg 11 | *.bbl 12 | *.blg 13 | *.fdb_latexmk 14 | *.fls 15 | *.out 16 | *.dvi 17 | *.log 18 | *.aux 19 | _*.tex 20 | _*.bib 21 | _*.pdf 22 | *.auxlock 23 | *.dpth 24 | *.md5 25 | unweighted/images/gadgets/ 26 | unweighted/images/*.tex 27 | *.thm 28 | *.so 29 | website/notebooks/*.html 30 | .vscode -------------------------------------------------------------------------------- /courseworks/.vscode/settings.json: -------------------------------------------------------------------------------- 1 | {} -------------------------------------------------------------------------------- /courseworks/week1/Tinho_WHU/hw1.docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/courseworks/week1/Tinho_WHU/hw1.docx -------------------------------------------------------------------------------- /courseworks/week1/Tinho_WHU/readme.md: -------------------------------------------------------------------------------- 1 | Sorry for the late. There is no difference between .docx & .md in their contents. But .docx highlight some information of CPU which may be important. 2 | -------------------------------------------------------------------------------- /courseworks/week1/XU,Chengzhen/XCZ_1.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/courseworks/week1/XU,Chengzhen/XCZ_1.pdf -------------------------------------------------------------------------------- /courseworks/week1/XU,Chengzhen/lsmem.res: -------------------------------------------------------------------------------- 1 | RANGE SIZE STATE REMOVABLE BLOCK 2 | 0x0000000000000000-0x00000000bfffffff 3G online yes 0-23 3 | 0x0000000100000000-0x000000013fffffff 1G online yes 32-39 4 | 5 | Memory block size: 128M 6 | Total online memory: 4G 7 | Total offline memory: 0B 8 | -------------------------------------------------------------------------------- /courseworks/week1/XU,Chengzhen/number-of-failed-tests.txt: -------------------------------------------------------------------------------- 1 | Test Summary: | Pass Total Time 2 | OMEinsum.jl | 600 600 1m32.8s 3 | Testing OMEinsum tests passed 4 | 5 | 6 | -------------------------------------------------------------------------------- /courseworks/week1/XU,Chengzhen/versions.txt: -------------------------------------------------------------------------------- 1 | v0.1.0 2 | v0.2.0 3 | v0.3.0 4 | v0.3.1 5 | v0.3.2 6 | v0.3.3 7 | v0.4.0 8 | v0.4.1 9 | v0.4.2 10 | v0.4.3 11 | v0.4.4 12 | v0.4.5 13 | v0.4.6 14 | v0.4.7 15 | v0.4.8 16 | v0.5.0 17 | v0.6.0 18 | v0.6.1 19 | v0.6.10 20 | v0.6.11 21 | v0.6.12 22 | v0.6.13 23 | v0.6.2 24 | v0.6.3 25 | v0.6.4 26 | v0.6.5 27 | v0.6.6 28 | v0.6.7 29 | v0.6.8 30 | v0.6.9 31 | v0.7.0 32 | v0.7.1 33 | v0.7.2 34 | -------------------------------------------------------------------------------- /courseworks/week1/XU_Shiqinrui/latest-chage.txt: -------------------------------------------------------------------------------- 1 | diff --git a/src/interfaces.jl b/src/interfaces.jl 2 | index cab204f..806e565 100644 3 | --- a/src/interfaces.jl 4 | +++ b/src/interfaces.jl 5 | @@ -157,7 +157,7 @@ function _ein_macro(ex; einsum=:einsum) 6 | righttuples = [ Tuple(indexin(ind, rightind)) for (A, ind) in rightpairs ] 7 | rightnames = [ esc(A) for (A, ind) in rightpairs ] 8 | 9 | - return :( $(esc(Z)) = $einsum( EinCode(($(righttuples...),), $lefttuple), ($(rightnames...),)) ) 10 | + return :( $(esc(Z)) = $einsum( StaticEinCode(($(righttuples...),), $lefttuple), ($(rightnames...),)) ) 11 | end 12 | 13 | @doc raw" 14 | -------------------------------------------------------------------------------- /courseworks/week1/XU_Shiqinrui/lsmem.res: -------------------------------------------------------------------------------- 1 | RANGE SIZE STATE REMOVABLE BLOCK 2 | 0x0000000000000000-0x00000000bfffffff 3G online yes 0-23 3 | 0x0000000100000000-0x000000013fffffff 1G online yes 32-39 4 | 5 | Memory block size: 128M 6 | Total online memory: 4G 7 | Total offline memory: 0B 8 | -------------------------------------------------------------------------------- /courseworks/week1/XU_Shiqinrui/versions.txt: -------------------------------------------------------------------------------- 1 | v0.1.0 2 | v0.2.0 3 | v0.3.0 4 | v0.3.1 5 | v0.3.2 6 | v0.3.3 7 | v0.4.0 8 | v0.4.1 9 | v0.4.2 10 | v0.4.3 11 | v0.4.4 12 | v0.4.5 13 | v0.4.6 14 | v0.4.7 15 | v0.4.8 16 | v0.5.0 17 | v0.6.0 18 | v0.6.1 19 | v0.6.10 20 | v0.6.11 21 | v0.6.12 22 | v0.6.13 23 | v0.6.2 24 | v0.6.3 25 | v0.6.4 26 | v0.6.5 27 | v0.6.6 28 | v0.6.7 29 | v0.6.8 30 | v0.6.9 31 | v0.7.0 32 | v0.7.1 33 | v0.7.2 34 | -------------------------------------------------------------------------------- /courseworks/week1/XuanzhaoGao/latest-change.txt: -------------------------------------------------------------------------------- 1 | diff --git a/src/interfaces.jl b/src/interfaces.jl 2 | index 806e565..1d2303d 100644 3 | --- a/src/interfaces.jl 4 | +++ b/src/interfaces.jl 5 | @@ -157,7 +157,7 @@ function _ein_macro(ex; einsum=:einsum) 6 | righttuples = [ Tuple(indexin(ind, rightind)) for (A, ind) in rightpairs ] 7 | rightnames = [ esc(A) for (A, ind) in rightpairs ] 8 | 9 | - return :( $(esc(Z)) = $einsum( StaticEinCode(($(righttuples...),), $lefttuple), ($(rightnames...),)) ) 10 | + return :( $(esc(Z)) = $einsum( StaticEinCode{Int, ($(righttuples...),), $lefttuple}(), ($(rightnames...),)) ) 11 | end 12 | 13 | @doc raw" 14 | -------------------------------------------------------------------------------- /courseworks/week1/XuanzhaoGao/lsmem.res: -------------------------------------------------------------------------------- 1 | RANGE SIZE STATE REMOVABLE BLOCK 2 | 0x0000000000000000-0x00000000bfffffff 3G online yes 0-23 3 | 0x0000000100000000-0x000000013fffffff 1G online yes 32-39 4 | 5 | Memory block size: 128M 6 | Total online memory: 4G 7 | Total offline memory: 0B 8 | -------------------------------------------------------------------------------- /courseworks/week1/XuanzhaoGao/versions.txt: -------------------------------------------------------------------------------- 1 | v0.1.0 2 | v0.2.0 3 | v0.3.0 4 | v0.3.1 5 | v0.3.2 6 | v0.3.3 7 | v0.4.0 8 | v0.4.1 9 | v0.4.2 10 | v0.4.3 11 | v0.4.4 12 | v0.4.5 13 | v0.4.6 14 | v0.4.7 15 | v0.4.8 16 | v0.5.0 17 | v0.6.0 18 | v0.6.1 19 | v0.6.10 20 | v0.6.11 21 | v0.6.12 22 | v0.6.13 23 | v0.6.2 24 | v0.6.3 25 | v0.6.4 26 | v0.6.5 27 | v0.6.6 28 | v0.6.7 29 | v0.6.8 30 | v0.6.9 31 | v0.7.0 32 | v0.7.1 33 | v0.7.2 34 | -------------------------------------------------------------------------------- /courseworks/week1/ZhigaoXIE/latest-change.txt: -------------------------------------------------------------------------------- 1 | diff --git a/courseworks/week1/ZhigaoXIE/hello b/courseworks/week1/ZhigaoXIE/hello 2 | new file mode 100644 3 | index 0000000..4effa19 4 | --- /dev/null 5 | +++ b/courseworks/week1/ZhigaoXIE/hello 6 | @@ -0,0 +1 @@ 7 | +hello! 8 | -------------------------------------------------------------------------------- /courseworks/week1/ZhigaoXIE/lsmem.res: -------------------------------------------------------------------------------- 1 | RANGE SIZE STATE REMOVABLE BLOCK 2 | 0x0000000000000000-0x00000000bfffffff 3G online yes 0-23 3 | 0x0000000100000000-0x000000013fffffff 1G online yes 32-39 4 | 5 | Memory block size: 128M 6 | Total online memory: 4G 7 | Total offline memory: 0B 8 | -------------------------------------------------------------------------------- /courseworks/week1/ZhigaoXIE/number-of-failed-tests.txt: -------------------------------------------------------------------------------- 1 | Test Summary: | Pass Total Time 2 | OMEinsum.jl | 600 600 2m44.1s 3 | Testing OMEinsum tests passed 4 | 5 | -------------------------------------------------------------------------------- /courseworks/week1/ZhigaoXIE/versions.txt: -------------------------------------------------------------------------------- 1 | v0.1.0 2 | v0.2.0 3 | v0.3.0 4 | v0.3.1 5 | v0.3.2 6 | v0.3.3 7 | v0.4.0 8 | v0.4.1 9 | v0.4.2 10 | v0.4.3 11 | v0.4.4 12 | v0.4.5 13 | v0.4.6 14 | v0.4.7 15 | v0.4.8 16 | v0.5.0 17 | v0.6.0 18 | v0.6.1 19 | v0.6.10 20 | v0.6.11 21 | v0.6.12 22 | v0.6.13 23 | v0.6.2 24 | v0.6.3 25 | v0.6.4 26 | v0.6.5 27 | v0.6.6 28 | v0.6.7 29 | v0.6.8 30 | v0.6.9 31 | v0.7.0 32 | v0.7.1 33 | v0.7.2 34 | -------------------------------------------------------------------------------- /courseworks/week1/yanyuduan/note.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/courseworks/week1/yanyuduan/note.md -------------------------------------------------------------------------------- /courseworks/week1/yanyuduan/week1_yanyuduan.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/courseworks/week1/yanyuduan/week1_yanyuduan.pdf -------------------------------------------------------------------------------- /courseworks/week1/yushengzhao/hw1/ans.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/courseworks/week1/yushengzhao/hw1/ans.pdf -------------------------------------------------------------------------------- /courseworks/week1/yushengzhao/hw1/mem.txt: -------------------------------------------------------------------------------- 1 | RANGE SIZE STATE REMOVABLE 2 | BLOCK 3 | 0x0000000000000000-0x00000000bfffffff 3G online yes 4 | 0-2 5 | 0x0000000100000000-0x000000103fffffff 61G online yes 6 | 4-64 7 | 8 | Memory block size: 1G 9 | Total online memory: 64G 10 | Total offline memory: 0B 11 | -------------------------------------------------------------------------------- /courseworks/week1/yushengzhao/latest-change.txt: -------------------------------------------------------------------------------- 1 | diff --git a/src/interfaces.jl b/src/interfaces.jl 2 | index 806e565..1d2303d 100644 3 | --- a/src/interfaces.jl 4 | +++ b/src/interfaces.jl 5 | @@ -157,7 +157,7 @@ function _ein_macro(ex; einsum=:einsum) 6 | righttuples = [ Tuple(indexin(ind, rightind)) for (A, ind) in rightpairs ] 7 | rightnames = [ esc(A) for (A, ind) in rightpairs ] 8 | 9 | - return :( $(esc(Z)) = $einsum( StaticEinCode(($(righttuples...),), $lefttuple), ($(rightnames...),)) ) 10 | + return :( $(esc(Z)) = $einsum( StaticEinCode{Int, ($(righttuples...),), $lefttuple}(), ($(rightnames...),)) ) 11 | end 12 | 13 | @doc raw" 14 | -------------------------------------------------------------------------------- /courseworks/week1/yushengzhao/lsmem.res: -------------------------------------------------------------------------------- 1 | RANGE SIZE STATE REMOVABLE BLOCK 2 | 0x0000000000000000-0x00000000bfffffff 3G online yes 0-23 3 | 0x0000000100000000-0x000000013fffffff 1G online yes 32-39 4 | 5 | Memory block size: 128M 6 | Total online memory: 4G 7 | Total offline memory: 0B 8 | -------------------------------------------------------------------------------- /courseworks/week1/yushengzhao/versions.txt: -------------------------------------------------------------------------------- 1 | v0.1.0 2 | v0.2.0 3 | v0.3.0 4 | v0.3.1 5 | v0.3.2 6 | v0.3.3 7 | v0.4.0 8 | v0.4.1 9 | v0.4.2 10 | v0.4.3 11 | v0.4.4 12 | v0.4.5 13 | v0.4.6 14 | v0.4.7 15 | v0.4.8 16 | v0.5.0 17 | v0.6.0 18 | v0.6.1 19 | v0.6.10 20 | v0.6.11 21 | v0.6.12 22 | v0.6.13 23 | v0.6.2 24 | v0.6.3 25 | v0.6.4 26 | v0.6.5 27 | v0.6.6 28 | v0.6.7 29 | v0.6.8 30 | v0.6.9 31 | v0.7.0 32 | v0.7.1 33 | v0.7.2 34 | -------------------------------------------------------------------------------- /courseworks/week10/tianhaohu/flowchart.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/courseworks/week10/tianhaohu/flowchart.jpeg -------------------------------------------------------------------------------- /courseworks/week10/tianhaohu/hw10.md: -------------------------------------------------------------------------------- 1 | # 1 2 | 3 | einsum of outer product 4 | 5 | i,j -> ij 6 | 7 | # 2 8 | 9 | The einsum notation "jk,kl,lm,mj ->" can be understood as two einsum as, 10 | 11 | jk,kl,lm,mj -> jj 12 | 13 | jj -> 14 | 15 | The first one is the production of four matrix ,with the first index of the first matrix equaling to the second index of the last matrix. The result of first einsum is therefore a square matrix. 16 | 17 | The second einsum is the trace of the first matrix. 18 | 19 | So "jk,kl,lm,mj ->" is the trace of the mutiplication of four matrix. 20 | 21 | # 3 22 | 23 | ## (1) 24 | 25 | I will submit with a picture 26 | 27 | ## (2) 28 | 29 | Same as above. The different steps will be highlighted with different color. 30 | 31 | The contraction cpmlexity can be estimated for two different steps, 32 | 33 | 1. for 7 red circles, there will be $7\times n^5$. 34 | 35 | 2. for 6 red circles, there will be $6\times n^6$. Since the contraction includes two dimensions, there will be one order higher comlexity. 36 | 37 | ## (3) 38 | 39 | Refer to hw9.ipynb 40 | -------------------------------------------------------------------------------- /courseworks/week10/yushengzhao/answer.org: -------------------------------------------------------------------------------- 1 | #+TITLE: HW 10 2 | #+AUTHOR: Yusheng Zhao 3 | 4 | * P1 5 | #+begin_src julia 6 | ein"i,j->ij" (A,B) 7 | #+end_src 8 | 9 | * P2 10 | It stands for $Tr(A*B*C*D)$ where $A,B,C,D$ are rank 2 tensors. 11 | 12 | * P3 13 | 1) See the part of graph in black ink 14 | 2) The contraction order is to first contract away the 7 vertical legs. Each 15 | costs $\mathcal{O}(n^{5})$. Following that, we constract away the 6 pairs of 16 | parallel legs, each costs $\mathcal{O}(n^{6})$. In total, we require 17 | $7*n^{5} + 6 * n^{6}$ which is $\mathcal{O}(n^{6})$ 18 | 3) See code below 19 | #+begin_src julia :exports both 20 | using OMEinsum 21 | eincode = ein"abc,cde,efg,ghi,ijk,klm,mno,pbq,qdr,rfs,sht,tju,ulv,vnw->apow" 22 | optimize_code(eincode, uniformsize(eincode, 2), TreeSA()) 23 | #+end_src 24 | 25 | -------------------------------------------------------------------------------- /courseworks/week10/yushengzhao/tensor_train.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/courseworks/week10/yushengzhao/tensor_train.jpeg -------------------------------------------------------------------------------- /courseworks/week11/tianhaohu/week11.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/courseworks/week11/tianhaohu/week11.ipynb -------------------------------------------------------------------------------- /courseworks/week11/tianhaohu/week11.md: -------------------------------------------------------------------------------- 1 | # 1 2 | 3 | Notice that $||Ax-b||_2 = \sqrt{(Ax-b)^T(Ax-b)}$ 4 | 5 | $$ 6 | \frac{\partial L}{\partial x} 7 | \\= \frac{\partial L}{\partial ||Ax-b||_2}\,\frac{\partial ||Ax-b||_2}{\partial Ax-b}\,\frac{\partial (Ax-b)}{\partial x} 8 | \\= 1 \times \frac{1}{2||Ax-b||_2}\times 2(Ax-b)^T \times A 9 | \\= \frac{(Ax-b)^TA}{||Ax-b||_2} 10 | $$ 11 | 12 | # 2 13 | 14 | The video tells the condition when the compressed sensing can work or not. 15 | 16 | 1. The first condition is incoherence. The condition is constraining the measurement matrix $C$ is incoherent with respect to $\Psi$, the basis. Or in other words, $C$ cannot be too parallel to $\Psi$. Sampling should be random instead of focusing on some columns of $\Psi$. 17 | 18 | 2. Denoting the sparsity of the signal after Fourier transforamtion by $K$, and number of measurements by $P$, there should be constraints as, 19 | 20 | $$ 21 | P \propto O(K\log(\frac{n}{K})) 22 | $$ 23 | 24 | Finally it should be noted that though the compressed sensing seems to reduce the space for storing pictures or something else, solving the optimization problem stated in the class for $x$ is in no way inexpensive. So compressed sensing may be used when measuring full resolution of the image is **really really expensive** or using it can **literally save lives** as the example of MRI of infants. 25 | -------------------------------------------------------------------------------- /courseworks/week11/yushengzhao/last_deriv.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/courseworks/week11/yushengzhao/last_deriv.pdf -------------------------------------------------------------------------------- /courseworks/week2/Shiqinrui_Xu/2D_brown_motion.jl: -------------------------------------------------------------------------------- 1 | using Random, Plots 2 | 3 | function simulate_brownian_motion_2d(n_steps) 4 | # Set initial position to the origin 5 | pos = [0.0, 0.0] 6 | 7 | # Initialize an array to store the particle trajectory 8 | traj = zeros(n_steps+1, 2) 9 | traj[1, :] = pos 10 | 11 | # Set the standard deviation of the step size 12 | step_size = 0.1 13 | 14 | # Loop over the specified number of steps 15 | for i in 1:n_steps 16 | # Generate a random step in x and y directions 17 | dx, dy = step_size * randn(2) 18 | 19 | # Update the position 20 | pos[1] += dx 21 | pos[2] += dy 22 | 23 | # Store the new position in the trajectory array 24 | traj[i+1, :] = pos 25 | end 26 | 27 | return traj 28 | end 29 | 30 | # Simulate Brownian motion for 10000 steps 31 | traj = simulate_brownian_motion_2d(10000) 32 | 33 | # Plot the trajectory 34 | plot(traj[:, 1], traj[:, 2], xlabel="X", ylabel="Y", title="2D Brownian Motion", legend=false) 35 | 36 | # Save the plot as a PNG file 37 | savefig("result.png") -------------------------------------------------------------------------------- /courseworks/week2/Shiqinrui_Xu/result.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/courseworks/week2/Shiqinrui_Xu/result.png -------------------------------------------------------------------------------- /courseworks/week2/Tinho_WHU/Brownian_Motion.jl: -------------------------------------------------------------------------------- 1 | using BenchmarkTools 2 | using Plots 3 | 4 | function simulate_brownian_motion(n::Int64) 5 | x = 0.0 6 | y = 0.0 7 | x_positions = [x] 8 | y_positions = [y] 9 | 10 | for i in 1:n 11 | dx = randn() 12 | dy = randn() 13 | x += dx 14 | y += dy 15 | push!(x_positions, x) 16 | push!(y_positions, y) 17 | end 18 | 19 | return x_positions, y_positions 20 | end 21 | 22 | n_steps = 100 23 | x_positions, y_positions = simulate_brownian_motion(n_steps) 24 | 25 | plot(x_positions, y_positions, xlabel="x", ylabel="y", legend=false,title="2D simulation of Brownian Motion") 26 | 27 | @benchmark simulate_brownian_motion($n_steps) -------------------------------------------------------------------------------- /courseworks/week2/Tinho_WHU/hw2_revised/week2_1_reviesed.md: -------------------------------------------------------------------------------- 1 | | | is concrete | is primitive | is abstract | is bits type | is mutable | 2 | | -------------------------- | ----------- | ------------ | ----------- | ------------ |:---------- | 3 | | ComplexF64 | 1 | 0 | 0 | 1 | 0 | 4 | | Complex{AbstractFloat} | 1 | 0 | 0 | 0 | 0 | 5 | | Complex{<:AbstractFloat} | 0 | 0 | 0 | 0 | 0 | 6 | | AbstractFloat | 0 | 0 | 1 | 0 | 0 | 7 | | Union{Float64, ComplexF64} | 0 | 0 | 0 | 0 | 0 | 8 | | Int32 | 1 | 1 | 0 | 1 | 0 | 9 | | Matrix{Float32} | 1 | 0 | 0 | 0 | 1 | 10 | | Base.RefValue | 0 | 0 | 0 | 0 | 1 | 11 | 12 | 1 for yes, 0 for no 13 | -------------------------------------------------------------------------------- /courseworks/week2/Tinho_WHU/week2_1.md: -------------------------------------------------------------------------------- 1 | | | is concrete | is primitive | is abstract | is bits type | is mutable | 2 | | -------------------------- | ----------- | ------------ | ----------- | ------------ |:---------- | 3 | | ComplexF64 | 1 | 0 | 0 | 1 | 1 | 4 | | Complex{AbstractFloat} | 1 | 0 | 0 | 0 | 1 | 5 | | Complex{<:AbstractFloat} | 0 | 0 | 0 | 0 | 0 | 6 | | AbstractFloat | 0 | 0 | 1 | 0 | 0 | 7 | | Union{Float64, ComplexF64} | 0 | 0 | 0 | 0 | 0 | 8 | | Int32 | 1 | 1 | 0 | 1 | 1 | 9 | | Matrix{Float32} | 1 | 0 | 0 | 0 | 1 | 10 | | Base.RefValue | 0 | 0 | 0 | 0 | 0 | 11 | 12 | 1 for yes, 0 for no 13 | -------------------------------------------------------------------------------- /courseworks/week2/XU,Chengzhen/Assignment 2.md: -------------------------------------------------------------------------------- 1 | # 1. Fill the following form 2 | 3 | 4 | ||is concrete|is primitive|is abstract|is bits type|is mutable| 5 | |--|--|--|--|--|--| 6 | |ComplexF64 |$\checkmark$|||$\checkmark$ || 7 | |Complex{AbstractFloat} |$\checkmark$||||| 8 | |Complex{<:AbstractFloat} | ||||| 9 | |AbstractFloat |||$\checkmark$ ||| 10 | |Union{Float64, ComplexF64} |||||| 11 | |Int32 |$\checkmark$|$\checkmark$ ||$\checkmark$ ||| 12 | |Matrix{Float32} | $\checkmark$ ||||$\checkmark$ | 13 | |Base.RefValue | ||||$\checkmark$ | 14 | 15 | 16 | 2. (a) repl_history.jl 17 | 18 | -------------------------------------------------------------------------------- /courseworks/week2/Xuanzhao_Gao/HW2.md: -------------------------------------------------------------------------------- 1 | #Homework2 2 | 3 | Xuanzhao Gao 4 | 5 | ## Q1 6 | 7 | |type of |is concrete|is primitive |is abstract |is bits type |is mutable| 8 | | :----: | :----: | :----: | :----: | :----: | :----: | 9 | |ComplexF64| true | false | false | true | false | 10 | |Complex{AbstractFloat}| true | false | false | false | false | 11 | |Complex{<:AbstractFloat}| false | false | false | false | false | 12 | |AbstractFloat| false | false | true | false | false | 13 | |Union{Float64, ComplexF64}| false | false | false | false | false | 14 | |Int32| true | true | false | true | false | 15 | |Matrix{Float32}| true | false | false | false | true | 16 | |Base.RefValue| false | false | false | false | true | 17 | 18 | -------------------------------------------------------------------------------- /courseworks/week2/ZhigaoXIE/Q1.jl: -------------------------------------------------------------------------------- 1 | using Printf 2 | 3 | types = [ 4 | ComplexF64, 5 | Complex{AbstractFloat}, 6 | Complex{<:AbstractFloat}, 7 | AbstractFloat, 8 | Union{Float64, ComplexF64}, 9 | Int32, 10 | Matrix{Float32}, 11 | Base.RefValue 12 | ] 13 | 14 | println("| Type | Concrete | Primitive | Abstract | Bits type | Mutable |") 15 | println("|------|----------|-----------|----------|-----------|---------|") 16 | 17 | for T in types 18 | concrete = isconcretetype(T) 19 | primitive = isprimitivetype(T) 20 | abstract = isabstracttype(T) 21 | bits_type = isbitstype(T) 22 | mutable = ismutabletype(T) 23 | 24 | @printf("| %-24s| %-8s | %-9s | %-8s | %-9s | %-7s |\n", string(T), concrete, primitive, abstract, bits_type, mutable) 25 | end 26 | 27 | -------------------------------------------------------------------------------- /courseworks/week2/ZhigaoXIE/Q1.md: -------------------------------------------------------------------------------- 1 | | Type | Concrete | Primitive | Abstract | Bits type | Mutable | 2 | |------|----------|-----------|----------|-----------|---------| 3 | | ComplexF64 | true | false | false | true | false | 4 | | Complex{AbstractFloat} | true | false | false | false | false | 5 | | Complex{<:AbstractFloat}| false | false | false | false | false | 6 | | AbstractFloat | false | false | true | false | false | 7 | | Union{Float64, ComplexF64}| false | false | false | false | false | 8 | | Int32 | true | true | false | true | false | 9 | | Matrix{Float32} | true | false | false | false | true | 10 | | Base.RefValue | false | false | false | false | true | 11 | -------------------------------------------------------------------------------- /courseworks/week2/yanyu Duan/Q1andQ2.md: -------------------------------------------------------------------------------- 1 | Question 1: 2 | Answer 1: From the definition, we can know the related condition number is 3 | $$κ(a/b) = \lim_{\epsilon → 0} max{ \frac{|(a/b) * ((\epsilon a/a)-(\epsilon b / b))|} { |\epsilon(a/b)|} }$$ 4 | If ‘a’ is a constant, define f(b) = a/b, then we have 5 | $$κ(a/b) = max{ \frac{|(a/b) * (-(\epsilon b / b))|} { |-a(εb) / b²|} } = 1$$ 6 | So when ‘b’ is constant, the relative condition number of the division operation is 1. 7 | Question 2: 8 | Answer 2: 9 | ill=conditioned: (a), (d) 10 | well-conditioned: (b), (c) 11 | -------------------------------------------------------------------------------- /courseworks/week2/yanyu Duan/Q1andQ2yanyuduan.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/courseworks/week2/yanyu Duan/Q1andQ2yanyuduan.pdf -------------------------------------------------------------------------------- /courseworks/week2/yanyu Duan/Q3yanyuduan.jl: -------------------------------------------------------------------------------- 1 | using LinearAlgebra 2 | 3 | function gauss_jordan(A_in) 4 | A = copy(A_in) 5 | n = size(A,1) 6 | B = Matrix{Float64}(I, n, n) 7 | for i = 1:n 8 | for j = 1:n 9 | if j != i 10 | c_ji = A[j, i] / A[i, i] 11 | for k = 1 : i 12 | B[j, k] -= B[i, k] * c_ji 13 | end 14 | for k = i : n 15 | A[j, k] -= A[i, k] * c_ji 16 | end 17 | end 18 | end 19 | end 20 | 21 | for i = 1:n 22 | for j in 1:n 23 | B[i, j] = B[i, j] / A[i, i] 24 | end 25 | end 26 | return B 27 | end 28 | 29 | #gauss_jordan (generic function with 1 method) 30 | 31 | 32 | A_example = [1. 2 2; 4 4 2; 4 6 4] 33 | B = gauss_jordan(A_example) 34 | 35 | B * Matrix(A_example) 36 | 37 | 38 | using Test 39 | @testset "Gauss Jordan" begin 40 | n = 10 41 | A = randn(n, n) 42 | @test gauss_jordan(A) * A ≈ Matrix{Float64}(I, n, n) 43 | end 44 | 45 | #= 46 | 47 | Test Summary: | Pass Total Time 48 | Gauss Jordan | 1 1 0.7s 49 | 50 | =# -------------------------------------------------------------------------------- /courseworks/week2/yanyu Duan/Week2_hw.md: -------------------------------------------------------------------------------- 1 | ## Fill the following form 2 | | | is concrete | is primitive | is abstract | is bits | is mutable | 3 | |----------------------------|-------------|--------------|-------------|---------|------------| 4 | | ComplexF64 | T | F | F | T | F | 5 | | Complex{AbstractFloat} | T | F | F | F | F | 6 | | Complex{<:AbstractFloat} | F | F | F | F | F | 7 | | AbstractFloat | F | F | T | F | F | 8 | | Union{Float64, ComplexF64} | F | F | F | F | F | 9 | | Int32 | T | T | F | T | F | 10 | | Matrix{Float32} | T | F | F | F | T | 11 | | Base.RefValue | F | F | F | F | T | 12 | 13 | T means true and F means false. 14 | -------------------------------------------------------------------------------- /courseworks/week2/yanyuduan/week2.md: -------------------------------------------------------------------------------- 1 | ## Fill the following form 2 | | | is concrete | is primitive | is abstract | is bits | is mutable | 3 | |----------------------------|-------------|--------------|-------------|---------|------------| 4 | | ComplexF64 | T | F | F | T | T | 5 | | Complex{AbstractFloat} | T | F | F | F | T | 6 | | Complex{<:AbstractFloat} | F | F | F | F | F | 7 | | AbstractFloat | F | F | T | F | F | 8 | | Union{Float64, ComplexF64} | F | F | F | F | F | 9 | | Int32 | T | T | F | T | T | 10 | | Matrix{Float32} | T | F | F | F | T | 11 | | Base.RefValue | F | F | F | F | F | 12 | 13 | T means true and F means false. -------------------------------------------------------------------------------- /courseworks/week3/TianhaoHu/hw_3.md: -------------------------------------------------------------------------------- 1 | # 1 2 | 3 | $\Delta y_{rel} = \frac{a/(b+\epsilon)-a/b}{a/b}=\frac{\frac{1}{b+\epsilon}-\frac{1}{b}}{\frac{1}{b}}=\frac{-\epsilon}{b+\epsilon} 4 | $ 5 | 6 | $\Delta x_{rel}=\frac{\epsilon}{b}$ 7 | 8 | $\frac{\Delta y_{rel}}{\Delta _{rel}}=\frac{1}{1+\frac{\epsilon}{b}} $ 9 | 10 | $\lim_{\epsilon \to 0} \frac{\Delta y_{rel}}{\Delta _{rel}} =1$ for any b given 11 | 12 | So the condition number of division operation is 1 13 | 14 | # 2 15 | 16 | (a) ill=conditioned 17 | 18 | (b) well-conditioned 19 | 20 | (c) well-conditioned 21 | 22 | (d) well-conditioned 23 | 24 | # 3 25 | -------------------------------------------------------------------------------- /courseworks/week3/ZhigaoXIE/Q1.txt: -------------------------------------------------------------------------------- 1 | using LinearAlgebra 2 | 3 | a = 5.0 4 | b = 3.0 5 | 6 | cond(a/b) = 1.0 7 | -------------------------------------------------------------------------------- /courseworks/week3/ZhigaoXIE/Q1_revised.md: -------------------------------------------------------------------------------- 1 | 2 | As the definition, the related condition number is: 3 | $$κ(a/b) = \lim_{\epsilon → 0} max{ \frac{|(a/b) * ((\epsilon a/a)-(\epsilon b / b))|} { |\epsilon(a/b)|} }$$ 4 | 5 | If 'a' is constant, let f(b) = a/b 6 | $$κ(a/b) = max{ \frac{|(a/b) * (-(\epsilon b / b))|} { |-a(εb) / b²|} } = 1$$ 7 | 8 | So as when 'b' is constant. 9 | 10 | The relative condition number of the division operation is 1. 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /courseworks/week3/ZhigaoXIE/Q3.jl: -------------------------------------------------------------------------------- 1 | using LinearAlgebra 2 | using Test 3 | 4 | function gauss_jordan_inverse(A::Matrix{Float64}) 5 | n = size(A, 1) 6 | I = LinearAlgebra.I(n) 7 | aug = [A I] 8 | 9 | # Perform row operations to get A on the left side 10 | for i in 1:n 11 | # Swap rows if necessary 12 | if aug[i,i] == 0 13 | for j in (i+1):n 14 | if aug[j,i] != 0 15 | aug[[i,j],:] = aug[[j,i],:] 16 | break 17 | end 18 | end 19 | end 20 | 21 | # Divide row i by the pivot to make it 1 22 | pivot = aug[i,i] 23 | if pivot != 1 24 | aug[i,:] /= pivot 25 | end 26 | 27 | # Subtract a multiple of row i from all other rows to make their entries 0 28 | for j in 1:n 29 | if j != i 30 | factor = aug[j,i] 31 | aug[j,:] -= factor * aug[i,:] 32 | end 33 | end 34 | end 35 | # The inverse of A is on the right side of the augmented matrix 36 | A_inv = aug[:, (n+1):end] 37 | 38 | return A_inv 39 | end 40 | 41 | #gauss_jordan_inverse (generic function with 1 method) 42 | @testset "Gauss-Jordan inverse" begin 43 | n = 10 44 | A = randn(n, n) 45 | @test gauss_jordan_inverse(A) * A ≈ Matrix{Float64}(I, n, n) 46 | end 47 | 48 | 49 | -------------------------------------------------------------------------------- /courseworks/week3/xuanzhaogao/hw.md: -------------------------------------------------------------------------------- 1 | # Assignments 2 | 1. Get the relative condition number of division operation $a/b$. 3 | 4 | 2. Classify each of the following matrices as well-conditioned or ill-conditioned: 5 | ```math 6 | (a). ~~\left(\begin{matrix}10^{10} & 0\\ 0 & 10^{-10}\end{matrix}\right) 7 | ``` 8 | ```math 9 | (b). ~~\left(\begin{matrix}10^{10} & 0\\ 0 & 10^{10}\end{matrix}\right) 10 | ``` 11 | ```math 12 | (c). ~~\left(\begin{matrix}10^{-10} & 0\\ 0 & 10^{-10}\end{matrix}\right) 13 | ``` 14 | ```math 15 | (d). ~~\left(\begin{matrix}1 & 2\\ 2 & 4\end{matrix}\right) 16 | ``` 17 | 3. Implement the Gauss-Jordan elimination algorithm to compute matrix inverse. In the following example, we first create an augmented matrix $(A | I)$. Then we apply the Gauss-Jordan elimination matrices on the left. The final result is stored in the augmented matrix as $(I, A^{-1})$. 18 | ![](https://user-images.githubusercontent.com/6257240/222182865-c2a1aa28-946a-4acb-8df8-f5d7da93c3ee.png) 19 | 20 | Task: Please implement a function `gauss_jordan` that computes the inverse for a matrix at any size. Please also include the following test in your submission. 21 | ```julia 22 | @testset "Gauss Jordan" begin 23 | n = 10 24 | A = randn(n, n) 25 | @test gauss_jordan(A) * A ≈ Matrix{Float64}(I, n, n) 26 | end -------------------------------------------------------------------------------- /courseworks/week3/yushengzhao/period.jl: -------------------------------------------------------------------------------- 1 | ### A Pluto.jl notebook ### 2 | # v0.19.19 3 | 4 | using Markdown 5 | using InteractiveUtils 6 | 7 | # ╔═╡ a653e170-b753-11ed-0e5c-5f5fef2e5fee 8 | 9 | 10 | # ╔═╡ Cell order: 11 | # ╠═a653e170-b753-11ed-0e5c-5f5fef2e5fee 12 | -------------------------------------------------------------------------------- /courseworks/week4/TianhaoHu/hw4.md: -------------------------------------------------------------------------------- 1 | # 1. Review 2 | 3 | Q1 4 | 5 | 3 Householder transformations are required 6 | 7 | Q2 8 | 9 |  $v=[1,1,1,1]$ 10 | 11 | $|| v || = 2$ 12 | 13 | $u=[1;1;1;1]-2\times[1;0;0;0]=[-1;1;1;1] $ 14 | 15 | $u = \frac{u}{||u||}=\frac{u}{2}$ 16 | 17 | $H1 = I - 2\times u \times u^T$ 18 | 19 | $H1 \cdot v = [2;0;0;0]$ 20 | 21 | Q3 22 | 23 | The second householder transfomation only affect the element below the diagnol, so it should still be $[2;0;0;0]$ 24 | 25 | Q4 26 | 27 | 6 Givens transformations are required. 28 | 29 | # 2. Coding 30 | 31 | I write the code based on the version as shown in the class. The major change is, 32 | 33 | 1. Givens rotation do not start from the last row,but the first and second row, since elements in lower suddiaganol is zero 34 | 35 | 2. Givens rotation only acts on the first three columns instead of all columns,since elements in upper subdiagnol is zero 36 | 37 | While the modification of H in each iteration is not changed. 38 | 39 | The FLOPS can be computed as followed, 40 | 41 | $compute_A = 3 \times 6 \times n \approx 18n$ 42 | 43 | $compute_H \approx \sum_{k=1}^{n} 6\times k^2 = (2n+1)(n+1)n = 2n^3+3n^2 + n$ 44 | 45 | $FLOPS = compute_A + compute_H \approx 2n^3+ 3n^2 + 19n$ 46 | -------------------------------------------------------------------------------- /courseworks/week4/ZhigaoXIE/Q1.md: -------------------------------------------------------------------------------- 1 | 2 | (1) 3 Householder transformations. Because min(m-1, n) Householder transformations is needed for a m $\time$ n matrix. 3 | 4 | (2) [2; 0; 0; 0] 5 | 6 | (3) [2; 0; 0; 0] 7 | 8 | (4) 6 Givens rotations. 9 | -------------------------------------------------------------------------------- /courseworks/week4/ZhigaoXIE/code.jl: -------------------------------------------------------------------------------- 1 | using LinearAlgebra 2 | using Test 3 | 4 | function givens_rotation(a, b) 5 | if abs(b) < 1e-15 6 | c = copysign(1.0, a) 7 | s = 0.0 8 | else 9 | r = hypot(a, b) 10 | c = a / r 11 | s = b / r 12 | end 13 | return c, s 14 | end 15 | 16 | function symmetric_triangular_qr(T) 17 | m, n = size(T) 18 | Q = Matrix{Float64}(I, m, m) 19 | R = copy(T) 20 | 21 | for j = 1:n 22 | for i = m:-1:(j + 1) 23 | c, s = givens_rotation(R[i - 1, j], R[i, j]) 24 | 25 | # Update R 26 | R[i - 1:i, j:n] = [c s; -s c] * R[i - 1:i, j:n] 27 | 28 | # Update Q 29 | Q[:, i - 1:i] = Q[:, i - 1:i] * [c -s; s c] 30 | end 31 | end 32 | 33 | return Q, R 34 | end 35 | 36 | 37 | # Test 38 | using Random 39 | 40 | function rand_A(n) 41 | A = Matrix(Tridiagonal(rand(n - 1), rand(n), rand(n - 1))) 42 | return A 43 | end 44 | 45 | 46 | using Test 47 | 48 | @testset "Givens Rotation" begin 49 | for i in 1:100 50 | n = rand(1:100) 51 | A = rand_A(n) 52 | Q, R = symmetric_triangular_qr(A) 53 | @test Q * R ≈ A 54 | end 55 | end 56 | -------------------------------------------------------------------------------- /courseworks/week4/yanyu duan/Q1yanyuduan.md: -------------------------------------------------------------------------------- 1 | 1.There are four householder transformations required. 2 | 3 | 2.After transformation, the first column *A* of will be (2,0,0,0). 4 | 5 | 3.The second transformation will not be affected by the first column. 6 | 7 | 4.Six times of Givens rotations would be required. 8 | -------------------------------------------------------------------------------- /courseworks/week4/yushengzhao/gauss_jordan.jl: -------------------------------------------------------------------------------- 1 | using LinearAlgebra, Test, BenchmarkTools 2 | 3 | 4 | function gauss_jordan(M::AbstractMatrix{T}) where T <: Number 5 | m,n = size(M) 6 | @assert m == n 7 | MI = hcat(M,Matrix{eltype(M)}(I,m,m)) 8 | return _gauss_jordan_helper!(MI) 9 | end 10 | 11 | function _gauss_jordan_helper!(MI_partial::AbstractMatrix{T}) where T <: Number 12 | m,n = size(MI_partial) 13 | fct = 0.0 14 | if n == m 15 | return MI_partial 16 | else 17 | cur_idx = 2 * m - n + 1 18 | fct = MI_partial[cur_idx,1] 19 | 20 | @inbounds for j in 1:n 21 | MI_partial[cur_idx,j] /= fct 22 | end 23 | 24 | @inbounds for i in 1:m 25 | if i != cur_idx 26 | fct = MI_partial[i,1] 27 | @inbounds for j in 1:n 28 | MI_partial[i,j] -= fct * MI_partial[cur_idx,j] 29 | end 30 | end 31 | end 32 | return _gauss_jordan_helper!(view(MI_partial,:,2:n)) 33 | end 34 | 35 | end 36 | 37 | @testset "Gauss Jordan" begin 38 | n = 10 39 | A = randn(n, n) 40 | @test gauss_jordan(A) * A ≈ Matrix{Float64}(I, n, n) 41 | end 42 | 43 | # begin 44 | # n = 10 45 | # A = randn(n, n) 46 | # @benchmark gauss_jordan(A) 47 | # @benchmark inv(A) 48 | # end 49 | -------------------------------------------------------------------------------- /courseworks/week5/TianhaoHu/hw5.md: -------------------------------------------------------------------------------- 1 | Q1: 2 | 3 | The sparse matrix can be written in the dense form, 4 | 5 | $$ 6 | \begin{array}{c} 7 | \cdot& 0.942&0.848 & \cdot& \cdot\\ 8 | & & & & \\ 9 | 0.799 & \cdot& \cdot & \cdot & \cdot \\ 10 | \cdot& \cdot& 0.164 & \cdot & \cdot\\ 11 | \cdot & \cdot & \cdot & 0.637 & \cdot 12 | \end{array} \cdot 13 | $$ 14 | 15 | rowindices:[1 1 3 4 5 ] 16 | 17 | colindices:[2 3 1 3 4] 18 | 19 | data: [0.799 0.942 0.848 0.164 0.637] 20 | 21 | 22 | -------------------------------------------------------------------------------- /courseworks/week5/ZhigaoXIE/Q1.jl: -------------------------------------------------------------------------------- 1 | using SparseArrays 2 | 3 | using LinearAlgebra 4 | begin 5 | sp = sparse([3, 1, 1, 4, 5],[1, 2, 3, 3, 5],[0.799, 0.942, 0.848, 0.164, 0.637]) 6 | 7 | println(Matrix(sp)) 8 | print("sp.colptr = ") 9 | println( sp.colptr) 10 | print("sp.rowval = ") 11 | println(sp.rowval) 12 | print("sp.nzval = ") 13 | println(sp.nzval) 14 | end 15 | -------------------------------------------------------------------------------- /courseworks/week5/ZhigaoXIE/Q2.jl: -------------------------------------------------------------------------------- 1 | # Q2.jl 2 | 3 | using SparseArrays, Test 4 | using LinearAlgebra 5 | 6 | function my_spv(A::SparseMatrixCSC{T1}, x::AbstractVector{T2}) where {T1, T2} 7 | T = promote_type(T1, T2) 8 | @assert size(A, 2) == length(x) 9 | y = spzeros(T, size(A, 1)) 10 | for j in 1:size(A, 2) 11 | for k in nzrange(A, j) 12 | y[A.rowval[k]] += A.nzval[k] * x[j] 13 | end 14 | end 15 | return y 16 | end 17 | 18 | @testset "sparse matrix - vector multiplication" begin 19 | for k = 1:100 20 | m, n = rand(1:100, 2) 21 | density = rand() 22 | sp = sprand(m, n, density) 23 | v = randn(n) 24 | @test Matrix(sp) * v ≈ my_spv(sp, v) 25 | end 26 | end 27 | 28 | -------------------------------------------------------------------------------- /courseworks/week5/ZhigaoXIE/Q2_revised.jl: -------------------------------------------------------------------------------- 1 | # Q2.jl 2 | 3 | using SparseArrays, Test 4 | using LinearAlgebra 5 | 6 | function my_spv(A::SparseMatrixCSC{T1}, x::AbstractVector{T2}) where {T1, T2} 7 | T = promote_type(T1, T2) 8 | @assert size(A, 2) == length(x) 9 | y = zeros(T, size(A,1)) 10 | for j in 1:size(A, 2) 11 | for k in nzrange(A, j) 12 | y[A.rowval[k]] += A.nzval[k] * x[j] 13 | end 14 | end 15 | return y 16 | end 17 | 18 | @testset "sparse matrix - vector multiplication" begin 19 | for k = 1:100 20 | m, n = rand(1:100, 2) 21 | density = rand() 22 | sp = sprand(m, n, density) 23 | v = randn(n) 24 | @test Matrix(sp) * v ≈ my_spv(sp, v) 25 | end 26 | end 27 | 28 | -------------------------------------------------------------------------------- /courseworks/week5/yuanyu Duan/Q1.jl: -------------------------------------------------------------------------------- 1 | using SparseArrays 2 | 3 | using LinearAlgebra 4 | begin 5 | sp = sparse([3, 1, 1, 4, 5],[1, 2, 3, 3, 5],[0.799, 0.942, 0.848, 0.164, 0.637]) 6 | 7 | println(Matrix(sp)) 8 | print("sp.colptr = ") 9 | println( sp.colptr) 10 | print("sp.rowval = ") 11 | println(sp.rowval) 12 | print("sp.nzval = ") 13 | println(sp.nzval) 14 | end 15 | 16 | #julia "e:\HKUSTgz\courses\Julia\week5\tempCodeRunnerFile.jl" 17 | #[0.0 0.942 0.848 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.799 0.0 0.0 0.0 0.0; 0.0 0.0 0.164 0.0 0.0; 0.0 0.0 0.0 0.0 0.637] 18 | #sp.colptr = [1, 2, 3, 5, 5, 6] 19 | #sp.rowval = [3, 1, 1, 4, 5] 20 | #sp.nzval = [0.799, 0.942, 0.848, 0.164, 0.637] 21 | -------------------------------------------------------------------------------- /courseworks/week5/yuanyu Duan/Q2.jl: -------------------------------------------------------------------------------- 1 | using SparseArrays, Test 2 | 3 | function my_spv(sp::SparseMatrixCSC{T1},v::AbstractVector{T2}) where {T1,T2} 4 | T = promote_type(T1,T2) 5 | @assert size(sp,2) == size(v,1) 6 | rowval, colval, nzval = Int[], Int[], T[] 7 | @inbounds for j in 1:size(sp,2) 8 | @inbounds for i in nzrange(sp,j) 9 | push!(rowval,sp.rowval[i]) 10 | push!(colval,1) 11 | push!(nzval,sp.nzval[i]*v[j]) 12 | end 13 | end 14 | return sparse(rowval,colval,nzval,size(sp,1),size(v,2)) 15 | end 16 | 17 | @testset "sparse matrix - vector multiplication" begin 18 | for k = 1:100 19 | m, n = rand(1:100, 2) 20 | density = rand() 21 | sp = sprand(m, n, density) 22 | v = randn(n) 23 | @test Matrix(sp) * v ≈ my_spv(sp, v) 24 | end 25 | 26 | #Test Summary: | Pass Total Time 27 | #sparse matrix - vector multiplication | 100 100 0.8s 28 | 29 | -------------------------------------------------------------------------------- /courseworks/week6/ZhigaoXIE/wavelet-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/courseworks/week6/ZhigaoXIE/wavelet-2.png -------------------------------------------------------------------------------- /courseworks/week6/ZhigaoXIE/wavelet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/courseworks/week6/ZhigaoXIE/wavelet.png -------------------------------------------------------------------------------- /courseworks/week6/shiqinruixu/wavelet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/courseworks/week6/shiqinruixu/wavelet.png -------------------------------------------------------------------------------- /courseworks/week6/xuanzhaogao/wavelet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/courseworks/week6/xuanzhaogao/wavelet.png -------------------------------------------------------------------------------- /courseworks/week6/yushengzhao/ans.org: -------------------------------------------------------------------------------- 1 | #+TITLE: Homework 5 2 | #+AUTHOR: Yusheng Zhao 3 | 4 | * Problem 1 5 | #+begin_src julia :exports both :results output 6 | begin 7 | using SparseArrays 8 | colindices = [1; 2; 3; 3; 4] 9 | rowindices = [3; 1; 1; 4; 5] 10 | m,n = 5,5 11 | data = [0.799; 0.942; 0.848; 0.164; 0.637] 12 | sp = sparse(rowindices, colindices, data,m,n); 13 | @assert sp.colptr == [1; 2; 3; 5; 6; 6] 14 | @assert sp.rowval == [3; 1; 1; 4; 5] 15 | @assert sp.nzval == [0.799; 0.942; 0.848; 0.164; 0.637] 16 | @assert sp.m == 5 17 | @assert sp.n == 5 18 | println("Yeah, everything works!") 19 | end 20 | #+end_src 21 | 22 | #+RESULTS: 23 | : Yeah, everything works! 24 | 25 | 26 | * Problem 2 27 | ** Section A 28 | - See [[./csc.jl]] 29 | ** Section B 30 | - See [[./lanczos.jl]] 31 | -------------------------------------------------------------------------------- /courseworks/week6/yushengzhao/csc.jl: -------------------------------------------------------------------------------- 1 | using SparseArrays, Test 2 | 3 | function my_spv(sp::SparseMatrixCSC{T1},v::AbstractVector{T2}) where {T1,T2} 4 | T = promote_type(T1,T2) 5 | @assert size(sp,2) == size(v,1) 6 | rowval, colval, nzval = Int[], Int[], T[] 7 | @inbounds for j in 1:size(sp,2) 8 | @inbounds for i in nzrange(sp,j) 9 | push!(rowval,sp.rowval[i]) 10 | push!(colval,1) 11 | push!(nzval,sp.nzval[i]*v[j]) 12 | end 13 | end 14 | return sparse(rowval,colval,nzval,size(sp,1),size(v,2)) 15 | end 16 | 17 | @testset "sparse matrix - vector multiplication" begin 18 | for k = 1:100 19 | m, n = rand(1:100, 2) 20 | density = rand() 21 | sp = sprand(m, n, density) 22 | v = randn(n) 23 | @test Matrix(sp) * v ≈ my_spv(sp, v) 24 | end 25 | end 26 | -------------------------------------------------------------------------------- /courseworks/week7/ZhigaoXIE/unit_disk_embedding.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/courseworks/week7/ZhigaoXIE/unit_disk_embedding.png -------------------------------------------------------------------------------- /courseworks/week7/xuanzhaogao/HW7.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/courseworks/week7/xuanzhaogao/HW7.pdf -------------------------------------------------------------------------------- /courseworks/week7/xuanzhaogao/plot.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | import matplotlib.pyplot as plt 3 | 4 | best_x = [-0.37354377570439323, 0.8379216308295349, 0.24309099431276804, 1.2378621542600936, 0.3552623814205562, 0.7428824430541134, 0.6837170659648447, 1.938135055810309, 0.8138713932381817, 1.3638018591988728, 0.924572957832151, 0.8753080473134458, 1.0547272851055045, 0.3009748507020766, 1.3831819696496568, 1.4962274634583885, 1.495353356757569, 1.0012477522524468, 2.111988126774288, 1.4011882756837912] 5 | 6 | E = [(1, 2), (1, 3), 7 | (2, 3), (2, 4), (2, 5), (2, 6), 8 | (3, 5), (3, 6), (3, 7), 9 | (4, 5), (4, 8), 10 | (5, 6), (5, 8), (5, 9), 11 | (6, 7), (6, 8), (6, 9), 12 | (7,9), (8, 9), (8, 10), (9, 10)] 13 | 14 | theta = np.linspace(0, 2 * np.pi, 100) 15 | x_0 = np.cos(theta) 16 | y_0 = np.sin(theta) 17 | 18 | plt.figure(dpi = 150) 19 | for i in range(10): 20 | plt.scatter(best_x[2 * i], best_x[2 * i + 1]) 21 | x_i = best_x[2 * i] + x_0 22 | y_i = best_x[2 * i + 1] + y_0 23 | plt.plot(x_i, y_i, label = str(i + 1)) 24 | 25 | for i in range(10): 26 | for j in range(i, 10): 27 | if (i + 1, j + 1) in E: 28 | plt.plot([best_x[2 * i], best_x[2 * j]], [best_x[2 * i + 1], best_x[2 * j + 1]], 'black') 29 | 30 | plt.legend(ncol = 2) 31 | plt.gca().set_aspect(1) 32 | plt.savefig('unit_disk_py.png') 33 | -------------------------------------------------------------------------------- /courseworks/week7/xuanzhaogao/unit_disk_py.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/courseworks/week7/xuanzhaogao/unit_disk_py.png -------------------------------------------------------------------------------- /courseworks/week7/yushengzhao/heatmap.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/courseworks/week7/yushengzhao/heatmap.png -------------------------------------------------------------------------------- /courseworks/week8/yushengzhao/unit_disk_py.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/courseworks/week8/yushengzhao/unit_disk_py.png -------------------------------------------------------------------------------- /courseworks/week9/ChengzhenXU/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/courseworks/week9/ChengzhenXU/1.png -------------------------------------------------------------------------------- /courseworks/week9/shiqinruixu/digram.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/courseworks/week9/shiqinruixu/digram.jpg -------------------------------------------------------------------------------- /courseworks/week9/shiqinruixu/digram2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/courseworks/week9/shiqinruixu/digram2.jpg -------------------------------------------------------------------------------- /courseworks/week9/tianhaohu/HW9.md: -------------------------------------------------------------------------------- 1 | # HW8 2 | 3 | ## 1. 4 | 5 | $$ 6 | \eta(\tau,\delta)-\sum_{k=0}^{\delta}\eta(\tau-1,k) 7 | $$ 8 | 9 | $$ 10 | = \frac{(\tau+\delta)!}{\tau! \delta!} - \sum_{k=0}^{\delta}\frac{((\tau-1)+k)!}{(\tau-1)! k!} 11 | $$ 12 | 13 | $$ 14 | = (\frac{1}{(\tau-1)!})(\frac{(\tau+\delta)!}{\tau \delta!}-\sum_{k=0}^{\delta}\frac{((\tau-1)+k)!}{ k!}) 15 | $$ 16 | 17 | $$ 18 | = \frac{(\tau+\delta)...\tau}{\tau \cdot \delta!} - 1 - \frac{\tau}{1!}- ...-\frac{\tau...(\tau+\delta-1)}{\delta !} 19 | $$ 20 | 21 | $$ 22 | = \frac{(\tau+\delta)...\tau}{\tau \cdot \delta!} - \sum_{k=0}^{\delta}\frac{(k+\tau-1)...\tau}{k!} 23 | $$ 24 | 25 | Notice that, 26 | 27 | $$ 28 | \frac{(\tau+k)...\tau}{\tau \cdot k!} - \frac{\tau...(\tau+k-1)}{k!} 29 | $$ 30 | 31 | $$ 32 | = \frac{k \cdot(\tau + k -1)...\tau }{\tau \cdot k !} = \frac{(\tau + k -1)...\tau }{\tau \cdot (k-1) !} 33 | $$ 34 | 35 | The above Eqn holds for $k$ from $\delta$ to 0. So $\eta(\tau,\delta)-\sum_{k=0}^{\delta}\eta(\tau-1,k)$ can be recursively proved to be zero. 36 | 37 | 38 | 39 | ## 2. 40 | 41 | 42 | -------------------------------------------------------------------------------- /courseworks/week9/xuanzhaogao/tensors.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/courseworks/week9/xuanzhaogao/tensors.jpg -------------------------------------------------------------------------------- /lib/CUDATutorial/Project.toml: -------------------------------------------------------------------------------- 1 | [deps] 2 | CUDA = "052768ef-5323-5732-b1bb-66c8b64840ba" 3 | -------------------------------------------------------------------------------- /lib/CUDATutorial/libraries.jl: -------------------------------------------------------------------------------- 1 | import SparseArrays, FFTW, LinearAlgebra, Random 2 | using CUDA; CUDA.allowscalar(false) 3 | using Test 4 | 5 | @testset "CUSOLVER" begin 6 | A = randn(10, 10) 7 | v = randn(10) 8 | # operations 9 | @test Array(CuArray(A) \ CuArray(v)) ≈ A \ Array(v) 10 | end 11 | 12 | @testset "CUSPARSE" begin 13 | Random.seed!(2) 14 | # initialize a CUDA sparse array 15 | A = SparseArrays.sprand(10, 10, 0.2) 16 | cuA = CUSPARSE.CuSparseMatrixCSC(A) 17 | 18 | @show SparseArrays.nnz(cuA) 19 | 20 | # operations 21 | v = randn(10) 22 | cuv = CuArray(v) 23 | # matrix vector 24 | @test Array(cuA * cuv) ≈ A * v 25 | 26 | # matrix matrix 27 | @test Array(cuA * cuA) ≈ A * A 28 | 29 | # gaussian eliminatjion 30 | cuA += Diagonal(CUDA.randn(10)) 31 | A = Array(cuA) 32 | @show CuArray(LinearAlgebra.UpperTriangular(cuA) \ cuv) 33 | @test Array(LinearAlgebra.UpperTriangular(cuA) \ cuv) ≈ LinearAlgebra.UpperTriangular(A) \ v 34 | end 35 | 36 | @testset "CUFFT" begin 37 | v = randn(10) 38 | @test Array(CUFFT.fft(CuArray(v))) ≈ FFTW.fft(v) 39 | 40 | # 2D fft 41 | A = randn(10, 10) 42 | @test Array(CUFFT.fft(CuArray(A))) ≈ FFTW.fft(A) 43 | end 44 | -------------------------------------------------------------------------------- /lib/CompressedSensingTutorial/.github/workflows/CI.yml: -------------------------------------------------------------------------------- 1 | name: CI 2 | on: 3 | push: 4 | branches: 5 | - main 6 | tags: ['*'] 7 | pull_request: 8 | concurrency: 9 | # Skip intermediate builds: always. 10 | # Cancel intermediate builds: only if it is a pull request build. 11 | group: ${{ github.workflow }}-${{ github.ref }} 12 | cancel-in-progress: ${{ startsWith(github.ref, 'refs/pull/') }} 13 | jobs: 14 | test: 15 | name: Julia ${{ matrix.version }} - ${{ matrix.os }} - ${{ matrix.arch }} - ${{ github.event_name }} 16 | runs-on: ${{ matrix.os }} 17 | strategy: 18 | fail-fast: false 19 | matrix: 20 | version: 21 | - '1.0' 22 | - 'nightly' 23 | os: 24 | - ubuntu-latest 25 | arch: 26 | - x64 27 | steps: 28 | - uses: actions/checkout@v2 29 | - uses: julia-actions/setup-julia@v1 30 | with: 31 | version: ${{ matrix.version }} 32 | arch: ${{ matrix.arch }} 33 | - uses: julia-actions/cache@v1 34 | - uses: julia-actions/julia-buildpkg@v1 35 | - uses: julia-actions/julia-runtest@v1 36 | - uses: julia-actions/julia-processcoverage@v1 37 | - uses: codecov/codecov-action@v2 38 | with: 39 | files: lcov.info 40 | -------------------------------------------------------------------------------- /lib/CompressedSensingTutorial/.github/workflows/CompatHelper.yml: -------------------------------------------------------------------------------- 1 | name: CompatHelper 2 | on: 3 | schedule: 4 | - cron: 0 0 * * * 5 | workflow_dispatch: 6 | jobs: 7 | CompatHelper: 8 | runs-on: ubuntu-latest 9 | steps: 10 | - name: Pkg.add("CompatHelper") 11 | run: julia -e 'using Pkg; Pkg.add("CompatHelper")' 12 | - name: CompatHelper.main() 13 | env: 14 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 15 | COMPATHELPER_PRIV: ${{ secrets.DOCUMENTER_KEY }} 16 | run: julia -e 'using CompatHelper; CompatHelper.main()' 17 | -------------------------------------------------------------------------------- /lib/CompressedSensingTutorial/.github/workflows/TagBot.yml: -------------------------------------------------------------------------------- 1 | name: TagBot 2 | on: 3 | issue_comment: 4 | types: 5 | - created 6 | workflow_dispatch: 7 | jobs: 8 | TagBot: 9 | if: github.event_name == 'workflow_dispatch' || github.actor == 'JuliaTagBot' 10 | runs-on: ubuntu-latest 11 | steps: 12 | - uses: JuliaRegistries/TagBot@v1 13 | with: 14 | token: ${{ secrets.GITHUB_TOKEN }} 15 | ssh: ${{ secrets.DOCUMENTER_KEY }} 16 | -------------------------------------------------------------------------------- /lib/CompressedSensingTutorial/.gitignore: -------------------------------------------------------------------------------- 1 | *.jl.*.cov 2 | *.jl.cov 3 | *.jl.mem 4 | /Manifest.toml 5 | .vscode/ -------------------------------------------------------------------------------- /lib/CompressedSensingTutorial/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2023 GiggleLiu and contributors 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /lib/CompressedSensingTutorial/Project.toml: -------------------------------------------------------------------------------- 1 | name = "CompressedSensingTutorial" 2 | uuid = "3ab334c4-b558-47f6-9400-74651b19301f" 3 | authors = ["GiggleLiu and contributors"] 4 | version = "1.0.0-DEV" 5 | 6 | [deps] 7 | FFTW = "7a1cc6ca-52ef-59f5-83cd-3a7055c09341" 8 | FiniteDifferences = "26cc04aa-876d-5657-8c51-4c34ba976000" 9 | Images = "916415d5-f1e6-5110-898d-aaa5f9f070e0" 10 | LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" 11 | NLSolversBase = "d41bc354-129a-5804-8e4c-c37616107c6c" 12 | Optim = "429524aa-4258-5aef-a3af-852621145aeb" 13 | Random = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c" 14 | StatsBase = "2913bbd2-ae8a-5f71-8c99-4fb6c76f3a91" 15 | 16 | [compat] 17 | julia = "1" 18 | 19 | [extras] 20 | Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" 21 | 22 | [targets] 23 | test = ["Test"] 24 | -------------------------------------------------------------------------------- /lib/CompressedSensingTutorial/README.md: -------------------------------------------------------------------------------- 1 | # CompressedSensingTutorial 2 | 3 | [![Build Status](https://github.com/GiggleLiu/CompressedSensingTutorial.jl/actions/workflows/CI.yml/badge.svg?branch=main)](https://github.com/GiggleLiu/CompressedSensingTutorial.jl/actions/workflows/CI.yml?query=branch%3Amain) 4 | [![Coverage](https://codecov.io/gh/GiggleLiu/CompressedSensingTutorial.jl/branch/main/graph/badge.svg)](https://codecov.io/gh/GiggleLiu/CompressedSensingTutorial.jl) 5 | -------------------------------------------------------------------------------- /lib/CompressedSensingTutorial/src/CompressedSensingTutorial.jl: -------------------------------------------------------------------------------- 1 | module CompressedSensingTutorial 2 | using FFTW, StatsBase, LinearAlgebra, Optim 3 | 4 | export sensing_image, sample_image_pixels, ImageSamples 5 | export SimpleLinesearch 6 | 7 | include("owlqn.jl") 8 | include("compressed_sensing_2d.jl") 9 | 10 | end 11 | -------------------------------------------------------------------------------- /lib/CompressedSensingTutorial/test/runtests.jl: -------------------------------------------------------------------------------- 1 | using Test 2 | 3 | @testset "compressed sensing 2d" begin 4 | include("compressed_sensing_2d.jl") 5 | end 6 | 7 | @testset "owlqn" begin 8 | include("owlqn.jl") 9 | end -------------------------------------------------------------------------------- /lib/CompressedSensingTutorial/test/waterfall.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/lib/CompressedSensingTutorial/test/waterfall.jpeg -------------------------------------------------------------------------------- /lib/KernelPCA/.github/workflows/CI.yml: -------------------------------------------------------------------------------- 1 | name: CI 2 | on: 3 | push: 4 | branches: 5 | - main 6 | tags: ['*'] 7 | pull_request: 8 | concurrency: 9 | # Skip intermediate builds: always. 10 | # Cancel intermediate builds: only if it is a pull request build. 11 | group: ${{ github.workflow }}-${{ github.ref }} 12 | cancel-in-progress: ${{ startsWith(github.ref, 'refs/pull/') }} 13 | jobs: 14 | test: 15 | name: Julia ${{ matrix.version }} - ${{ matrix.os }} - ${{ matrix.arch }} - ${{ github.event_name }} 16 | runs-on: ${{ matrix.os }} 17 | strategy: 18 | fail-fast: false 19 | matrix: 20 | version: 21 | - '1.0' 22 | - 'nightly' 23 | os: 24 | - ubuntu-latest 25 | arch: 26 | - x64 27 | steps: 28 | - uses: actions/checkout@v2 29 | - uses: julia-actions/setup-julia@v1 30 | with: 31 | version: ${{ matrix.version }} 32 | arch: ${{ matrix.arch }} 33 | - uses: julia-actions/cache@v1 34 | - uses: julia-actions/julia-buildpkg@v1 35 | - uses: julia-actions/julia-runtest@v1 36 | - uses: julia-actions/julia-processcoverage@v1 37 | - uses: codecov/codecov-action@v2 38 | with: 39 | files: lcov.info 40 | -------------------------------------------------------------------------------- /lib/KernelPCA/.github/workflows/CompatHelper.yml: -------------------------------------------------------------------------------- 1 | name: CompatHelper 2 | on: 3 | schedule: 4 | - cron: 0 0 * * * 5 | workflow_dispatch: 6 | jobs: 7 | CompatHelper: 8 | runs-on: ubuntu-latest 9 | steps: 10 | - name: Pkg.add("CompatHelper") 11 | run: julia -e 'using Pkg; Pkg.add("CompatHelper")' 12 | - name: CompatHelper.main() 13 | env: 14 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 15 | COMPATHELPER_PRIV: ${{ secrets.DOCUMENTER_KEY }} 16 | run: julia -e 'using CompatHelper; CompatHelper.main()' 17 | -------------------------------------------------------------------------------- /lib/KernelPCA/.github/workflows/TagBot.yml: -------------------------------------------------------------------------------- 1 | name: TagBot 2 | on: 3 | issue_comment: 4 | types: 5 | - created 6 | workflow_dispatch: 7 | jobs: 8 | TagBot: 9 | if: github.event_name == 'workflow_dispatch' || github.actor == 'JuliaTagBot' 10 | runs-on: ubuntu-latest 11 | steps: 12 | - uses: JuliaRegistries/TagBot@v1 13 | with: 14 | token: ${{ secrets.GITHUB_TOKEN }} 15 | ssh: ${{ secrets.DOCUMENTER_KEY }} 16 | -------------------------------------------------------------------------------- /lib/KernelPCA/.gitignore: -------------------------------------------------------------------------------- 1 | *.jl.*.cov 2 | *.jl.cov 3 | *.jl.mem 4 | /Manifest.toml 5 | -------------------------------------------------------------------------------- /lib/KernelPCA/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2023 GiggleLiu and contributors 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /lib/KernelPCA/Project.toml: -------------------------------------------------------------------------------- 1 | name = "KernelPCA" 2 | uuid = "659736db-e33a-4d97-a2b7-5a5dcfea6c5b" 3 | authors = ["GiggleLiu and contributors"] 4 | version = "1.0.0-DEV" 5 | 6 | [deps] 7 | LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" 8 | 9 | [compat] 10 | julia = "1" 11 | 12 | [extras] 13 | Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" 14 | 15 | [targets] 16 | test = ["Test"] 17 | -------------------------------------------------------------------------------- /lib/KernelPCA/README.md: -------------------------------------------------------------------------------- 1 | # KernelPCA 2 | 3 | [![Build Status](https://github.com/GiggleLiu/KernelPCA.jl/actions/workflows/CI.yml/badge.svg?branch=main)](https://github.com/GiggleLiu/KernelPCA.jl/actions/workflows/CI.yml?query=branch%3Amain) 4 | [![Coverage](https://codecov.io/gh/GiggleLiu/KernelPCA.jl/branch/main/graph/badge.svg)](https://codecov.io/gh/GiggleLiu/KernelPCA.jl) 5 | -------------------------------------------------------------------------------- /lib/KernelPCA/src/KernelPCA.jl: -------------------------------------------------------------------------------- 1 | module KernelPCA 2 | 3 | using LinearAlgebra 4 | 5 | export RBFKernel, PolyKernel, LinearKernel, kernelf, matrix, Point 6 | export kpca, KPCAResult, ϕ 7 | 8 | include("kernels.jl") 9 | include("kpca.jl") 10 | include("dataset.jl") 11 | 12 | end 13 | -------------------------------------------------------------------------------- /lib/KernelPCA/src/dataset.jl: -------------------------------------------------------------------------------- 1 | module DataSets 2 | 3 | using KernelPCA: Point 4 | export quadratic, linear, curve, rings 5 | 6 | function quadratic(n::Int; xspan=1, noise=0.1) 7 | xs = randn(n) .* xspan 8 | ys = xs .^ 2 .+ noise .* randn(n) 9 | return Point{2, Float64}[Point(x, y) for (x, y) in zip(xs, ys)] 10 | end 11 | 12 | function linear(n::Int; xspan=1, noise=0.1, offsety=0.0) 13 | xs = randn(n) .* xspan 14 | ys = xs .+ noise .* randn(n) .+ offsety 15 | return Point{2, Float64}[Point(x, y) for (x, y) in zip(xs, ys)] 16 | end 17 | 18 | function curve(n::Int; xspan=1, noise=0.1) 19 | xs = randn(n) .* xspan 20 | ys = (xs .- 1) .^ 2 .+ noise .* randn(n) 21 | return Point{2, Float64}[Point(x, y) for (x, y) in zip(xs, ys)] 22 | end 23 | 24 | function rings(n::Int; radius=1.0, width=0.1) 25 | vcat([let 26 | angles = rand(n) * 2π 27 | radis = radi .+ randn(n) * width 28 | [Point(r*cos(angle), r*sin(angle)) for (r, angle) in zip(radis, angles)] 29 | end for radi in radius]...) 30 | end 31 | end -------------------------------------------------------------------------------- /lib/KernelPCA/test/kernels.jl: -------------------------------------------------------------------------------- 1 | using KernelPCA, Test, LinearAlgebra 2 | 3 | @testset "rbf" begin 4 | ker = RBFKernel(0.56) 5 | m = matrix(ker, 0:0.01:0.99) 6 | @test m isa Matrix && size(m) == (100, 100) 7 | @test diag(m) ≈ ones(100) 8 | end 9 | 10 | @testset "poly" begin 11 | ker = PolyKernel{2}() 12 | x, y = Point(0.2, 0.5), Point(0.4, 0.9) 13 | @test ker(x, y) == ϕ(ker, x)' * ϕ(ker, y) 14 | 15 | ker = PolyKernel{3}() 16 | x, y = Point(0.2, 0.5), Point(0.4, 0.9) 17 | @test ker(x, y) == ϕ(ker, x)' * ϕ(ker, y) 18 | 19 | # linear kernel 20 | ker = LinearKernel() 21 | @test ker(x, y) == ϕ(ker, x)' * ϕ(ker, y) 22 | @test ker(x, y) == collect(x)' * collect(y) 23 | end -------------------------------------------------------------------------------- /lib/KernelPCA/test/runtests.jl: -------------------------------------------------------------------------------- 1 | using KernelPCA 2 | using Test 3 | 4 | @testset "KernelPCA.jl" begin 5 | # Write your tests here. 6 | end 7 | -------------------------------------------------------------------------------- /lib/LatticeGasCA/.github/workflows/CompatHelper.yml: -------------------------------------------------------------------------------- 1 | name: CompatHelper 2 | on: 3 | schedule: 4 | - cron: 0 0 * * * 5 | workflow_dispatch: 6 | jobs: 7 | CompatHelper: 8 | runs-on: ubuntu-latest 9 | steps: 10 | - name: Pkg.add("CompatHelper") 11 | run: julia -e 'using Pkg; Pkg.add("CompatHelper")' 12 | - name: CompatHelper.main() 13 | env: 14 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 15 | COMPATHELPER_PRIV: ${{ secrets.DOCUMENTER_KEY }} 16 | run: julia -e 'using CompatHelper; CompatHelper.main()' 17 | -------------------------------------------------------------------------------- /lib/LatticeGasCA/.github/workflows/TagBot.yml: -------------------------------------------------------------------------------- 1 | name: TagBot 2 | on: 3 | issue_comment: 4 | types: 5 | - created 6 | workflow_dispatch: 7 | jobs: 8 | TagBot: 9 | if: github.event_name == 'workflow_dispatch' || github.actor == 'JuliaTagBot' 10 | runs-on: ubuntu-latest 11 | steps: 12 | - uses: JuliaRegistries/TagBot@v1 13 | with: 14 | token: ${{ secrets.GITHUB_TOKEN }} 15 | ssh: ${{ secrets.DOCUMENTER_KEY }} 16 | -------------------------------------------------------------------------------- /lib/LatticeGasCA/.gitignore: -------------------------------------------------------------------------------- 1 | *.jl.*.cov 2 | *.jl.cov 3 | *.jl.mem 4 | /Manifest.toml 5 | /docs/build/ 6 | .vscode/ -------------------------------------------------------------------------------- /lib/LatticeGasCA/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2023 GiggleLiu and contributors 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /lib/LatticeGasCA/Project.toml: -------------------------------------------------------------------------------- 1 | name = "LatticeGasCA" 2 | uuid = "38b09334-5df9-4e03-8969-f8217d04990c" 3 | authors = ["GiggleLiu and contributors"] 4 | version = "1.0.0-DEV" 5 | 6 | [deps] 7 | CUDA = "052768ef-5323-5732-b1bb-66c8b64840ba" 8 | Requires = "ae029012-a4dd-5104-9daa-d747884805df" 9 | UnicodePlots = "b8865327-cd53-5732-bb35-84acbb429228" 10 | 11 | [compat] 12 | CUDA = "4.2" 13 | UnicodePlots = "3.5" 14 | julia = "1" 15 | 16 | [extras] 17 | Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" 18 | 19 | [targets] 20 | test = ["Test"] 21 | -------------------------------------------------------------------------------- /lib/LatticeGasCA/README.md: -------------------------------------------------------------------------------- 1 | # LatticeGasCA 2 | 3 | [![Stable](https://img.shields.io/badge/docs-stable-blue.svg)](https://GiggleLiu.github.io/LatticeGasCA.jl/stable/) 4 | [![Dev](https://img.shields.io/badge/docs-dev-blue.svg)](https://GiggleLiu.github.io/LatticeGasCA.jl/dev/) 5 | [![Build Status](https://github.com/GiggleLiu/LatticeGasCA.jl/actions/workflows/CI.yml/badge.svg?branch=main)](https://github.com/GiggleLiu/LatticeGasCA.jl/actions/workflows/CI.yml?query=branch%3Amain) 6 | [![Coverage](https://codecov.io/gh/GiggleLiu/LatticeGasCA.jl/branch/main/graph/badge.svg)](https://codecov.io/gh/GiggleLiu/LatticeGasCA.jl) 7 | -------------------------------------------------------------------------------- /lib/LatticeGasCA/docs/Project.toml: -------------------------------------------------------------------------------- 1 | [deps] 2 | Documenter = "e30172f5-a6a5-5a46-863b-614d45cd2de4" 3 | LatticeGasCA = "38b09334-5df9-4e03-8969-f8217d04990c" 4 | -------------------------------------------------------------------------------- /lib/LatticeGasCA/docs/make.jl: -------------------------------------------------------------------------------- 1 | using LatticeGasCA 2 | using Documenter 3 | 4 | DocMeta.setdocmeta!(LatticeGasCA, :DocTestSetup, :(using LatticeGasCA); recursive=true) 5 | 6 | makedocs(; 7 | modules=[LatticeGasCA], 8 | authors="GiggleLiu and contributors", 9 | repo="https://github.com/GiggleLiu/LatticeGasCA.jl/blob/{commit}{path}#{line}", 10 | sitename="LatticeGasCA.jl", 11 | format=Documenter.HTML(; 12 | prettyurls=get(ENV, "CI", "false") == "true", 13 | canonical="https://GiggleLiu.github.io/LatticeGasCA.jl", 14 | edit_link="main", 15 | assets=String[], 16 | ), 17 | pages=[ 18 | "Home" => "index.md", 19 | ], 20 | ) 21 | 22 | deploydocs(; 23 | repo="github.com/GiggleLiu/LatticeGasCA.jl", 24 | devbranch="main", 25 | ) 26 | -------------------------------------------------------------------------------- /lib/LatticeGasCA/docs/src/index.md: -------------------------------------------------------------------------------- 1 | ```@meta 2 | CurrentModule = LatticeGasCA 3 | ``` 4 | 5 | # LatticeGasCA 6 | 7 | Documentation for [LatticeGasCA](https://github.com/GiggleLiu/LatticeGasCA.jl). 8 | 9 | ```@index 10 | ``` 11 | 12 | ```@autodocs 13 | Modules = [LatticeGasCA] 14 | ``` 15 | -------------------------------------------------------------------------------- /lib/LatticeGasCA/project/visualize.jl: -------------------------------------------------------------------------------- 1 | using WGLMakie 2 | using LatticeGasCA 3 | 4 | function make_video(lg::AbstractLatticeGas; filename::String="lattice-gas.mp4", nframes::Int=120) 5 | lattice_data = Observable(LatticeGasCA.density(lg)) 6 | fig, axis, plt = Makie.heatmap(lattice_data) 7 | 8 | Makie.record(fig, filename, 1:nframes) do frame 9 | notify.((lattice_data,)) 10 | lattice_data[] = LatticeGasCA.density(update!(lg)) 11 | end 12 | end 13 | 14 | 15 | hpp = hpp_center_square(200, 200, 0.01); 16 | make_video(hpp) -------------------------------------------------------------------------------- /lib/LatticeGasCA/src/LatticeGasCA.jl: -------------------------------------------------------------------------------- 1 | module LatticeGasCA 2 | 3 | import UnicodePlots 4 | 5 | export hpp_center_square, hpp_singledot, HPPLatticeGas, simulate, update!, AbstractLatticeGas, density 6 | 7 | include("hpp.jl") 8 | include("cuda.jl") 9 | 10 | # using Requires 11 | # function __init__() 12 | # @require CUDA="052768ef-5323-5732-b1bb-66c8b64840ba" include("cuda.jl") 13 | # end 14 | 15 | end 16 | -------------------------------------------------------------------------------- /lib/LatticeGasCA/src/cuda.jl: -------------------------------------------------------------------------------- 1 | using CUDA 2 | using CUDA.GPUArrays: gpu_call, @cartesianidx 3 | 4 | export cpu 5 | 6 | function update!(lg::HPPLatticeGas{ET, <:CuArray{ET}}) where ET 7 | @inline function kernel(ctx, lattice::AbstractArray{T}, cache) where T 8 | i, j = (@cartesianidx lattice).I 9 | nx, ny = size(lattice) 10 | @inbounds state = (i == nx ? zero(T) : left(lattice[i+1, j])) + 11 | (i == 1 ? zero(T) : right(lattice[i-1, j])) + 12 | (j == ny ? zero(T) : down(lattice[i, j+1])) + 13 | (j == 1 ? zero(T) : up(lattice[i, j-1])) 14 | newstate = hpp_state_transfer_rule(state, i, j, nx, ny) 15 | @inbounds cache[i, j] = newstate 16 | return 17 | end 18 | gpu_call(kernel, lg.lattice, lg.cache) 19 | CUDA.synchronize() 20 | copyto!(lg.lattice, lg.cache) 21 | return lg 22 | end 23 | 24 | function CUDA.cu(lg::HPPLatticeGas) 25 | HPPLatticeGas(CuArray(lg.lattice), CuArray(lg.cache)) 26 | end 27 | 28 | function cpu(lg::HPPLatticeGas) 29 | HPPLatticeGas(Array(lg.lattice), Array(lg.cache)) 30 | end -------------------------------------------------------------------------------- /lib/LatticeGasCA/test/cuda.jl: -------------------------------------------------------------------------------- 1 | using LatticeGasCA, Test, CUDA 2 | CUDA.allowscalar(false) 3 | 4 | @testset "hpp" begin 5 | hpp = cu(hpp_singledot()) 6 | hpp2 = simulate(hpp, 76; verbose=true) 7 | @test !(hpp === hpp2) && hpp == hpp2 8 | end -------------------------------------------------------------------------------- /lib/LatticeGasCA/test/hpp.jl: -------------------------------------------------------------------------------- 1 | using LatticeGasCA, Test 2 | 3 | @testset "hpp" begin 4 | hpp = hpp_singledot() 5 | hpp2 = simulate(hpp, 76; verbose=true) 6 | @test !(hpp === hpp2) && hpp == hpp2 7 | end -------------------------------------------------------------------------------- /lib/LatticeGasCA/test/runtests.jl: -------------------------------------------------------------------------------- 1 | using LatticeGasCA 2 | using Test, CUDA 3 | 4 | @testset "hpp" begin 5 | include("hpp.jl") 6 | end 7 | 8 | if CUDA.functional() 9 | include("cuda.jl") 10 | end -------------------------------------------------------------------------------- /lib/PlutoLecturing/.gitignore: -------------------------------------------------------------------------------- 1 | *.jl.*.cov 2 | *.jl.cov 3 | *.jl.mem 4 | /Manifest.toml 5 | -------------------------------------------------------------------------------- /lib/PlutoLecturing/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2023 GiggleLiu and contributors 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /lib/PlutoLecturing/Project.toml: -------------------------------------------------------------------------------- 1 | name = "PlutoLecturing" 2 | uuid = "3e1d68ed-7204-4e43-84e1-610205b9583d" 3 | authors = ["GiggleLiu and contributors"] 4 | version = "0.1.0" 5 | 6 | [deps] 7 | AbstractTrees = "1520ce14-60c1-5f80-bbc7-55ef81b5835c" 8 | InteractiveUtils = "b77e0a4c-d291-57a0-90e8-8db25a27a240" 9 | Markdown = "d6f4376e-aef5-505a-96c1-9c027394607a" 10 | Pkg = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f" 11 | PlutoUI = "7f904dfe-b85e-4ff6-b463-dae2292396a8" 12 | Reexport = "189a3867-3050-52da-a836-e630ba90ab69" 13 | 14 | [compat] 15 | AbstractTrees = "0.4" 16 | PlutoUI = "0.7" 17 | Reexport = "1" 18 | julia = "1" 19 | 20 | [extras] 21 | Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" 22 | 23 | [targets] 24 | test = ["Test"] 25 | -------------------------------------------------------------------------------- /lib/PlutoLecturing/README.md: -------------------------------------------------------------------------------- 1 | # PlutoLecturing 2 | 3 | [![Build Status](https://github.com/GiggleLiu/PlutoLecturing.jl/actions/workflows/CI.yml/badge.svg?branch=main)](https://github.com/GiggleLiu/PlutoLecturing.jl/actions/workflows/CI.yml?query=branch%3Amain) 4 | [![Coverage](https://codecov.io/gh/GiggleLiu/PlutoLecturing.jl/branch/main/graph/badge.svg)](https://codecov.io/gh/GiggleLiu/PlutoLecturing.jl) 5 | -------------------------------------------------------------------------------- /lib/PlutoLecturing/src/PlutoLecturing.jl: -------------------------------------------------------------------------------- 1 | module PlutoLecturing 2 | 3 | using AbstractTrees, Pkg 4 | using InteractiveUtils 5 | using Reexport: @reexport 6 | @reexport using PlutoUI 7 | using Markdown: html 8 | 9 | include("functions.jl") 10 | include("xbind.jl") 11 | include("trees.jl") 12 | 13 | end 14 | -------------------------------------------------------------------------------- /lib/PlutoLecturing/src/xbind.jl: -------------------------------------------------------------------------------- 1 | export @xbind 2 | 3 | struct BondWrapper 4 | content 5 | end 6 | 7 | function Base.show(io::IO, mime::MIME"text/html", b::BondWrapper) 8 | print(io, 9 | """$(b.content.defines) = """) 10 | Base.show(io, mime, b.content) 11 | end 12 | 13 | macro xbind(args...) 14 | esc(quote 15 | let 16 | bond = @bind $(args...) 17 | $BondWrapper(bond) 18 | end 19 | end) 20 | end 21 | 22 | -------------------------------------------------------------------------------- /lib/PlutoLecturing/test/runtests.jl: -------------------------------------------------------------------------------- 1 | using PlutoLecturing 2 | using Test 3 | 4 | @testset "PlutoLecturing.jl" begin 5 | # Write your tests here. 6 | end 7 | 8 | @testset "trees" begin 9 | @test print_dependency_tree(PlutoLecturing) isa HTML 10 | @test print_dir_tree(".") isa Text 11 | @test print_type_tree(".") isa Text 12 | end 13 | -------------------------------------------------------------------------------- /notebooks/1.understanding-our-computing-devices.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/notebooks/1.understanding-our-computing-devices.pdf -------------------------------------------------------------------------------- /notebooks/10.inference.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/notebooks/10.inference.pdf -------------------------------------------------------------------------------- /notebooks/11.data-sparsity.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/notebooks/11.data-sparsity.pdf -------------------------------------------------------------------------------- /notebooks/12.cuda.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/notebooks/12.cuda.pdf -------------------------------------------------------------------------------- /notebooks/3.julia.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/notebooks/3.julia.pdf -------------------------------------------------------------------------------- /notebooks/4.linearequation.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/notebooks/4.linearequation.pdf -------------------------------------------------------------------------------- /notebooks/5.linear-least-square.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/notebooks/5.linear-least-square.pdf -------------------------------------------------------------------------------- /notebooks/6.sparse.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/notebooks/6.sparse.pdf -------------------------------------------------------------------------------- /notebooks/7.fft.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/notebooks/7.fft.pdf -------------------------------------------------------------------------------- /notebooks/8.optimization.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/notebooks/8.optimization.pdf -------------------------------------------------------------------------------- /notebooks/9.autodiff.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/notebooks/9.autodiff.pdf -------------------------------------------------------------------------------- /notebooks/clib/demo.c: -------------------------------------------------------------------------------- 1 | #include 2 | int c_factorial(size_t n) { 3 | int s = 1; 4 | for (size_t i=1; i<=n; i++) { 5 | s *= i; 6 | } 7 | return s; 8 | } 9 | -------------------------------------------------------------------------------- /notebooks/images/chatgpt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/notebooks/images/chatgpt.png -------------------------------------------------------------------------------- /notebooks/images/correct_answer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/notebooks/images/correct_answer.png -------------------------------------------------------------------------------- /notebooks/images/float-format.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/notebooks/images/float-format.png -------------------------------------------------------------------------------- /notebooks/images/hkust-gz.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/notebooks/images/hkust-gz.png -------------------------------------------------------------------------------- /notebooks/images/textbook.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/notebooks/images/textbook.jpg -------------------------------------------------------------------------------- /notebooks/images/trafalgar-square.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/notebooks/images/trafalgar-square.jpg -------------------------------------------------------------------------------- /notebooks/images/waterfall.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/notebooks/images/waterfall.jpeg -------------------------------------------------------------------------------- /notebooks/images/zulip1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/notebooks/images/zulip1.png -------------------------------------------------------------------------------- /website/.gitignore: -------------------------------------------------------------------------------- 1 | _site 2 | .DS_Store 3 | .jekyll 4 | .jekyll-metadata 5 | .bundle 6 | .sass-cache 7 | Gemfile 8 | Gemfile.lock 9 | node_modules 10 | package.json 11 | __site/ 12 | *.swp -------------------------------------------------------------------------------- /website/404.md: -------------------------------------------------------------------------------- 1 | @def title = "404" 2 | 3 | ~~~ 4 |
5 | 6 |
7 | 8 |
9 | 404 10 |
11 | 12 |
13 |
14 | 15 | The requested page was not found 16 | 17 |
18 |
19 |
20 |
21 | 22 |
23 | Click here to go back to the homepage. 24 |
25 | 26 |
27 | ~~~ 28 | -------------------------------------------------------------------------------- /website/Project.toml: -------------------------------------------------------------------------------- 1 | [deps] 2 | Franklin = "713c75ef-9fc9-4b05-94a9-213340da978e" 3 | NodeJS = "2bd173c7-0d6d-553b-b6af-13a54713934c" 4 | PlutoLecturing = "3e1d68ed-7204-4e43-84e1-610205b9583d" 5 | PlutoSliderServer = "2fc8631c-6f24-4c5b-bca7-cbb509c42db4" 6 | Random = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c" 7 | -------------------------------------------------------------------------------- /website/README.md: -------------------------------------------------------------------------------- 1 | # To deploy 2 | 3 | ```bash 4 | julia -e 'using Franklin; Franklin.serve()' 5 | ``` 6 | 7 | Logo is generate by [Surreal Graphics Generator API](https://deepai.org/machine-learning-model/surreal-graphics-generator) 8 | 9 | ![](_assets/favicon.jpg) 10 | -------------------------------------------------------------------------------- /website/_assets/favicon.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_assets/favicon.jpg -------------------------------------------------------------------------------- /website/_assets/images/arch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_assets/images/arch.png -------------------------------------------------------------------------------- /website/_assets/images/gnu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_assets/images/gnu.png -------------------------------------------------------------------------------- /website/_assets/msc2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_assets/msc2.jpg -------------------------------------------------------------------------------- /website/_ignore/2017-12-14-slackapp.md: -------------------------------------------------------------------------------- 1 | --- 2 | layout: post 3 | title: Create your own slack AI with python 4 | --- 5 | 6 | Before reading this page, please go through [tutorial](https://www.fullstackpython.com/blog/build-first-slack-bot-python.html). 7 | 8 | 9 | -------------------------------------------------------------------------------- /website/_ignore/2018-01-02-rbmmps.md: -------------------------------------------------------------------------------- 1 | --- 2 | 75layout: post 3 | title: RBM-MPO ansatz 4 | --- 5 | ## Definition of RBM-MPO ansatz 6 | $$\langle\sigma\vert\psi\rangle=\sum\limits_{\{b_i\},\{\sigma_i'\}}\prod\limits_i O^{\sigma_i,\sigma'_i}_{b_{i-1},b_{i}}f(W,\sigma_i')$$. 7 | 8 | ## Training 9 | 10 | $$\frac{\partial}{\partial W}=\frac{\partial}{\partial\psi}\frac{\partial \psi}{\partial f}\frac{\partial f}{\partial W}$$ is in general not accessable because we have infinitely many $\{\sigma_i'\}$. However, we can sample over $\{\sigma_i'\}$ instead of $\{\sigma_i\}$ and train it with VMC (so called Heisenberg picture). This time, the exploding Hilbert space problem is transformed into how to optimize $O$. 11 | 12 | Impose translational invariance on $O​$, and resort to VUMPO approach to optimize it. -------------------------------------------------------------------------------- /website/_ignore/2018-01-31-qv.md: -------------------------------------------------------------------------------- 1 | --- 2 | layout: post 3 | title: Quantum Representation Power 4 | --- 5 | 6 | Notice the following facts 7 | * The representation power of a noisy quantum device is restricted. 8 | * The representation power of a shallow quantum circuit is restricted. 9 | 10 | I want to give a measure of representation power from measurement results. 11 | Here, I'd like to introduce the concept of "volume of reduced density matrixs (RDM)". 12 | * If the circuit is noisy enough, that fully coupled with environment, its RDM is $-$. 13 | 14 | Questions: 15 | * any one come up with similar idea? 16 | 17 | ### Why this is important 18 | The reason I came up 19 | -------------------------------------------------------------------------------- /website/_ignore/diff.md: -------------------------------------------------------------------------------- 1 | Back-Propagation 2 | 3 | we have a data $x$ 4 | 5 | go through operations $f_1, f_2, f_3 \rightarrow L = f_3(f_2(f_1(x)))$ 6 | 7 | the gradient for $x$ is $\frac{\partial L}{\partial x} = \frac{\partial L}{\partial y_2}\cdot \frac{\partial y_2}{\partial y_1}\cdot \frac{\partial y_1}{\partial x}$ 8 | 9 | so we just remember the input and output of every function, for $y=f_i(x)$, we know $f_i'= g(x, y)$. 10 | 11 | when $x\rightarrow \vec x$, $y\rightarrow \vec y$, 12 | 13 | $\frac{\partial L}{\partial x} = \sum\limits_{y_2}\left(\frac{\partial L}{\partial y_2}\cdot\sum\limits_{\partial y_1}\left(\frac{\partial y_2}{\partial y_1}\cdot \frac{\partial y_1}{\partial x}\right)\right)$ 14 | 15 | Notice $\frac{\partial y_2}{\partial y_1}$ is a matrix, called Jacobian matrix. 16 | 17 | e.g. y = Wx+b 18 | 19 | 20 | 21 | Back-Propagation for RBM 22 | 23 | $$E(x) = x^T\mathbf Wh + b^Th +x^Ta$$ 24 | 25 | $\frac{\partial E}{\partial W_{ij}}=x_ih_j$ 26 | 27 | -------------------------------------------------------------------------------- /website/_layout/foot.html: -------------------------------------------------------------------------------- 1 | 2 | {{ if hasmath }} 3 | {{ insert foot_katex.html }} 4 | {{ end }} 5 | {{ if hascode }} 6 | {{ insert foot_highlight.html }} 7 | {{ end }} 8 | 9 | 10 | -------------------------------------------------------------------------------- /website/_layout/foot_highlight.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /website/_layout/foot_katex.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /website/_layout/head.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | {{if hasmath}} {{insert head_katex.html }} {{end}} 7 | {{if hascode}} {{insert head_highlight.html }} {{end}} 8 | 9 | 10 | 11 | {{isdef title}} {{fill title}} {{end}} 12 | 13 | 14 | {{insert header.html}} 15 | 16 | 17 | -------------------------------------------------------------------------------- /website/_layout/head_highlight.html: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /website/_layout/head_katex.html: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /website/_layout/header.html: -------------------------------------------------------------------------------- 1 |
2 | 3 | 9 |
10 | -------------------------------------------------------------------------------- /website/_layout/page_foot.html: -------------------------------------------------------------------------------- 1 |
2 | CC BY-SA 4.0 {{ fill author }}. {{isnotpage /tag/*}}Last modified: {{ fill fd_mtime }}.{{end}} 3 | Website built with Franklin.jl and the Julia programming language. 4 |
5 | -------------------------------------------------------------------------------- /website/_layout/sidebar.html: -------------------------------------------------------------------------------- 1 | 10 |
11 | -------------------------------------------------------------------------------- /website/_layout/style.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 14 | 15 | -------------------------------------------------------------------------------- /website/_layout/tag.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | Tag: {{fill fd_tag}} 9 | 10 | 11 | {{insert header.html}} 12 |
13 |

Tag: {{fill fd_tag}}

14 | {{taglist}} 15 | {{insert page_foot.html}} 16 |
17 | 18 | 19 | -------------------------------------------------------------------------------- /website/_libs/highlight/styles/a11y-dark.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*! 2 | Theme: a11y-dark 3 | Author: @ericwbailey 4 | Maintainer: @ericwbailey 5 | 6 | Based on the Tomorrow Night Eighties theme: https://github.com/isagalaev/highlight.js/blob/master/src/styles/tomorrow-night-eighties.css 7 | */.hljs{background:#2b2b2b;color:#f8f8f2}.hljs-comment,.hljs-quote{color:#d4d0ab}.hljs-deletion,.hljs-name,.hljs-regexp,.hljs-selector-class,.hljs-selector-id,.hljs-tag,.hljs-template-variable,.hljs-variable{color:#ffa07a}.hljs-built_in,.hljs-link,.hljs-literal,.hljs-meta,.hljs-number,.hljs-params,.hljs-type{color:#f5ab35}.hljs-attribute{color:gold}.hljs-addition,.hljs-bullet,.hljs-string,.hljs-symbol{color:#abe338}.hljs-section,.hljs-title{color:#00e0e0}.hljs-keyword,.hljs-selector-tag{color:#dcc6e0}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}@media screen and (-ms-high-contrast:active){.hljs-addition,.hljs-attribute,.hljs-built_in,.hljs-bullet,.hljs-comment,.hljs-link,.hljs-literal,.hljs-meta,.hljs-number,.hljs-params,.hljs-quote,.hljs-string,.hljs-symbol,.hljs-type{color:highlight}.hljs-keyword,.hljs-selector-tag{font-weight:700}} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/a11y-light.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*! 2 | Theme: a11y-light 3 | Author: @ericwbailey 4 | Maintainer: @ericwbailey 5 | 6 | Based on the Tomorrow Night Eighties theme: https://github.com/isagalaev/highlight.js/blob/master/src/styles/tomorrow-night-eighties.css 7 | */.hljs{background:#fefefe;color:#545454}.hljs-comment,.hljs-quote{color:#696969}.hljs-deletion,.hljs-name,.hljs-regexp,.hljs-selector-class,.hljs-selector-id,.hljs-tag,.hljs-template-variable,.hljs-variable{color:#d91e18}.hljs-attribute,.hljs-built_in,.hljs-link,.hljs-literal,.hljs-meta,.hljs-number,.hljs-params,.hljs-type{color:#aa5d00}.hljs-addition,.hljs-bullet,.hljs-string,.hljs-symbol{color:green}.hljs-section,.hljs-title{color:#007faa}.hljs-keyword,.hljs-selector-tag{color:#7928a1}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}@media screen and (-ms-high-contrast:active){.hljs-addition,.hljs-attribute,.hljs-built_in,.hljs-bullet,.hljs-comment,.hljs-link,.hljs-literal,.hljs-meta,.hljs-number,.hljs-params,.hljs-quote,.hljs-string,.hljs-symbol,.hljs-type{color:highlight}.hljs-keyword,.hljs-selector-tag{font-weight:700}} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/an-old-hope.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*! 2 | Theme: An Old Hope – Star Wars Syntax 3 | Author: (c) Gustavo Costa 4 | Maintainer: @gusbemacbe 5 | 6 | Original theme - Ocean Dark Theme – by https://github.com/gavsiu 7 | Based on Jesse Leite's Atom syntax theme 'An Old Hope' 8 | https://github.com/JesseLeite/an-old-hope-syntax-atom 9 | */.hljs{background:#1c1d21;color:#c0c5ce}.hljs-comment,.hljs-quote{color:#b6b18b}.hljs-deletion,.hljs-name,.hljs-regexp,.hljs-selector-class,.hljs-selector-id,.hljs-tag,.hljs-template-variable,.hljs-variable{color:#eb3c54}.hljs-built_in,.hljs-link,.hljs-literal,.hljs-meta,.hljs-number,.hljs-params,.hljs-type{color:#e7ce56}.hljs-attribute{color:#ee7c2b}.hljs-addition,.hljs-bullet,.hljs-string,.hljs-symbol{color:#4fb4d7}.hljs-section,.hljs-title{color:#78bb65}.hljs-keyword,.hljs-selector-tag{color:#b45ea4}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/androidstudio.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#a9b7c6;background:#282b2e}.hljs-bullet,.hljs-literal,.hljs-number,.hljs-symbol{color:#6897bb}.hljs-deletion,.hljs-keyword,.hljs-selector-tag{color:#cc7832}.hljs-link,.hljs-template-variable,.hljs-variable{color:#629755}.hljs-comment,.hljs-quote{color:grey}.hljs-meta{color:#bbb529}.hljs-addition,.hljs-attribute,.hljs-string{color:#6a8759}.hljs-section,.hljs-title,.hljs-type{color:#ffc66d}.hljs-name,.hljs-selector-class,.hljs-selector-id{color:#e8bf6a}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/arduino-light.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#fff;color:#434f54}.hljs-subst{color:#434f54}.hljs-attribute,.hljs-doctag,.hljs-keyword,.hljs-name,.hljs-selector-tag{color:#00979d}.hljs-addition,.hljs-built_in,.hljs-bullet,.hljs-code,.hljs-literal{color:#d35400}.hljs-link,.hljs-regexp,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-symbol,.hljs-template-variable,.hljs-variable{color:#00979d}.hljs-deletion,.hljs-quote,.hljs-selector-class,.hljs-selector-id,.hljs-string,.hljs-template-tag,.hljs-type{color:#005c5f}.hljs-comment{color:rgba(149,165,166,.8)}.hljs-meta .hljs-keyword{color:#728e00}.hljs-meta{color:#434f54}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-function{color:#728e00}.hljs-section,.hljs-title{color:#800;font-weight:700}.hljs-number{color:#8a7b52} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/arta.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#222;color:#aaa}.hljs-subst{color:#aaa}.hljs-section{color:#fff}.hljs-comment,.hljs-meta,.hljs-quote{color:#444}.hljs-bullet,.hljs-regexp,.hljs-string,.hljs-symbol{color:#fc3}.hljs-addition,.hljs-number{color:#0c6}.hljs-attribute,.hljs-built_in,.hljs-link,.hljs-literal,.hljs-template-variable,.hljs-type{color:#32aaee}.hljs-keyword,.hljs-name,.hljs-selector-class,.hljs-selector-id,.hljs-selector-tag{color:#64a}.hljs-deletion,.hljs-template-tag,.hljs-title,.hljs-variable{color:#b16}.hljs-doctag,.hljs-section,.hljs-strong{font-weight:700}.hljs-emphasis{font-style:italic} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/ascetic.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#fff;color:#000}.hljs-addition,.hljs-attribute,.hljs-bullet,.hljs-link,.hljs-section,.hljs-string,.hljs-symbol,.hljs-template-variable,.hljs-variable{color:#888}.hljs-comment,.hljs-deletion,.hljs-meta,.hljs-quote{color:#ccc}.hljs-keyword,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-strong,.hljs-type{font-weight:700}.hljs-emphasis{font-style:italic} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/atom-one-dark-reasonable.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#abb2bf;background:#282c34}.hljs-keyword,.hljs-operator,.hljs-pattern-match{color:#f92672}.hljs-function,.hljs-pattern-match .hljs-constructor{color:#61aeee}.hljs-function .hljs-params{color:#a6e22e}.hljs-function .hljs-params .hljs-typing{color:#fd971f}.hljs-module-access .hljs-module{color:#7e57c2}.hljs-constructor{color:#e2b93d}.hljs-constructor .hljs-string{color:#9ccc65}.hljs-comment,.hljs-quote{color:#b18eb1;font-style:italic}.hljs-doctag,.hljs-formula{color:#c678dd}.hljs-deletion,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-subst{color:#e06c75}.hljs-literal{color:#56b6c2}.hljs-addition,.hljs-attribute,.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#98c379}.hljs-built_in,.hljs-class .hljs-title,.hljs-title.class_{color:#e6c07b}.hljs-attr,.hljs-number,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-pseudo,.hljs-template-variable,.hljs-type,.hljs-variable{color:#d19a66}.hljs-bullet,.hljs-link,.hljs-meta,.hljs-selector-id,.hljs-symbol,.hljs-title{color:#61aeee}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-link{text-decoration:underline} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/atom-one-dark.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#abb2bf;background:#282c34}.hljs-comment,.hljs-quote{color:#5c6370;font-style:italic}.hljs-doctag,.hljs-formula,.hljs-keyword{color:#c678dd}.hljs-deletion,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-subst{color:#e06c75}.hljs-literal{color:#56b6c2}.hljs-addition,.hljs-attribute,.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#98c379}.hljs-attr,.hljs-number,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-pseudo,.hljs-template-variable,.hljs-type,.hljs-variable{color:#d19a66}.hljs-bullet,.hljs-link,.hljs-meta,.hljs-selector-id,.hljs-symbol,.hljs-title{color:#61aeee}.hljs-built_in,.hljs-class .hljs-title,.hljs-title.class_{color:#e6c07b}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-link{text-decoration:underline} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/atom-one-light.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#383a42;background:#fafafa}.hljs-comment,.hljs-quote{color:#a0a1a7;font-style:italic}.hljs-doctag,.hljs-formula,.hljs-keyword{color:#a626a4}.hljs-deletion,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-subst{color:#e45649}.hljs-literal{color:#0184bb}.hljs-addition,.hljs-attribute,.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#50a14f}.hljs-attr,.hljs-number,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-pseudo,.hljs-template-variable,.hljs-type,.hljs-variable{color:#986801}.hljs-bullet,.hljs-link,.hljs-meta,.hljs-selector-id,.hljs-symbol,.hljs-title{color:#4078f2}.hljs-built_in,.hljs-class .hljs-title,.hljs-title.class_{color:#c18401}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-link{text-decoration:underline} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/base16/apprentice.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | Theme: Apprentice 3 | Author: romainl 4 | License: ~ MIT (or more permissive) [via base16-schemes-source] 5 | Maintainer: @highlightjs/core-team 6 | Version: 2021.09.0 7 | */pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#bcbcbc;background:#262626}.hljs ::selection,.hljs::selection{background-color:#333;color:#bcbcbc}.hljs-comment{color:#6c6c6c}.hljs-tag{color:#787878}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#bcbcbc}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#5f8787}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#ff8700}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#5f8787}.hljs-strong{font-weight:700;color:#5f8787}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#87af87}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#5f875f}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#ffffaf}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#87afd7}.hljs-emphasis{color:#87afd7;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#5f87af}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/base16/bespin.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | Theme: Bespin 3 | Author: Jan T. Sott 4 | License: ~ MIT (or more permissive) [via base16-schemes-source] 5 | Maintainer: @highlightjs/core-team 6 | Version: 2021.09.0 7 | */pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#8a8986;background:#28211c}.hljs ::selection,.hljs::selection{background-color:#5e5d5c;color:#8a8986}.hljs-comment{color:#666}.hljs-tag{color:#797977}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#8a8986}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#cf6a4c}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#cf7d34}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#f9ee98}.hljs-strong{font-weight:700;color:#f9ee98}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#54be0d}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#afc4db}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#5ea6ea}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#9b859d}.hljs-emphasis{color:#9b859d;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#937121}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/base16/black-metal.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | Theme: Black Metal 3 | Author: metalelf0 (https://github.com/metalelf0) 4 | License: ~ MIT (or more permissive) [via base16-schemes-source] 5 | Maintainer: @highlightjs/core-team 6 | Version: 2021.09.0 7 | */pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#c1c1c1;background:#000}.hljs ::selection,.hljs::selection{background-color:#222;color:#c1c1c1}.hljs-comment{color:#333}.hljs-tag{color:#999}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#c1c1c1}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#5f8787}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#aaa}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#a06666}.hljs-strong{font-weight:700;color:#a06666}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#d99}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#aaa}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#888}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#999}.hljs-emphasis{color:#999;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#444}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/base16/codeschool.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | Theme: Codeschool 3 | Author: blockloop 4 | License: ~ MIT (or more permissive) [via base16-schemes-source] 5 | Maintainer: @highlightjs/core-team 6 | Version: 2021.09.0 7 | */pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#9ea7a6;background:#232c31}.hljs ::selection,.hljs::selection{background-color:#2a343a;color:#9ea7a6}.hljs-comment{color:#3f4944}.hljs-tag{color:#84898c}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#9ea7a6}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#2a5491}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#43820d}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#a03b1e}.hljs-strong{font-weight:700;color:#a03b1e}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#237986}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#b02f30}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#484d79}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#c59820}.hljs-emphasis{color:#c59820;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#c98344}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/base16/colors.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | Theme: Colors 3 | Author: mrmrs (http://clrs.cc) 4 | License: ~ MIT (or more permissive) [via base16-schemes-source] 5 | Maintainer: @highlightjs/core-team 6 | Version: 2021.09.0 7 | */pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#bbb;background:#111}.hljs ::selection,.hljs::selection{background-color:#555;color:#bbb}.hljs-comment{color:#777}.hljs-tag{color:#999}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#bbb}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ff4136}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#ff851b}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#ffdc00}.hljs-strong{font-weight:700;color:#ffdc00}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#2ecc40}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#7fdbff}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#0074d9}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#b10dc9}.hljs-emphasis{color:#b10dc9;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#85144b}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/base16/cupertino.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | Theme: Cupertino 3 | Author: Defman21 4 | License: ~ MIT (or more permissive) [via base16-schemes-source] 5 | Maintainer: @highlightjs/core-team 6 | Version: 2021.09.0 7 | */pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#404040;background:#fff}.hljs ::selection,.hljs::selection{background-color:silver;color:#404040}.hljs-comment,.hljs-tag{color:grey}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#404040}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#c41a15}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#eb8500}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#826b28}.hljs-strong{font-weight:700;color:#826b28}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#007400}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#318495}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#00f}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#a90d91}.hljs-emphasis{color:#a90d91;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#826b28}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/base16/darcula.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | Theme: Darcula 3 | Author: jetbrains 4 | License: ~ MIT (or more permissive) [via base16-schemes-source] 5 | Maintainer: @highlightjs/core-team 6 | Version: 2021.09.0 7 | */pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#a9b7c6;background:#2b2b2b}.hljs ::selection,.hljs::selection{background-color:#323232;color:#a9b7c6}.hljs-comment{color:#606366}.hljs-tag{color:#a4a3a3}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#a9b7c6}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#4eade5}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#689757}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#bbb529}.hljs-strong{font-weight:700;color:#bbb529}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#6a8759}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#629755}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#9876aa}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#cc7832}.hljs-emphasis{color:#cc7832;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:grey}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/base16/dirtysea.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | Theme: dirtysea 3 | Author: Kahlil (Kal) Hodgson 4 | License: ~ MIT (or more permissive) [via base16-schemes-source] 5 | Maintainer: @highlightjs/core-team 6 | Version: 2021.09.0 7 | */pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#000;background:#e0e0e0}.hljs ::selection,.hljs::selection{background-color:#d0d0d0;color:#000}.hljs-comment{color:#707070}.hljs-tag{color:#202020}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#000}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#840000}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#006565}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#755b00}.hljs-strong{font-weight:700;color:#755b00}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#730073}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#755b00}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#007300}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#000090}.hljs-emphasis{color:#000090;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#755b00}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/base16/eighties.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | Theme: Eighties 3 | Author: Chris Kempson (http://chriskempson.com) 4 | License: ~ MIT (or more permissive) [via base16-schemes-source] 5 | Maintainer: @highlightjs/core-team 6 | Version: 2021.09.0 7 | */pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#d3d0c8;background:#2d2d2d}.hljs ::selection,.hljs::selection{background-color:#515151;color:#d3d0c8}.hljs-comment{color:#747369}.hljs-tag{color:#a09f93}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#d3d0c8}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#f2777a}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#f99157}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#fc6}.hljs-strong{font-weight:700;color:#fc6}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#9c9}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#6cc}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#69c}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#c9c}.hljs-emphasis{color:#c9c;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#d27b53}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/base16/eva.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | Theme: Eva 3 | Author: kjakapat (https://github.com/kjakapat) 4 | License: ~ MIT (or more permissive) [via base16-schemes-source] 5 | Maintainer: @highlightjs/core-team 6 | Version: 2021.09.0 7 | */pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#9fa2a6;background:#2a3b4d}.hljs ::selection,.hljs::selection{background-color:#4b6988;color:#9fa2a6}.hljs-comment{color:#55799c}.hljs-tag{color:#7e90a3}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#9fa2a6}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#c4676c}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#f96}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#ff6}.hljs-strong{font-weight:700;color:#ff6}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#6f6}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#4b8f77}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#15f4ee}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#9c6cd3}.hljs-emphasis{color:#9c6cd3;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#bb64a9}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/base16/fruit-soda.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | Theme: Fruit Soda 3 | Author: jozip 4 | License: ~ MIT (or more permissive) [via base16-schemes-source] 5 | Maintainer: @highlightjs/core-team 6 | Version: 2021.09.0 7 | */pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#515151;background:#f1ecf1}.hljs ::selection,.hljs::selection{background-color:#d8d5d5;color:#515151}.hljs-comment{color:#b5b4b6}.hljs-tag{color:#979598}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#515151}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#fe3e31}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#fe6d08}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#f7e203}.hljs-strong{font-weight:700;color:#f7e203}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#47f74c}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#0f9cfd}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#2931df}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#611fce}.hljs-emphasis{color:#611fce;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#b16f40}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/base16/github.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | Theme: Github 3 | Author: Defman21 4 | License: ~ MIT (or more permissive) [via base16-schemes-source] 5 | Maintainer: @highlightjs/core-team 6 | Version: 2021.09.0 7 | */pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#333;background:#fff}.hljs ::selection,.hljs::selection{background-color:#c8c8fa;color:#333}.hljs-comment{color:#969896}.hljs-tag{color:#e8e8e8}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#333}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ed6a43}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#0086b3}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#795da3}.hljs-strong{font-weight:700;color:#795da3}.hljs-addition,.hljs-built_in,.hljs-code,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp,.hljs-string,.hljs-title.class_.inherited__{color:#183691}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#795da3}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#a71d5d}.hljs-emphasis{color:#a71d5d;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#333}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/base16/green-screen.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | Theme: Green Screen 3 | Author: Chris Kempson (http://chriskempson.com) 4 | License: ~ MIT (or more permissive) [via base16-schemes-source] 5 | Maintainer: @highlightjs/core-team 6 | Version: 2021.09.0 7 | */pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#0b0;background:#010}.hljs ::selection,.hljs::selection{background-color:#050;color:#0b0}.hljs-comment{color:#070}.hljs-tag{color:#090}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#0b0}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#070}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#090}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#070}.hljs-strong{font-weight:700;color:#070}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#0b0}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#050}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#090}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#0b0}.hljs-emphasis{color:#0b0;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#050}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/base16/hardcore.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | Theme: Hardcore 3 | Author: Chris Caller 4 | License: ~ MIT (or more permissive) [via base16-schemes-source] 5 | Maintainer: @highlightjs/core-team 6 | Version: 2021.09.0 7 | */pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#cdcdcd;background:#212121}.hljs ::selection,.hljs::selection{background-color:#353535;color:#cdcdcd}.hljs-comment{color:#4a4a4a}.hljs-tag{color:#707070}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#cdcdcd}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#f92672}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#fd971f}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#e6db74}.hljs-strong{font-weight:700;color:#e6db74}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#a6e22e}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#708387}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#66d9ef}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#9e6ffe}.hljs-emphasis{color:#9e6ffe;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#e8b882}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/base16/hopscotch.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | Theme: Hopscotch 3 | Author: Jan T. Sott 4 | License: ~ MIT (or more permissive) [via base16-schemes-source] 5 | Maintainer: @highlightjs/core-team 6 | Version: 2021.09.0 7 | */pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#b9b5b8;background:#322931}.hljs ::selection,.hljs::selection{background-color:#5c545b;color:#b9b5b8}.hljs-comment{color:#797379}.hljs-tag{color:#989498}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#b9b5b8}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#dd464c}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#fd8b19}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#fdcc59}.hljs-strong{font-weight:700;color:#fdcc59}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#8fc13e}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#149b93}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#1290bf}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#c85e7c}.hljs-emphasis{color:#c85e7c;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#b33508}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/base16/isotope.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | Theme: Isotope 3 | Author: Jan T. Sott 4 | License: ~ MIT (or more permissive) [via base16-schemes-source] 5 | Maintainer: @highlightjs/core-team 6 | Version: 2021.09.0 7 | */pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#d0d0d0;background:#000}.hljs ::selection,.hljs::selection{background-color:#606060;color:#d0d0d0}.hljs-comment{color:grey}.hljs-tag{color:silver}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#d0d0d0}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:red}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#f90}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#f09}.hljs-strong{font-weight:700;color:#f09}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#3f0}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#0ff}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#06f}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#c0f}.hljs-emphasis{color:#c0f;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#30f}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/base16/materia.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | Theme: Materia 3 | Author: Defman21 4 | License: ~ MIT (or more permissive) [via base16-schemes-source] 5 | Maintainer: @highlightjs/core-team 6 | Version: 2021.09.0 7 | */pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#cdd3de;background:#263238}.hljs ::selection,.hljs::selection{background-color:#37474f;color:#cdd3de}.hljs-comment{color:#707880}.hljs-tag{color:#c9ccd3}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#cdd3de}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ec5f67}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#ea9560}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#fc0}.hljs-strong{font-weight:700;color:#fc0}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#8bd649}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#80cbc4}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#89ddff}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#82aaff}.hljs-emphasis{color:#82aaff;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#ec5f67}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/base16/material.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | Theme: Material 3 | Author: Nate Peterson 4 | License: ~ MIT (or more permissive) [via base16-schemes-source] 5 | Maintainer: @highlightjs/core-team 6 | Version: 2021.09.0 7 | */pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#eff;background:#263238}.hljs ::selection,.hljs::selection{background-color:#314549;color:#eff}.hljs-comment{color:#546e7a}.hljs-tag{color:#b2ccd6}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#eff}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#f07178}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#f78c6c}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#ffcb6b}.hljs-strong{font-weight:700;color:#ffcb6b}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#c3e88d}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#89ddff}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#82aaff}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#c792ea}.hljs-emphasis{color:#c792ea;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#ff5370}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/base16/mellow-purple.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | Theme: Mellow Purple 3 | Author: gidsi 4 | License: ~ MIT (or more permissive) [via base16-schemes-source] 5 | Maintainer: @highlightjs/core-team 6 | Version: 2021.09.0 7 | */pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#fef;background:#1e0528}.hljs ::selection,.hljs::selection{background-color:#331354;color:#fef}.hljs-comment{color:#320f55}.hljs-tag{color:#873582}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#fef}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#00d9e9}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#aa00a3}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#955ae7}.hljs-strong{font-weight:700;color:#955ae7}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#05cb0d}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#b900b1}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#550068}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#8991bb}.hljs-emphasis{color:#8991bb;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#4d6fff}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/base16/nord.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | Theme: Nord 3 | Author: arcticicestudio 4 | License: ~ MIT (or more permissive) [via base16-schemes-source] 5 | Maintainer: @highlightjs/core-team 6 | Version: 2021.09.0 7 | */pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#e5e9f0;background:#2e3440}.hljs ::selection,.hljs::selection{background-color:#434c5e;color:#e5e9f0}.hljs-comment{color:#4c566a}.hljs-tag{color:#d8dee9}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#e5e9f0}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#bf616a}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#d08770}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#ebcb8b}.hljs-strong{font-weight:700;color:#ebcb8b}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#a3be8c}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#88c0d0}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#81a1c1}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#b48ead}.hljs-emphasis{color:#b48ead;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#5e81ac}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/base16/paraiso.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | Theme: Paraiso 3 | Author: Jan T. Sott 4 | License: ~ MIT (or more permissive) [via base16-schemes-source] 5 | Maintainer: @highlightjs/core-team 6 | Version: 2021.09.0 7 | */pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#a39e9b;background:#2f1e2e}.hljs ::selection,.hljs::selection{background-color:#4f424c;color:#a39e9b}.hljs-comment{color:#776e71}.hljs-tag{color:#8d8687}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#a39e9b}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ef6155}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#f99b15}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#fec418}.hljs-strong{font-weight:700;color:#fec418}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#48b685}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#5bc4bf}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#06b6ef}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#815ba4}.hljs-emphasis{color:#815ba4;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#e96ba8}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/base16/qualia.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | Theme: Qualia 3 | Author: isaacwhanson 4 | License: ~ MIT (or more permissive) [via base16-schemes-source] 5 | Maintainer: @highlightjs/core-team 6 | Version: 2021.09.0 7 | */pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:silver;background:#101010}.hljs ::selection,.hljs::selection{background-color:#454545;color:silver}.hljs-comment{color:#454545}.hljs-tag{color:grey}.hljs-operator,.hljs-punctuation,.hljs-subst{color:silver}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#efa6a2}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#a3b8ef}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#e6a3dc}.hljs-strong{font-weight:700;color:#e6a3dc}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#80c990}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#c8c874}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#50cacd}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#e0af85}.hljs-emphasis{color:#e0af85;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:grey}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/base16/seti-ui.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | Theme: Seti UI 3 | Author: 4 | License: ~ MIT (or more permissive) [via base16-schemes-source] 5 | Maintainer: @highlightjs/core-team 6 | Version: 2021.09.0 7 | */pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#d6d6d6;background:#151718}.hljs ::selection,.hljs::selection{background-color:#3b758c;color:#d6d6d6}.hljs-comment{color:#41535b}.hljs-tag{color:#43a5d5}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#d6d6d6}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#cd3f45}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#db7b55}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#e6cd69}.hljs-strong{font-weight:700;color:#e6cd69}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#9fca56}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#55dbbe}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#55b5db}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#a074c4}.hljs-emphasis{color:#a074c4;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#8a553f}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/base16/vulcan.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | Theme: vulcan 3 | Author: Andrey Varfolomeev 4 | License: ~ MIT (or more permissive) [via base16-schemes-source] 5 | Maintainer: @highlightjs/core-team 6 | Version: 2021.09.0 7 | */pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#5b778c;background:#041523}.hljs ::selection,.hljs::selection{background-color:#003552;color:#5b778c}.hljs-comment{color:#7a5759}.hljs-tag{color:#6b6977}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#5b778c}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#818591}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#9198a3}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#adb4b9}.hljs-strong{font-weight:700;color:#adb4b9}.hljs-addition,.hljs-attribute,.hljs-built_in,.hljs-code,.hljs-doctag,.hljs-function .hljs-title,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp,.hljs-section,.hljs-string,.hljs-title.class_.inherited__,.hljs-title.function_,.ruby .hljs-property{color:#977d7c}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#9198a3}.hljs-emphasis{color:#9198a3;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#977d7c}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/base16/windows-nt.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | Theme: Windows NT 3 | Author: Fergus Collins (https://github.com/C-Fergus) 4 | License: ~ MIT (or more permissive) [via base16-schemes-source] 5 | Maintainer: @highlightjs/core-team 6 | Version: 2021.09.0 7 | */pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:silver;background:#000}.hljs ::selection,.hljs::selection{background-color:#555;color:silver}.hljs-comment{color:grey}.hljs-tag{color:#a1a1a1}.hljs-operator,.hljs-punctuation,.hljs-subst{color:silver}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:red}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:olive}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#ff0}.hljs-strong{font-weight:700;color:#ff0}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#0f0}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#0ff}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#00f}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#f0f}.hljs-emphasis{color:#f0f;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:green}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/base16/zenburn.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | Theme: Zenburn 3 | Author: elnawe 4 | License: ~ MIT (or more permissive) [via base16-schemes-source] 5 | Maintainer: @highlightjs/core-team 6 | Version: 2021.09.0 7 | */pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#dcdccc;background:#383838}.hljs ::selection,.hljs::selection{background-color:#606060;color:#dcdccc}.hljs-comment{color:#6f6f6f}.hljs-tag{color:grey}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#dcdccc}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#dca3a3}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#dfaf8f}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#e0cf9f}.hljs-strong{font-weight:700;color:#e0cf9f}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#5f7f5f}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#93e0e3}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#7cb8bb}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#dc8cc3}.hljs-emphasis{color:#dc8cc3;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#000}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/brown-paper.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#363c69;background:url(./brown-papersq.png) #b7a68e}.hljs-keyword,.hljs-literal,.hljs-selector-tag{color:#059}.hljs-addition,.hljs-attribute,.hljs-built_in,.hljs-bullet,.hljs-link,.hljs-name,.hljs-section,.hljs-string,.hljs-symbol,.hljs-template-tag,.hljs-template-variable,.hljs-title,.hljs-type,.hljs-variable{color:#2c009f}.hljs-comment,.hljs-deletion,.hljs-meta,.hljs-quote{color:#802022}.hljs-doctag,.hljs-keyword,.hljs-literal,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-strong,.hljs-title,.hljs-type{font-weight:700}.hljs-emphasis{font-style:italic} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/brown-papersq.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/highlight/styles/brown-papersq.png -------------------------------------------------------------------------------- /website/_libs/highlight/styles/codepen-embed.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#222;color:#fff}.hljs-comment,.hljs-quote{color:#777}.hljs-built_in,.hljs-bullet,.hljs-deletion,.hljs-link,.hljs-literal,.hljs-meta,.hljs-number,.hljs-params,.hljs-regexp,.hljs-symbol,.hljs-tag,.hljs-template-variable,.hljs-variable{color:#ab875d}.hljs-attribute,.hljs-name,.hljs-section,.hljs-selector-class,.hljs-selector-id,.hljs-title,.hljs-type{color:#9b869b}.hljs-addition,.hljs-keyword,.hljs-selector-tag,.hljs-string{color:#8f9c6c}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/color-brewer.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#000;background:#fff}.hljs-addition,.hljs-meta,.hljs-string,.hljs-symbol,.hljs-template-tag,.hljs-template-variable{color:#756bb1}.hljs-comment,.hljs-quote{color:#636363}.hljs-bullet,.hljs-link,.hljs-literal,.hljs-number,.hljs-regexp{color:#31a354}.hljs-deletion,.hljs-variable{color:#88f}.hljs-built_in,.hljs-doctag,.hljs-keyword,.hljs-name,.hljs-section,.hljs-selector-class,.hljs-selector-id,.hljs-selector-tag,.hljs-strong,.hljs-tag,.hljs-title,.hljs-type{color:#3182bd}.hljs-emphasis{font-style:italic}.hljs-attribute{color:#e6550d} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/dark.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#ddd;background:#303030}.hljs-keyword,.hljs-link,.hljs-literal,.hljs-section,.hljs-selector-tag{color:#fff}.hljs-addition,.hljs-attribute,.hljs-built_in,.hljs-bullet,.hljs-name,.hljs-string,.hljs-symbol,.hljs-template-tag,.hljs-template-variable,.hljs-title,.hljs-type,.hljs-variable{color:#d88}.hljs-comment,.hljs-deletion,.hljs-meta,.hljs-quote{color:#979797}.hljs-doctag,.hljs-keyword,.hljs-literal,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-strong,.hljs-title,.hljs-type{font-weight:700}.hljs-emphasis{font-style:italic} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/default.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | Theme: Default 3 | Description: Original highlight.js style 4 | Author: (c) Ivan Sagalaev 5 | Maintainer: @highlightjs/core-team 6 | Website: https://highlightjs.org/ 7 | License: see project LICENSE 8 | Touched: 2021 9 | */pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#f3f3f3;color:#444}.hljs-comment{color:#697070}.hljs-punctuation,.hljs-tag{color:#444a}.hljs-tag .hljs-attr,.hljs-tag .hljs-name{color:#444}.hljs-attribute,.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-name,.hljs-selector-tag{font-weight:700}.hljs-deletion,.hljs-number,.hljs-quote,.hljs-selector-class,.hljs-selector-id,.hljs-string,.hljs-template-tag,.hljs-type{color:#800}.hljs-section,.hljs-title{color:#800;font-weight:700}.hljs-link,.hljs-operator,.hljs-regexp,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-symbol,.hljs-template-variable,.hljs-variable{color:#ab5656}.hljs-literal{color:#695}.hljs-addition,.hljs-built_in,.hljs-bullet,.hljs-code{color:#397300}.hljs-meta{color:#1f7199}.hljs-meta .hljs-string{color:#38a}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/devibeans.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*! 2 | Theme: devibeans (dark) 3 | Author: @terminaldweller 4 | Maintainer: @terminaldweller 5 | 6 | Inspired by vim's jellybeans theme (https://github.com/nanotech/jellybeans.vim) 7 | */.hljs{background:#000;color:#a39e9b}.hljs-attr,.hljs-template-tag{color:#8787d7}.hljs-comment,.hljs-doctag,.hljs-quote{color:#396}.hljs-params{color:#a39e9b}.hljs-regexp{color:#d700ff}.hljs-literal,.hljs-number,.hljs-selector-id,.hljs-tag{color:#ef5350}.hljs-meta,.hljs-meta .hljs-keyword{color:#0087ff}.hljs-code,.hljs-formula,.hljs-keyword,.hljs-link,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-pseudo,.hljs-template-variable,.hljs-variable{color:#64b5f6}.hljs-built_in,.hljs-deletion,.hljs-title{color:#ff8700}.hljs-attribute,.hljs-function,.hljs-name,.hljs-property,.hljs-section,.hljs-type{color:#ffd75f}.hljs-addition,.hljs-bullet,.hljs-meta .hljs-string,.hljs-string,.hljs-subst,.hljs-symbol{color:#558b2f}.hljs-selector-tag{color:#96f}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/docco.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#000;background:#f8f8ff}.hljs-comment,.hljs-quote{color:#408080;font-style:italic}.hljs-keyword,.hljs-literal,.hljs-selector-tag,.hljs-subst{color:#954121}.hljs-number{color:#40a070}.hljs-doctag,.hljs-string{color:#219161}.hljs-section,.hljs-selector-class,.hljs-selector-id,.hljs-type{color:#19469d}.hljs-params{color:#00f}.hljs-title{color:#458;font-weight:700}.hljs-attribute,.hljs-name,.hljs-tag{color:navy;font-weight:400}.hljs-template-variable,.hljs-variable{color:teal}.hljs-link,.hljs-regexp{color:#b68}.hljs-bullet,.hljs-symbol{color:#990073}.hljs-built_in{color:#0086b3}.hljs-meta{color:#999;font-weight:700}.hljs-deletion{background:#fdd}.hljs-addition{background:#dfd}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/far.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#0ff;background:navy}.hljs-addition,.hljs-attribute,.hljs-built_in,.hljs-bullet,.hljs-string,.hljs-symbol,.hljs-template-tag,.hljs-template-variable{color:#ff0}.hljs-keyword,.hljs-name,.hljs-section,.hljs-selector-class,.hljs-selector-id,.hljs-selector-tag,.hljs-type,.hljs-variable{color:#fff}.hljs-comment,.hljs-deletion,.hljs-doctag,.hljs-quote{color:#888}.hljs-link,.hljs-literal,.hljs-number,.hljs-regexp{color:#0f0}.hljs-meta{color:teal}.hljs-keyword,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-strong,.hljs-title{font-weight:700}.hljs-emphasis{font-style:italic} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/felipec.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*! 2 | * Theme: FelipeC 3 | * Author: (c) 2021 Felipe Contreras 4 | * Website: https://github.com/felipec/vim-felipec 5 | * 6 | * Autogenerated with vim-felipec's generator. 7 | */.hljs{color:#dddde1;background:#1e1e22}.hljs ::selection,.hljs::selection{color:#1e1e22;background:#bf8fef}.hljs-code,.hljs-comment,.hljs-quote{color:#888896}.hljs-deletion,.hljs-literal,.hljs-number{color:#ef8f8f}.hljs-doctag,.hljs-meta,.hljs-operator,.hljs-punctuation,.hljs-selector-attr,.hljs-subst,.hljs-template-variable{color:#efbf8f}.hljs-type{color:#efef8f}.hljs-selector-class,.hljs-selector-id,.hljs-tag,.hljs-title{color:#bfef8f}.hljs-addition,.hljs-regexp,.hljs-string{color:#8fef8f}.hljs-class,.hljs-property{color:#8fefbf}.hljs-name,.hljs-selector-tag{color:#8fefef}.hljs-built_in,.hljs-keyword{color:#8fbfef}.hljs-bullet,.hljs-section{color:#8f8fef}.hljs-selector-pseudo{color:#bf8fef}.hljs-attr,.hljs-attribute,.hljs-params,.hljs-variable{color:#ef8fef}.hljs-link,.hljs-symbol{color:#ef8fbf}.hljs-literal,.hljs-strong,.hljs-title{font-weight:700}.hljs-emphasis{font-style:italic} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/foundation.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#eee;color:#000}.hljs-addition,.hljs-attribute,.hljs-emphasis,.hljs-link{color:#070}.hljs-emphasis{font-style:italic}.hljs-deletion,.hljs-string,.hljs-strong{color:#d14}.hljs-strong{font-weight:700}.hljs-comment,.hljs-quote{color:#998;font-style:italic}.hljs-section,.hljs-title{color:#900}.hljs-class .hljs-title,.hljs-title.class_,.hljs-type{color:#458}.hljs-template-variable,.hljs-variable{color:#369}.hljs-bullet{color:#970}.hljs-meta{color:#34b}.hljs-code,.hljs-keyword,.hljs-literal,.hljs-number,.hljs-selector-tag{color:#099}.hljs-regexp{background-color:#fff0ff;color:#808}.hljs-symbol{color:#990073}.hljs-name,.hljs-selector-class,.hljs-selector-id,.hljs-tag{color:#070} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/github-dark-dimmed.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*! 2 | Theme: GitHub Dark Dimmed 3 | Description: Dark dimmed theme as seen on github.com 4 | Author: github.com 5 | Maintainer: @Hirse 6 | Updated: 2021-05-15 7 | 8 | Colors taken from GitHub's CSS 9 | */.hljs{color:#adbac7;background:#22272e}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#f47067}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#dcbdfb}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-variable{color:#6cb6ff}.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#96d0ff}.hljs-built_in,.hljs-symbol{color:#f69d50}.hljs-code,.hljs-comment,.hljs-formula{color:#768390}.hljs-name,.hljs-quote,.hljs-selector-pseudo,.hljs-selector-tag{color:#8ddb8c}.hljs-subst{color:#adbac7}.hljs-section{color:#316dca;font-weight:700}.hljs-bullet{color:#eac55f}.hljs-emphasis{color:#adbac7;font-style:italic}.hljs-strong{color:#adbac7;font-weight:700}.hljs-addition{color:#b4f1b4;background-color:#1b4721}.hljs-deletion{color:#ffd8d3;background-color:#78191b} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/github-dark.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*! 2 | Theme: GitHub Dark 3 | Description: Dark theme as seen on github.com 4 | Author: github.com 5 | Maintainer: @Hirse 6 | Updated: 2021-05-15 7 | 8 | Outdated base version: https://github.com/primer/github-syntax-dark 9 | Current colors taken from GitHub's CSS 10 | */.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-variable{color:#79c0ff}.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-code,.hljs-comment,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-pseudo,.hljs-selector-tag{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/github.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*! 2 | Theme: GitHub 3 | Description: Light theme as seen on github.com 4 | Author: github.com 5 | Maintainer: @Hirse 6 | Updated: 2021-05-15 7 | 8 | Outdated base version: https://github.com/primer/github-syntax-light 9 | Current colors taken from GitHub's CSS 10 | */.hljs{color:#24292e;background:#fff}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#d73a49}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#6f42c1}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-variable{color:#005cc5}.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#032f62}.hljs-built_in,.hljs-symbol{color:#e36209}.hljs-code,.hljs-comment,.hljs-formula{color:#6a737d}.hljs-name,.hljs-quote,.hljs-selector-pseudo,.hljs-selector-tag{color:#22863a}.hljs-subst{color:#24292e}.hljs-section{color:#005cc5;font-weight:700}.hljs-bullet{color:#735c0f}.hljs-emphasis{color:#24292e;font-style:italic}.hljs-strong{color:#24292e;font-weight:700}.hljs-addition{color:#22863a;background-color:#f0fff4}.hljs-deletion{color:#b31d28;background-color:#ffeef0} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/gml.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#222;color:silver}.hljs-keyword{color:#ffb871;font-weight:700}.hljs-built_in{color:#ffb871}.hljs-literal{color:#ff8080}.hljs-symbol{color:#58e55a}.hljs-comment{color:#5b995b}.hljs-string{color:#ff0}.hljs-number{color:#ff8080}.hljs-addition,.hljs-attribute,.hljs-bullet,.hljs-code,.hljs-deletion,.hljs-doctag,.hljs-function,.hljs-link,.hljs-meta,.hljs-meta .hljs-keyword,.hljs-name,.hljs-quote,.hljs-regexp,.hljs-section,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-selector-pseudo,.hljs-selector-tag,.hljs-subst,.hljs-template-tag,.hljs-template-variable,.hljs-title,.hljs-type,.hljs-variable{color:silver}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/googlecode.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#fff;color:#000}.hljs-comment,.hljs-quote{color:#800}.hljs-keyword,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-title{color:#008}.hljs-template-variable,.hljs-variable{color:#660}.hljs-regexp,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-string{color:#080}.hljs-bullet,.hljs-link,.hljs-literal,.hljs-meta,.hljs-number,.hljs-symbol{color:#066}.hljs-attr,.hljs-built_in,.hljs-doctag,.hljs-params,.hljs-title,.hljs-type{color:#606}.hljs-attribute,.hljs-subst{color:#000}.hljs-formula{background-color:#eee;font-style:italic}.hljs-selector-class,.hljs-selector-id{color:#9b703f}.hljs-addition{background-color:#baeeba}.hljs-deletion{background-color:#ffc8bd}.hljs-doctag,.hljs-strong{font-weight:700}.hljs-emphasis{font-style:italic} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/gradient-dark.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background-color:#652487;background-image:linear-gradient(160deg,#652487 0,#443ac3 35%,#0174b7 68%,#04988e 100%);color:#e7e4eb}.hljs-subtr{color:#e7e4eb}.hljs-comment,.hljs-doctag,.hljs-meta,.hljs-quote{color:#af8dd9}.hljs-attr,.hljs-regexp,.hljs-selector-id,.hljs-selector-tag,.hljs-tag,.hljs-template-tag{color:#aefbff}.hljs-bullet,.hljs-params,.hljs-selector-class{color:#f19fff}.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-section,.hljs-symbol,.hljs-type{color:#17fc95}.hljs-addition,.hljs-link,.hljs-number{color:#c5fe00}.hljs-string{color:#38c0ff}.hljs-addition,.hljs-attribute{color:#e7ff9f}.hljs-template-variable,.hljs-variable{color:#e447ff}.hljs-built_in,.hljs-class,.hljs-formula,.hljs-function,.hljs-name,.hljs-title{color:#ffc800}.hljs-deletion,.hljs-literal,.hljs-selector-pseudo{color:#ff9e44}.hljs-emphasis,.hljs-quote{font-style:italic}.hljs-keyword,.hljs-params,.hljs-section,.hljs-selector-class,.hljs-selector-id,.hljs-selector-tag,.hljs-strong,.hljs-template-tag{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/gradient-light.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background-color:#f9ccff;background-image:linear-gradient(295deg,#f9ccff 0,#e6bbf9 11%,#9ec6f9 32%,#55e6ee 60%,#91f5d1 74%,#f9ffbf 98%);color:#250482}.hljs-subtr{color:#01958b}.hljs-comment,.hljs-doctag,.hljs-meta,.hljs-quote{color:#cb7200}.hljs-attr,.hljs-regexp,.hljs-selector-id,.hljs-selector-tag,.hljs-tag,.hljs-template-tag{color:#07bd5f}.hljs-bullet,.hljs-params,.hljs-selector-class{color:#43449f}.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-section,.hljs-symbol,.hljs-type{color:#7d2801}.hljs-addition,.hljs-link,.hljs-number{color:#7f0096}.hljs-string{color:#2681ab}.hljs-addition,.hljs-attribute{color:#296562}.hljs-template-variable,.hljs-variable{color:#025c8f}.hljs-built_in,.hljs-class,.hljs-formula,.hljs-function,.hljs-name,.hljs-title{color:#529117}.hljs-deletion,.hljs-literal,.hljs-selector-pseudo{color:#ad13ff}.hljs-emphasis,.hljs-quote{font-style:italic}.hljs-keyword,.hljs-params,.hljs-section,.hljs-selector-class,.hljs-selector-id,.hljs-selector-tag,.hljs-strong,.hljs-template-tag{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/hybrid.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#1d1f21;color:#c5c8c6}.hljs span::selection,.hljs::selection{background:#373b41}.hljs span::-moz-selection,.hljs::-moz-selection{background:#373b41}.hljs-name,.hljs-title{color:#f0c674}.hljs-comment,.hljs-meta,.hljs-meta .hljs-keyword{color:#707880}.hljs-deletion,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol{color:#c66}.hljs-addition,.hljs-doctag,.hljs-regexp,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-string{color:#b5bd68}.hljs-attribute,.hljs-code,.hljs-selector-id{color:#b294bb}.hljs-bullet,.hljs-keyword,.hljs-selector-tag,.hljs-tag{color:#81a2be}.hljs-subst,.hljs-template-tag,.hljs-template-variable,.hljs-variable{color:#8abeb7}.hljs-built_in,.hljs-quote,.hljs-section,.hljs-selector-class,.hljs-type{color:#de935f}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/idea.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#000;background:#fff}.hljs-subst,.hljs-title{font-weight:400;color:#000}.hljs-comment,.hljs-quote{color:grey;font-style:italic}.hljs-meta{color:olive}.hljs-tag{background:#efefef}.hljs-keyword,.hljs-literal,.hljs-name,.hljs-section,.hljs-selector-class,.hljs-selector-id,.hljs-selector-tag,.hljs-type{font-weight:700;color:navy}.hljs-attribute,.hljs-link,.hljs-number,.hljs-regexp{font-weight:700;color:#00f}.hljs-link,.hljs-number,.hljs-regexp{font-weight:400}.hljs-string{color:green;font-weight:700}.hljs-bullet,.hljs-formula,.hljs-symbol{color:#000;background:#d0eded;font-style:italic}.hljs-doctag{text-decoration:underline}.hljs-template-variable,.hljs-variable{color:#660e7a}.hljs-addition{background:#baeeba}.hljs-deletion{background:#ffc8bd}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/intellij-light.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#000;background:#fff}.hljs-subst,.hljs-title{font-weight:400;color:#000}.hljs-title.function_{color:#7a7a43}.hljs-code,.hljs-comment,.hljs-quote{color:#8c8c8c;font-style:italic}.hljs-meta{color:#9e880d}.hljs-section{color:#871094}.hljs-built_in,.hljs-keyword,.hljs-literal,.hljs-meta .hljs-keyword,.hljs-name,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-selector-pseudo,.hljs-selector-tag,.hljs-symbol,.hljs-template-tag,.hljs-type,.hljs-variable.language_{color:#0033b3}.hljs-attr,.hljs-property{color:#871094}.hljs-attribute{color:#174ad4}.hljs-number{color:#1750eb}.hljs-regexp{color:#264eff}.hljs-link{text-decoration:underline;color:#006dcc}.hljs-meta .hljs-string,.hljs-string{color:#067d17}.hljs-char.escape_{color:#0037a6}.hljs-doctag{text-decoration:underline}.hljs-template-variable{color:#248f8f}.hljs-addition{background:#bee6be}.hljs-deletion{background:#d6d6d6}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/ir-black.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#000;color:#f8f8f8}.hljs-comment,.hljs-meta,.hljs-quote{color:#7c7c7c}.hljs-keyword,.hljs-name,.hljs-selector-tag,.hljs-tag{color:#96cbfe}.hljs-attribute,.hljs-selector-id{color:#ffffb6}.hljs-addition,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-string{color:#a8ff60}.hljs-subst{color:#daefa3}.hljs-link,.hljs-regexp{color:#e9c062}.hljs-doctag,.hljs-section,.hljs-title,.hljs-type{color:#ffffb6}.hljs-bullet,.hljs-literal,.hljs-symbol,.hljs-template-variable,.hljs-variable{color:#c6c5fe}.hljs-deletion,.hljs-number{color:#ff73fd}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/isbl-editor-dark.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#404040}.hljs,.hljs-subst{color:#f0f0f0}.hljs-comment{color:#b5b5b5;font-style:italic}.hljs-attribute,.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-name,.hljs-selector-tag{color:#f0f0f0;font-weight:700}.hljs-string{color:#97bf0d}.hljs-deletion,.hljs-number,.hljs-quote,.hljs-selector-class,.hljs-selector-id,.hljs-template-tag,.hljs-type{color:#f0f0f0}.hljs-link,.hljs-regexp,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-symbol,.hljs-template-variable,.hljs-variable{color:#e2c696}.hljs-built_in,.hljs-literal{color:#97bf0d;font-weight:700}.hljs-addition,.hljs-bullet,.hljs-code{color:#397300}.hljs-class{color:#ce9d4d;font-weight:700}.hljs-section,.hljs-title{color:#df471e}.hljs-title>.hljs-built_in{color:#81bce9;font-weight:400}.hljs-meta{color:#1f7199}.hljs-meta .hljs-string{color:#4d99bf}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/isbl-editor-light.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#fff;color:#000}.hljs-subst{color:#000}.hljs-comment{color:#555;font-style:italic}.hljs-attribute,.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-name,.hljs-selector-tag{color:#000;font-weight:700}.hljs-string{color:navy}.hljs-deletion,.hljs-number,.hljs-quote,.hljs-selector-class,.hljs-selector-id,.hljs-template-tag,.hljs-type{color:#000}.hljs-link,.hljs-regexp,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-symbol,.hljs-template-variable,.hljs-variable{color:#5e1700}.hljs-built_in,.hljs-literal{color:navy;font-weight:700}.hljs-addition,.hljs-bullet,.hljs-code{color:#397300}.hljs-class{color:#6f1c00;font-weight:700}.hljs-section,.hljs-title{color:#fb2c00}.hljs-title>.hljs-built_in{color:teal;font-weight:400}.hljs-meta{color:#1f7199}.hljs-meta .hljs-string{color:#4d99bf}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/kimbie-dark.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#221a0f;color:#d3af86}.hljs-comment,.hljs-quote{color:#d6baad}.hljs-meta,.hljs-name,.hljs-regexp,.hljs-selector-class,.hljs-selector-id,.hljs-tag,.hljs-template-variable,.hljs-variable{color:#dc3958}.hljs-built_in,.hljs-deletion,.hljs-link,.hljs-literal,.hljs-number,.hljs-params,.hljs-type{color:#f79a32}.hljs-addition,.hljs-bullet,.hljs-string,.hljs-symbol{color:#889b4a}.hljs-function,.hljs-keyword,.hljs-selector-tag{color:#98676a}.hljs-attribute,.hljs-section,.hljs-title{color:#f06431}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/kimbie-light.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#fbebd4;color:#84613d}.hljs-comment,.hljs-quote{color:#a57a4c}.hljs-meta,.hljs-name,.hljs-regexp,.hljs-selector-class,.hljs-selector-id,.hljs-tag,.hljs-template-variable,.hljs-variable{color:#dc3958}.hljs-built_in,.hljs-deletion,.hljs-link,.hljs-literal,.hljs-number,.hljs-params,.hljs-type{color:#f79a32}.hljs-addition,.hljs-bullet,.hljs-string,.hljs-symbol{color:#889b4a}.hljs-function,.hljs-keyword,.hljs-selector-tag{color:#98676a}.hljs-attribute,.hljs-section,.hljs-title{color:#f06431}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/lightfair.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#444;background:#fff}.hljs-name{color:#01a3a3}.hljs-meta,.hljs-tag{color:#789}.hljs-comment{color:#888}.hljs-attribute,.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-name,.hljs-selector-tag{font-weight:700}.hljs-deletion,.hljs-number,.hljs-quote,.hljs-selector-class,.hljs-selector-id,.hljs-string,.hljs-template-tag,.hljs-type{color:#4286f4}.hljs-section,.hljs-title{color:#4286f4;font-weight:700}.hljs-link,.hljs-regexp,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-symbol,.hljs-template-variable,.hljs-variable{color:#bc6060}.hljs-literal{color:#62bcbc}.hljs-addition,.hljs-built_in,.hljs-bullet,.hljs-code{color:#25c6c6}.hljs-meta .hljs-string{color:#4d99bf}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/lioshi.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#303030;color:#c5c8c6}.hljs-comment{color:#8d8d8d}.hljs-quote{color:#b3c7d8}.hljs-deletion,.hljs-name,.hljs-regexp,.hljs-selector-class,.hljs-selector-id,.hljs-tag,.hljs-template-variable,.hljs-variable{color:#c66}.hljs-built_in,.hljs-literal,.hljs-number,.hljs-subst .hljs-link,.hljs-type{color:#de935f}.hljs-attribute{color:#f0c674}.hljs-addition,.hljs-bullet,.hljs-params,.hljs-string{color:#b5bd68}.hljs-class,.hljs-function,.hljs-keyword,.hljs-selector-tag{color:#be94bb}.hljs-meta,.hljs-section,.hljs-title{color:#81a2be}.hljs-symbol{color:#dbc4d9}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/magula.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background-color:#f4f4f4;color:#000}.hljs-subst{color:#000}.hljs-addition,.hljs-attribute,.hljs-bullet,.hljs-string,.hljs-symbol,.hljs-template-tag,.hljs-template-variable,.hljs-title,.hljs-variable{color:#050}.hljs-comment,.hljs-quote{color:#777}.hljs-link,.hljs-literal,.hljs-number,.hljs-regexp,.hljs-type{color:#800}.hljs-deletion,.hljs-meta{color:#00e}.hljs-built_in,.hljs-doctag,.hljs-keyword,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-tag,.hljs-title{font-weight:700;color:navy}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/mono-blue.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#eaeef3;color:#00193a}.hljs-doctag,.hljs-keyword,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-strong,.hljs-title{font-weight:700}.hljs-comment{color:#738191}.hljs-addition,.hljs-built_in,.hljs-literal,.hljs-name,.hljs-quote,.hljs-section,.hljs-selector-class,.hljs-selector-id,.hljs-string,.hljs-tag,.hljs-title,.hljs-type{color:#0048ab}.hljs-attribute,.hljs-bullet,.hljs-deletion,.hljs-link,.hljs-meta,.hljs-regexp,.hljs-subst,.hljs-symbol,.hljs-template-variable,.hljs-variable{color:#4c81c9}.hljs-emphasis{font-style:italic} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/monokai-sublime.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#23241f;color:#f8f8f2}.hljs-subst,.hljs-tag{color:#f8f8f2}.hljs-emphasis,.hljs-strong{color:#a8a8a2}.hljs-bullet,.hljs-link,.hljs-literal,.hljs-number,.hljs-quote,.hljs-regexp{color:#ae81ff}.hljs-code,.hljs-section,.hljs-selector-class,.hljs-title{color:#a6e22e}.hljs-strong{font-weight:700}.hljs-emphasis{font-style:italic}.hljs-attr,.hljs-keyword,.hljs-name,.hljs-selector-tag{color:#f92672}.hljs-attribute,.hljs-symbol{color:#66d9ef}.hljs-class .hljs-title,.hljs-params,.hljs-title.class_{color:#f8f8f2}.hljs-addition,.hljs-built_in,.hljs-selector-attr,.hljs-selector-id,.hljs-selector-pseudo,.hljs-string,.hljs-template-variable,.hljs-type,.hljs-variable{color:#e6db74}.hljs-comment,.hljs-deletion,.hljs-meta{color:#75715e} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/monokai.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#272822;color:#ddd}.hljs-keyword,.hljs-literal,.hljs-name,.hljs-selector-tag,.hljs-strong,.hljs-tag{color:#f92672}.hljs-code{color:#66d9ef}.hljs-attribute,.hljs-link,.hljs-regexp,.hljs-symbol{color:#bf79db}.hljs-addition,.hljs-built_in,.hljs-bullet,.hljs-emphasis,.hljs-section,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-string,.hljs-subst,.hljs-template-tag,.hljs-template-variable,.hljs-title,.hljs-type,.hljs-variable{color:#a6e22e}.hljs-class .hljs-title,.hljs-title.class_{color:#fff}.hljs-comment,.hljs-deletion,.hljs-meta,.hljs-quote{color:#75715e}.hljs-doctag,.hljs-keyword,.hljs-literal,.hljs-section,.hljs-selector-id,.hljs-selector-tag,.hljs-title,.hljs-type{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/obsidian.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#e0e2e4;background:#282b2e}.hljs-keyword,.hljs-literal,.hljs-selector-id,.hljs-selector-tag{color:#93c763}.hljs-number{color:#ffcd22}.hljs-attribute{color:#668bb0}.hljs-link,.hljs-regexp{color:#d39745}.hljs-meta{color:#557182}.hljs-addition,.hljs-built_in,.hljs-bullet,.hljs-emphasis,.hljs-name,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-subst,.hljs-tag,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable{color:#8cbbad}.hljs-string,.hljs-symbol{color:#ec7600}.hljs-comment,.hljs-deletion,.hljs-quote{color:#818e96}.hljs-selector-class{color:#a082bd}.hljs-doctag,.hljs-keyword,.hljs-literal,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-strong,.hljs-title,.hljs-type{font-weight:700}.hljs-class .hljs-title,.hljs-code,.hljs-section,.hljs-title.class_{color:#fff} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/paraiso-dark.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#2f1e2e;color:#a39e9b}.hljs-comment,.hljs-quote{color:#8d8687}.hljs-link,.hljs-meta,.hljs-name,.hljs-regexp,.hljs-selector-class,.hljs-selector-id,.hljs-tag,.hljs-template-variable,.hljs-variable{color:#ef6155}.hljs-built_in,.hljs-deletion,.hljs-literal,.hljs-number,.hljs-params,.hljs-type{color:#f99b15}.hljs-attribute,.hljs-section,.hljs-title{color:#fec418}.hljs-addition,.hljs-bullet,.hljs-string,.hljs-symbol{color:#48b685}.hljs-keyword,.hljs-selector-tag{color:#815ba4}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/paraiso-light.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#e7e9db;color:#4f424c}.hljs-comment,.hljs-quote{color:#776e71}.hljs-link,.hljs-meta,.hljs-name,.hljs-regexp,.hljs-selector-class,.hljs-selector-id,.hljs-tag,.hljs-template-variable,.hljs-variable{color:#ef6155}.hljs-built_in,.hljs-deletion,.hljs-literal,.hljs-number,.hljs-params,.hljs-type{color:#f99b15}.hljs-attribute,.hljs-section,.hljs-title{color:#fec418}.hljs-addition,.hljs-bullet,.hljs-string,.hljs-symbol{color:#48b685}.hljs-keyword,.hljs-selector-tag{color:#815ba4}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/pojoaque.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/highlight/styles/pojoaque.jpg -------------------------------------------------------------------------------- /website/_libs/highlight/styles/pojoaque.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#dccf8f;background:url(./pojoaque.jpg) left top #181914}.hljs-comment,.hljs-quote{color:#586e75;font-style:italic}.hljs-addition,.hljs-keyword,.hljs-literal,.hljs-selector-tag{color:#b64926}.hljs-doctag,.hljs-number,.hljs-regexp,.hljs-string{color:#468966}.hljs-built_in,.hljs-name,.hljs-section,.hljs-title{color:#ffb03b}.hljs-class .hljs-title,.hljs-tag,.hljs-template-variable,.hljs-title.class_,.hljs-type,.hljs-variable{color:#b58900}.hljs-attribute{color:#b89859}.hljs-bullet,.hljs-link,.hljs-meta,.hljs-subst,.hljs-symbol{color:#cb4b16}.hljs-deletion{color:#dc322f}.hljs-selector-class,.hljs-selector-id{color:#d3a60c}.hljs-formula{background:#073642}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/purebasic.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#ffffdf}.hljs,.hljs-attr,.hljs-function,.hljs-name,.hljs-number,.hljs-params,.hljs-subst,.hljs-type{color:#000}.hljs-addition,.hljs-comment,.hljs-regexp,.hljs-section,.hljs-selector-pseudo{color:#0aa}.hljs-built_in,.hljs-class,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-selector-class{color:#066;font-weight:700}.hljs-code,.hljs-tag,.hljs-title,.hljs-variable{color:#066}.hljs-selector-attr,.hljs-string{color:#0080ff}.hljs-attribute,.hljs-deletion,.hljs-link,.hljs-symbol{color:#924b72}.hljs-literal,.hljs-meta,.hljs-selector-id{color:#924b72;font-weight:700}.hljs-name,.hljs-strong{font-weight:700}.hljs-emphasis{font-style:italic} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/qtcreator-dark.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#aaa;background:#000}.hljs-emphasis,.hljs-strong{color:#a8a8a2}.hljs-bullet,.hljs-literal,.hljs-number,.hljs-quote,.hljs-regexp{color:#f5f}.hljs-code .hljs-selector-class{color:#aaf}.hljs-emphasis,.hljs-stronge,.hljs-type{font-style:italic}.hljs-function,.hljs-keyword,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-symbol{color:#ff5}.hljs-subst,.hljs-tag,.hljs-title{color:#aaa}.hljs-attribute{color:#f55}.hljs-class .hljs-title,.hljs-params,.hljs-title.class_,.hljs-variable{color:#88f}.hljs-addition,.hljs-built_in,.hljs-link,.hljs-selector-attr,.hljs-selector-id,.hljs-selector-pseudo,.hljs-string,.hljs-template-tag,.hljs-template-variable,.hljs-type{color:#f5f}.hljs-comment,.hljs-deletion,.hljs-meta{color:#5ff} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/qtcreator-light.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#000;background:#fff}.hljs-emphasis,.hljs-strong{color:#000}.hljs-bullet,.hljs-literal,.hljs-number,.hljs-quote,.hljs-regexp{color:navy}.hljs-code .hljs-selector-class{color:purple}.hljs-emphasis,.hljs-stronge,.hljs-type{font-style:italic}.hljs-function,.hljs-keyword,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-symbol{color:olive}.hljs-subst,.hljs-tag,.hljs-title{color:#000}.hljs-attribute{color:maroon}.hljs-class .hljs-title,.hljs-params,.hljs-title.class_,.hljs-variable{color:#0055af}.hljs-addition,.hljs-built_in,.hljs-comment,.hljs-deletion,.hljs-link,.hljs-meta,.hljs-selector-attr,.hljs-selector-id,.hljs-selector-pseudo,.hljs-string,.hljs-template-tag,.hljs-template-variable,.hljs-type{color:green} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/rainbow.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#474949;color:#d1d9e1}.hljs-comment,.hljs-quote{color:#969896;font-style:italic}.hljs-addition,.hljs-keyword,.hljs-literal,.hljs-selector-tag,.hljs-type{color:#c9c}.hljs-number,.hljs-selector-attr,.hljs-selector-pseudo{color:#f99157}.hljs-doctag,.hljs-regexp,.hljs-string{color:#8abeb7}.hljs-built_in,.hljs-name,.hljs-section,.hljs-title{color:#b5bd68}.hljs-class .hljs-title,.hljs-selector-id,.hljs-template-variable,.hljs-title.class_,.hljs-variable{color:#fc6}.hljs-name,.hljs-section,.hljs-strong{font-weight:700}.hljs-bullet,.hljs-link,.hljs-meta,.hljs-subst,.hljs-symbol{color:#f99157}.hljs-deletion{color:#dc322f}.hljs-formula{background:#eee8d5}.hljs-attr,.hljs-attribute{color:#81a2be}.hljs-emphasis{font-style:italic} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/routeros.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#444;background:#f0f0f0}.hljs-subst{color:#444}.hljs-comment{color:#888}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-name,.hljs-selector-tag{font-weight:700}.hljs-attribute{color:#0e9a00}.hljs-function{color:#99069a}.hljs-deletion,.hljs-number,.hljs-quote,.hljs-selector-class,.hljs-selector-id,.hljs-string,.hljs-template-tag,.hljs-type{color:#800}.hljs-section,.hljs-title{color:#800;font-weight:700}.hljs-link,.hljs-regexp,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-symbol,.hljs-template-variable,.hljs-variable{color:#bc6060}.hljs-literal{color:#78a960}.hljs-addition,.hljs-built_in,.hljs-bullet,.hljs-code{color:#0c9a9a}.hljs-meta{color:#1f7199}.hljs-meta .hljs-string{color:#4d99bf}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/school-book.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#3e5915;background:#f6f5b2}.hljs-keyword,.hljs-literal,.hljs-selector-tag{color:#059}.hljs-subst{color:#3e5915}.hljs-addition,.hljs-attribute,.hljs-built_in,.hljs-bullet,.hljs-link,.hljs-section,.hljs-string,.hljs-symbol,.hljs-template-tag,.hljs-template-variable,.hljs-title,.hljs-type,.hljs-variable{color:#2c009f}.hljs-comment,.hljs-deletion,.hljs-meta,.hljs-quote{color:#e60415}.hljs-doctag,.hljs-keyword,.hljs-literal,.hljs-name,.hljs-section,.hljs-selector-id,.hljs-selector-tag,.hljs-strong,.hljs-title,.hljs-type{font-weight:700}.hljs-emphasis{font-style:italic} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/shades-of-purple.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#2d2b57;color:#e3dfff;font-weight:400}.hljs-subst{color:#e3dfff}.hljs-title{color:#fad000;font-weight:400}.hljs-name{color:#a1feff}.hljs-tag{color:#fff}.hljs-attr{color:#f8d000;font-style:italic}.hljs-built_in,.hljs-keyword,.hljs-section,.hljs-selector-tag{color:#fb9e00}.hljs-addition,.hljs-attribute,.hljs-bullet,.hljs-code,.hljs-deletion,.hljs-quote,.hljs-regexp,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-pseudo,.hljs-string,.hljs-symbol,.hljs-template-tag{color:#4cd213}.hljs-meta,.hljs-meta .hljs-string{color:#fb9e00}.hljs-comment{color:#ac65ff}.hljs-keyword,.hljs-literal,.hljs-name,.hljs-selector-tag,.hljs-strong{font-weight:400}.hljs-literal,.hljs-number{color:#fa658d}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/srcery.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#1c1b19;color:#fce8c3}.hljs-literal,.hljs-quote,.hljs-subst{color:#fce8c3}.hljs-symbol,.hljs-type{color:#68a8e4}.hljs-deletion,.hljs-keyword{color:#ef2f27}.hljs-attribute,.hljs-function,.hljs-name,.hljs-section,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-selector-pseudo,.hljs-title{color:#fbb829}.hljs-class,.hljs-code,.hljs-property,.hljs-template-variable,.hljs-variable{color:#0aaeb3}.hljs-addition,.hljs-bullet,.hljs-regexp,.hljs-string{color:#98bc37}.hljs-built_in,.hljs-params{color:#ff5c8f}.hljs-selector-tag,.hljs-template-tag{color:#2c78bf}.hljs-comment,.hljs-link,.hljs-meta,.hljs-number{color:#918175}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/stackoverflow-dark.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*! 2 | Theme: StackOverflow Dark 3 | Description: Dark theme as used on stackoverflow.com 4 | Author: stackoverflow.com 5 | Maintainer: @Hirse 6 | Website: https://github.com/StackExchange/Stacks 7 | License: MIT 8 | Updated: 2021-05-15 9 | 10 | Updated for @stackoverflow/stacks v0.64.0 11 | Code Blocks: /blob/v0.64.0/lib/css/components/_stacks-code-blocks.less 12 | Colors: /blob/v0.64.0/lib/css/exports/_stacks-constants-colors.less 13 | */.hljs{color:#fff;background:#1c1b1b}.hljs-subst{color:#fff}.hljs-comment{color:#999}.hljs-attr,.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-section,.hljs-selector-tag{color:#88aece}.hljs-attribute{color:#c59bc1}.hljs-name,.hljs-number,.hljs-quote,.hljs-selector-id,.hljs-template-tag,.hljs-type{color:#f08d49}.hljs-selector-class{color:#88aece}.hljs-link,.hljs-regexp,.hljs-selector-attr,.hljs-string,.hljs-symbol,.hljs-template-variable,.hljs-variable{color:#b5bd68}.hljs-meta,.hljs-selector-pseudo{color:#88aece}.hljs-built_in,.hljs-literal,.hljs-title{color:#f08d49}.hljs-bullet,.hljs-code{color:#ccc}.hljs-meta .hljs-string{color:#b5bd68}.hljs-deletion{color:#de7176}.hljs-addition{color:#76c490}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/stackoverflow-light.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*! 2 | Theme: StackOverflow Light 3 | Description: Light theme as used on stackoverflow.com 4 | Author: stackoverflow.com 5 | Maintainer: @Hirse 6 | Website: https://github.com/StackExchange/Stacks 7 | License: MIT 8 | Updated: 2021-05-15 9 | 10 | Updated for @stackoverflow/stacks v0.64.0 11 | Code Blocks: /blob/v0.64.0/lib/css/components/_stacks-code-blocks.less 12 | Colors: /blob/v0.64.0/lib/css/exports/_stacks-constants-colors.less 13 | */.hljs{color:#2f3337;background:#f6f6f6}.hljs-subst{color:#2f3337}.hljs-comment{color:#656e77}.hljs-attr,.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-section,.hljs-selector-tag{color:#015692}.hljs-attribute{color:#803378}.hljs-name,.hljs-number,.hljs-quote,.hljs-selector-id,.hljs-template-tag,.hljs-type{color:#b75501}.hljs-selector-class{color:#015692}.hljs-link,.hljs-regexp,.hljs-selector-attr,.hljs-string,.hljs-symbol,.hljs-template-variable,.hljs-variable{color:#54790d}.hljs-meta,.hljs-selector-pseudo{color:#015692}.hljs-built_in,.hljs-literal,.hljs-title{color:#b75501}.hljs-bullet,.hljs-code{color:#535a60}.hljs-meta .hljs-string{color:#54790d}.hljs-deletion{color:#c02d2e}.hljs-addition{color:#2f6f44}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/sunburst.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#000;color:#f8f8f8}.hljs-comment,.hljs-quote{color:#aeaeae;font-style:italic}.hljs-keyword,.hljs-selector-tag,.hljs-type{color:#e28964}.hljs-string{color:#65b042}.hljs-subst{color:#daefa3}.hljs-link,.hljs-regexp{color:#e9c062}.hljs-name,.hljs-section,.hljs-tag,.hljs-title{color:#89bdff}.hljs-class .hljs-title,.hljs-doctag,.hljs-title.class_{text-decoration:underline}.hljs-bullet,.hljs-number,.hljs-symbol{color:#3387cc}.hljs-params,.hljs-template-variable,.hljs-variable{color:#3e87e3}.hljs-attribute{color:#cda869}.hljs-meta{color:#8996a8}.hljs-formula{background-color:#0e2231;color:#f8f8f8;font-style:italic}.hljs-addition{background-color:#253b22;color:#f8f8f8}.hljs-deletion{background-color:#420e09;color:#f8f8f8}.hljs-selector-class{color:#9b703f}.hljs-selector-id{color:#8b98ab}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/tokyo-night-dark.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*! 2 | Theme: Tokyo-night-Dark 3 | origin: https://github.com/enkia/tokyo-night-vscode-theme 4 | Description: Original highlight.js style 5 | Author: (c) Henri Vandersleyen 6 | License: see project LICENSE 7 | Touched: 2022 8 | */.hljs-comment,.hljs-meta{color:#565f89}.hljs-deletion,.hljs-doctag,.hljs-regexp,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-selector-pseudo,.hljs-tag,.hljs-template-tag,.hljs-variable.language_{color:#f7768e}.hljs-link,.hljs-literal,.hljs-number,.hljs-params,.hljs-template-variable,.hljs-type,.hljs-variable{color:#ff9e64}.hljs-attribute,.hljs-built_in{color:#e0af68}.hljs-keyword,.hljs-property,.hljs-subst,.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#7dcfff}.hljs-selector-tag{color:#73daca}.hljs-addition,.hljs-bullet,.hljs-quote,.hljs-string,.hljs-symbol{color:#9ece6a}.hljs-code,.hljs-formula,.hljs-section{color:#7aa2f7}.hljs-attr,.hljs-char.escape_,.hljs-keyword,.hljs-name,.hljs-operator{color:#bb9af7}.hljs-punctuation{color:#c0caf5}.hljs{background:#1a1b26;color:#9aa5ce}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/tokyo-night-light.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*! 2 | Theme: Tokyo-night-light 3 | origin: https://github.com/enkia/tokyo-night-vscode-theme 4 | Description: Original highlight.js style 5 | Author: (c) Henri Vandersleyen 6 | License: see project LICENSE 7 | Touched: 2022 8 | */.hljs-comment,.hljs-meta{color:#9699a3}.hljs-deletion,.hljs-doctag,.hljs-regexp,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-selector-pseudo,.hljs-tag,.hljs-template-tag,.hljs-variable.language_{color:#8c4351}.hljs-link,.hljs-literal,.hljs-number,.hljs-params,.hljs-template-variable,.hljs-type,.hljs-variable{color:#965027}.hljs-attribute,.hljs-built_in{color:#8f5e15}.hljs-keyword,.hljs-property,.hljs-subst,.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#0f4b6e}.hljs-selector-tag{color:#33635c}.hljs-addition,.hljs-bullet,.hljs-quote,.hljs-string,.hljs-symbol{color:#485e30}.hljs-code,.hljs-formula,.hljs-section{color:#34548a}.hljs-attr,.hljs-char.escape_,.hljs-keyword,.hljs-name,.hljs-operator{color:#5a4a78}.hljs-punctuation{color:#343b58}.hljs{background:#d5d6db;color:#565a6e}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/tomorrow-night-blue.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs-comment,.hljs-quote{color:#7285b7}.hljs-deletion,.hljs-name,.hljs-regexp,.hljs-selector-class,.hljs-selector-id,.hljs-tag,.hljs-template-variable,.hljs-variable{color:#ff9da4}.hljs-built_in,.hljs-link,.hljs-literal,.hljs-meta,.hljs-number,.hljs-params,.hljs-type{color:#ffc58f}.hljs-attribute{color:#ffeead}.hljs-addition,.hljs-bullet,.hljs-string,.hljs-symbol{color:#d1f1a9}.hljs-section,.hljs-title{color:#bbdaff}.hljs-keyword,.hljs-selector-tag{color:#ebbbff}.hljs{background:#002451;color:#fff}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/tomorrow-night-bright.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs-comment,.hljs-quote{color:#969896}.hljs-deletion,.hljs-name,.hljs-regexp,.hljs-selector-class,.hljs-selector-id,.hljs-tag,.hljs-template-variable,.hljs-variable{color:#d54e53}.hljs-built_in,.hljs-link,.hljs-literal,.hljs-meta,.hljs-number,.hljs-params,.hljs-type{color:#e78c45}.hljs-attribute{color:#e7c547}.hljs-addition,.hljs-bullet,.hljs-string,.hljs-symbol{color:#b9ca4a}.hljs-section,.hljs-title{color:#7aa6da}.hljs-keyword,.hljs-selector-tag{color:#c397d8}.hljs{background:#000;color:#eaeaea}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/vs.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#fff;color:#000}.hljs-comment,.hljs-quote,.hljs-variable{color:green}.hljs-built_in,.hljs-keyword,.hljs-name,.hljs-selector-tag,.hljs-tag{color:#00f}.hljs-addition,.hljs-attribute,.hljs-literal,.hljs-section,.hljs-string,.hljs-template-tag,.hljs-template-variable,.hljs-title,.hljs-type{color:#a31515}.hljs-deletion,.hljs-meta,.hljs-selector-attr,.hljs-selector-pseudo{color:#2b91af}.hljs-doctag{color:grey}.hljs-attr{color:red}.hljs-bullet,.hljs-link,.hljs-symbol{color:#00b0e8}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/vs2015.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#1e1e1e;color:#dcdcdc}.hljs-keyword,.hljs-literal,.hljs-name,.hljs-symbol{color:#569cd6}.hljs-link{color:#569cd6;text-decoration:underline}.hljs-built_in,.hljs-type{color:#4ec9b0}.hljs-class,.hljs-number{color:#b8d7a3}.hljs-meta .hljs-string,.hljs-string{color:#d69d85}.hljs-regexp,.hljs-template-tag{color:#9a5334}.hljs-formula,.hljs-function,.hljs-params,.hljs-subst,.hljs-title{color:#dcdcdc}.hljs-comment,.hljs-quote{color:#57a64a;font-style:italic}.hljs-doctag{color:#608b4e}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-tag{color:#9b9b9b}.hljs-template-variable,.hljs-variable{color:#bd63c5}.hljs-attr,.hljs-attribute{color:#9cdcfe}.hljs-section{color:gold}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-bullet,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-selector-pseudo,.hljs-selector-tag{color:#d7ba7d}.hljs-addition{background-color:#144212;display:inline-block;width:100%}.hljs-deletion{background-color:#600;display:inline-block;width:100%} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/xcode.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#fff;color:#000}.xml .hljs-meta{color:silver}.hljs-comment,.hljs-quote{color:#007400}.hljs-attribute,.hljs-keyword,.hljs-literal,.hljs-name,.hljs-selector-tag,.hljs-tag{color:#aa0d91}.hljs-template-variable,.hljs-variable{color:#3f6e74}.hljs-code,.hljs-meta .hljs-string,.hljs-string{color:#c41a16}.hljs-link,.hljs-regexp{color:#0e0eff}.hljs-bullet,.hljs-number,.hljs-symbol,.hljs-title{color:#1c00cf}.hljs-meta,.hljs-section{color:#643820}.hljs-built_in,.hljs-class .hljs-title,.hljs-params,.hljs-title.class_,.hljs-type{color:#5c2699}.hljs-attr{color:#836c28}.hljs-subst{color:#000}.hljs-formula{background-color:#eee;font-style:italic}.hljs-addition{background-color:#baeeba}.hljs-deletion{background-color:#ffc8bd}.hljs-selector-class,.hljs-selector-id{color:#9b703f}.hljs-doctag,.hljs-strong{font-weight:700}.hljs-emphasis{font-style:italic} -------------------------------------------------------------------------------- /website/_libs/highlight/styles/xt256.min.css: -------------------------------------------------------------------------------- 1 | pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#eaeaea;background:#000}.hljs-subst{color:#eaeaea}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-type{color:#eaeaea}.hljs-params{color:#da0000}.hljs-literal,.hljs-name,.hljs-number{color:red;font-weight:bolder}.hljs-comment{color:#969896}.hljs-quote,.hljs-selector-id{color:#0ff}.hljs-template-variable,.hljs-title,.hljs-variable{color:#0ff;font-weight:700}.hljs-keyword,.hljs-selector-class,.hljs-symbol{color:#fff000}.hljs-bullet,.hljs-string{color:#0f0}.hljs-section,.hljs-tag{color:#000fff}.hljs-selector-tag{color:#000fff;font-weight:700}.hljs-attribute,.hljs-built_in,.hljs-link,.hljs-regexp{color:#f0f}.hljs-meta{color:#fff;font-weight:bolder} -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_AMS-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_AMS-Regular.ttf -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_AMS-Regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_AMS-Regular.woff -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_AMS-Regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_AMS-Regular.woff2 -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Caligraphic-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Caligraphic-Bold.ttf -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Caligraphic-Bold.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Caligraphic-Bold.woff -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Caligraphic-Bold.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Caligraphic-Bold.woff2 -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Caligraphic-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Caligraphic-Regular.ttf -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Caligraphic-Regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Caligraphic-Regular.woff -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Caligraphic-Regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Caligraphic-Regular.woff2 -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Fraktur-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Fraktur-Bold.ttf -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Fraktur-Bold.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Fraktur-Bold.woff -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Fraktur-Bold.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Fraktur-Bold.woff2 -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Fraktur-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Fraktur-Regular.ttf -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Fraktur-Regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Fraktur-Regular.woff -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Fraktur-Regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Fraktur-Regular.woff2 -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Main-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Main-Bold.ttf -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Main-Bold.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Main-Bold.woff -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Main-Bold.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Main-Bold.woff2 -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Main-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Main-BoldItalic.ttf -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Main-BoldItalic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Main-BoldItalic.woff -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Main-BoldItalic.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Main-BoldItalic.woff2 -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Main-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Main-Italic.ttf -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Main-Italic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Main-Italic.woff -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Main-Italic.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Main-Italic.woff2 -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Main-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Main-Regular.ttf -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Main-Regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Main-Regular.woff -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Main-Regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Main-Regular.woff2 -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Math-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Math-BoldItalic.ttf -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Math-BoldItalic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Math-BoldItalic.woff -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Math-BoldItalic.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Math-BoldItalic.woff2 -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Math-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Math-Italic.ttf -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Math-Italic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Math-Italic.woff -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Math-Italic.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Math-Italic.woff2 -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_SansSerif-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_SansSerif-Bold.ttf -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_SansSerif-Bold.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_SansSerif-Bold.woff -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_SansSerif-Bold.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_SansSerif-Bold.woff2 -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_SansSerif-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_SansSerif-Italic.ttf -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_SansSerif-Italic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_SansSerif-Italic.woff -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_SansSerif-Italic.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_SansSerif-Italic.woff2 -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_SansSerif-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_SansSerif-Regular.ttf -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_SansSerif-Regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_SansSerif-Regular.woff -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_SansSerif-Regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_SansSerif-Regular.woff2 -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Script-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Script-Regular.ttf -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Script-Regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Script-Regular.woff -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Script-Regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Script-Regular.woff2 -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Size1-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Size1-Regular.ttf -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Size1-Regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Size1-Regular.woff -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Size1-Regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Size1-Regular.woff2 -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Size2-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Size2-Regular.ttf -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Size2-Regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Size2-Regular.woff -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Size2-Regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Size2-Regular.woff2 -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Size3-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Size3-Regular.ttf -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Size3-Regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Size3-Regular.woff -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Size3-Regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Size3-Regular.woff2 -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Size4-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Size4-Regular.ttf -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Size4-Regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Size4-Regular.woff -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Size4-Regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Size4-Regular.woff2 -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Typewriter-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Typewriter-Regular.ttf -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Typewriter-Regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Typewriter-Regular.woff -------------------------------------------------------------------------------- /website/_libs/katex/fonts/KaTeX_Typewriter-Regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GiggleLiu/ModernScientificComputing/e9051873755364160d4f650beb6104021052ba59/website/_libs/katex/fonts/KaTeX_Typewriter-Regular.woff2 -------------------------------------------------------------------------------- /website/config.md: -------------------------------------------------------------------------------- 1 | 4 | +++ 5 | author = "Jinguo Liu" 6 | mintoclevel = 2 7 | 8 | # Add here files or directories that should be ignored by Franklin, otherwise 9 | # these files might be copied and, if markdown, processed by Franklin which 10 | # you might not want. Indicate directories by ending the name with a `/`. 11 | # Base files such as LICENSE.md and README.md are ignored by default. 12 | ignore = ["node_modules/", "_ignore/"] 13 | 14 | # RSS (the website_{title, descr, url} must be defined to get RSS) 15 | generate_rss = true 16 | website_title = "Course AMAT5315" 17 | website_descr = "The modern way of learning scientific computing" 18 | prepath = "ModernScientificComputing" 19 | website_url = "https://giggleliu.github.io/ModernScientificComputing" 20 | +++ 21 | 22 | 25 | \newcommand{\R}{\mathbb R} 26 | \newcommand{\scal}[1]{\langle #1 \rangle} 27 | -------------------------------------------------------------------------------- /website/index.md: -------------------------------------------------------------------------------- 1 | @def title = "Modern Scientific Computing" 2 | @def tags = ["jinguo liu", "scientific computing", "julia"] 3 | 4 | # Modern Scientific Computing 5 | 6 | ~~~ 7 |

The modern way of learning scientific computing ☞ github repo

8 |
9 | {{msc}} 10 | ~~~ 11 | -------------------------------------------------------------------------------- /website/msc.md: -------------------------------------------------------------------------------- 1 | @def title = "Modern Scientific Computing" 2 | 3 | # Modern Scientific Computing 4 | ~~~ 5 | {{msc}} 6 | ~~~ 7 | -------------------------------------------------------------------------------- /website/package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "requires": true, 3 | "lockfileVersion": 1, 4 | "dependencies": { 5 | "highlight.js": { 6 | "version": "11.7.0", 7 | "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-11.7.0.tgz", 8 | "integrity": "sha512-1rRqesRFhMO/PRF+G86evnyJkCgaZFOI+Z6kdj15TA18funfoqJXvgPCLSf0SWq3SRfg1j3HlDs8o4s3EGq1oQ==" 9 | } 10 | } 11 | } 12 | --------------------------------------------------------------------------------