# 실전 줄리아 심화과정
## 1. 세미나
- `XLSL.jl`: 일반 `*.csv` 파일이 아닌 엑셀 파일 `*.xlsl`을 읽어들이는 패키지
- https://felipenoris.github.io/XLSX.jl/stable/tutorial/
- `PlutoUI.jl`: 줄리아 노트북인 Pluto의 상호작용에 관한 패키지
- https://github.com/JuliaPluto/PlutoUI.jl
- `Dates`: 날짜의 연산에 관한 모듈
- https://docs.julialang.org/en/v1/stdlib/Dates/
<!--
```julia
using Dates
오늘 = DateTime(2022,3,10)
typeof(오늘)
propertynames(오늘)
오늘.instant
myformat = DateFormat("d-m-y")
내일 = Date("11-3-2022", myformat)
Dates.dayname(내일)
일주일뒤까지 = 오늘:Day(1):DateTime(2022,3,17)
collect(일주일뒤까지)
Dates.Day(일주일뒤까지[end]) - Dates.Day(오늘)
```
-->
## 2. 공간
- `IntervalArithmetic.jl`: 구간에 대한 계산을 지원하는 패키지
- https://juliaintervals.github.io/pages/tutorials/tutorialArithmetic/#changing_bounds_precision
- `LinearAlgebra`: 행렬대수에 관한 모듈
- https://docs.julialang.org/en/v1/stdlib/LinearAlgebra/#man-linalg
- `SparseArrays`: 희소배열에 관한 모듈
- https://docs.julialang.org/en/v1/stdlib/SparseArrays/
<!--
```julia
using LinearAlgebra
A = [
1 0 3
0 5 1
3 1 9
]
tr(A)
det(A)
inv(A)
round.(Int64, inv(A))
diag(A)
diagm([1,5,9])
norm(A, 1)
eigvals(A)
eigvecs(A)
eigmax(A)
factorize(A)
svd(A)
B = [
1 0 1
1 1 0
2 1 1
]
det(B)
rank(B)
eigvals(B)
Symmetric(B) # |> issymmetric
transpose(B)
B'
C = [
im im 1
2 im 0
im 1 2
]
C'
B'B
x = [1,2,3]
y = [0,1,2]
x'y
A + B
A - B
A * B
A .* B
B / A
B * inv(A)
[A B]
[A;B]
[A,B]
x' * y
y * x'
```
-->
## 3. 수학
- `InverseFunctions.jl`
- https://github.com/JuliaMath/InverseFunctions.jl
- `DifferentialEquations.jl`
- https://diffeq.sciml.ai/stable/
- `Combinatorics.jl`
- https://github.com/JuliaMath/Combinatorics.jl
## 4. 코딩
- `ProfileView.jl`
- https://github.com/timholy/ProfileView.jl
- `CUDA.jl`
- https://github.com/JuliaGPU/CUDA.jl
- `Logging`
- https://docs.julialang.org/en/v1/stdlib/Logging/
<!-- ## 5.
- `Metatheory.jl`
- https://github.com/JuliaSymbolics/Metatheory.jl
- `
Feather.jl`
- https://github.com/JuliaData/Feather.jl
-
-->
## 1차 과제: mnist Classification
## 2차 과제: `FEM.jl`을 통한 RPS 편미분방정식의 풀이