OpticSim.jl
JuliaAdviceForMatlabProgrammers
OpticSim.jl | JuliaAdviceForMatlabProgrammers | |
---|---|---|
6 | 1 | |
347 | 38 | |
- | - | |
6.4 | 0.0 | |
over 1 year ago | almost 2 years ago | |
Julia | ||
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
OpticSim.jl
-
Favorite Optical Design Freeware?
you can try something with python https://github.com/microsoft/OpticSim.jl
- OpticSim.jl: optical simulation using Julia
- Opticsim.jl: Optical Simulation Software
-
Hacker News top posts: Mar 22, 2021
Opticsim.jl: Optical Simulation Software\ (7 comments)
JuliaAdviceForMatlabProgrammers
-
Opticsim.jl: Optical Simulation Software
I think people often underestimate (or just plain don't know about) the degree to which a multiple-dispatch-based programming language like Julia effectively implies its whole own dispatch-oriented programming paradigm, with both some amazing advantages (composability [1], and an IMO excellent balance of speed and interactivity when combined with JAOT compilation), but also some entirely new pitfalls to watch out for (particularly, type-instability [2,3]). Meanwhile, some habits and code patterns that may be seen as "best practices" in Python, Matlab can be detrimental and lead to excess allocations in Julia [4], so it may almost be easier to switch to Julia (and get good performance from day 1) if you are coming from a language like C where you are used to thinking about allocations, in-place methods, and loops being fast.
Things are definitely stabilizing a bit post-1.0, but it's still a young language, so it'll take a while for documentation to fully catch up; in the meanwhile, the best option in my experience has been to lurk the various chat forums (slack/zulip/etc.) and pick up best-practices from the folks on the cutting edge by osmosis.
[1] https://www.youtube.com/watch?v=kc9HwsxE1OY
[2] https://www.johnmyleswhite.com/notebook/2013/12/06/writing-t...
[3] https://docs.julialang.org/en/v1.5/manual/performance-tips/#...
[4] https://github.com/brenhinkeller/JuliaAdviceForMatlabProgram...
What are some alternatives?
gpt-neo - An implementation of model parallel GPT-2 and GPT-3-style models using the mesh-tensorflow library.
prysm - physical optics: integrated modeling, phase retrieval, segmented systems, polynomials and fitting, sequential raytracing...
simpler-state - The simplest app state management for React
artificial-intelligence - Insincere System design about building intelligence, based on neural fluid model. Still a draft and I'm gathering resources and design ideas. Modern AI is a fancy calculator. It cannot be a creator/creation. It cannot be a simulacra/simulation.
Agents.jl - Agent-based modeling framework in Julia
OpticsWorkbench