println("hello world") using Plots using JuMP using LinearAlgebra x = [1,2,3,5] print(x) using Metatheory
hmm if I want julia to work good, I need to make a command that is valid julia but also valid bash
#= =# multiline julia is not a bash comment
#= bash code julia won't run # =# julia code bash won't run
#= julia # =# julia code bash won't run
"julia": "#=\njulia\n# =#\ninclude($dir * \"$fileName\")",
Yes, that’s right, Mr. Vice President. I am a genius.
packagecompiler make sys images so that packages load faster
If you want just linear problems, you can also try Tulip (this is me self-advertising; I wrote it). It’s pure Julia, and should give you decent performance. If you want nonlinear problems, among the open-source pure Julia solvers, you have: COSMO, which supports several cones & quadratic objective. It’s based on ADMM, same as SCS/OSQP Hypatia, which supports the largest variety of cones (especially the ones you’ve never heard of). It’s based on interior-point, same as ECOS/Mosek. For LP and convex QP, there is also https://github.com/JuliaSmoothOptimizers/RipQP.jl
- Fellisson course Nice description of expression problem and multiple dispatch
- Rackauckas comments on paper about julia types
- Type Stability in Julia: Avoiding Performance Pathologies in JIT Compilation (Extended Version)
- World Age in Julia: Optimizing Method Dispatch in the Presence of Eval (Extended Version)
- Keno describing his lens AD thing diffractor
- What scientists must know about hardware to write fast code Interesting topics:
- World Age
- Multiple dispatch
- Subtyping and most specific type
- Max_methods = 1 as a good default?
- Type ambiguity?
- Function barriers
Evan’s new talk. Seems really cool. Categories for multiphysics?
Interesting project ideas:
- PyRes translation
- That prolog engine
- SMT modulo Convex
- Interactive Proofs
- probabilistic games use homotopy continuation
- Guarded rewrite rules
- Constraint programming compilation
- CHC from SSA
- linear relations / modules
Scientific Computing in Julia. Numerical Computing in Julia HPC in Julia Data Science in Julia Deep Learning in Julia Algorithm Design in Julia Physics for Programmers
Audience: Someone at my level or higher? People who do scientific computing? At labs? Engineers? Grad students? Hobbyists?
End Expectations: ? No one actually reads books
that optimization book in julia
Fluid Solver Wave Solver Fitting Data - An Inverse Problem Particle simulation Convnet ODE and PDE
Function Breaks, Type Stability Examining Code, llvm and native Fast Loops SIMD Parallelism GPU DSLs Partial Evaluation / Macros. generative functions Dispatch - Fast matrix overloading
Minimal: you can activate a environment.
From a julia repl, you can press
] to put it into Pkg mode
<code>pkg> activate .</code>
Revise.jl - You can use Revise.jl. If you’re editting a one off file, you can bring it into the repl with
includet so that it automatically reloads anytime you change the file.
<code>julia> using Revise julia> includet("myfile.jl") julia> myfunction(7) </code>
You should take a gander
This is how you get those slick little badges for documentation and
Unit testing. I don’t write tests for my code often enough, I know it’s a good thing to do. Here’s how you do it.
<code>using MyPkg using Test @testset "MyPkg.jl" begin # Write your tests here. @test true @test MyPkg.foo(2) == 4 end</code> <code>pkg> test MyPkg</code>