Scientific Programming
153 subscribers
158 photos
30 videos
138 files
442 links
Tutorials and applications from scientific programming

https://github.com/Ziaeemehr
Download Telegram
جولیا امکان توسعه سریع با استفاده از زبان سطح بالا و همزمان استفاده از سرعت اجرای نزدیک به زبان سی رو در اختیار میذاره.
مشکلی که برای استفاده از پکیج معادلات دیفرانسیل جولیا دیدم این هست که برای اجرای اسکریپت هر بار حدود یک دقیقه فقط زمان کامپایل طول میکشه. این در واقع هزینه ای هست که باید از زمان پرداخت بشه.
برای کامپایل حدودا یک گیگابایت هم از رم سیستم اشغال میشه. اینجا و اینجا بیشتر توضیح داده شده.
شاید بهتر باشه از حالت interactive استفاده بشه تا این زمان کامپایل هر بار برای اجرای script تکرار نشه.
پکیج StochasticDelayDiffEq به نظر هنوز در مرحله توسعه هست. ولی بقیه قسمت های پکیج معادلات دیفرانسیل به نظر خوب کار میکنه.
#julia
#DifferentialEquations.jl
🔆🔆🔆 Sysimages🔆🔆🔆

☘️ یک sysimage فایلی است که حاوی بسته های بارگیری شده و کدهای کامپایل شده و ... است.
با شروع جولیا همراه با یک sysimage جلسات (session) های ذخیره شده بارگیری می شوند.

مزیت استفاده از sysimage این هست که زمان بارگیری اولیه پکیجی که به sysimage اضافه شده حذف می شود.
عیب استفاده از اون هم این هست که پکیج در حالت قفل شده می ماند و امکان آپدیت کردن آن وجود ندارد. اگر پکیج مورد نظر نیاز به آپدیت داشته باشد باید پس از به روز رسانی مجدد sysimage ساخته شود.

Creating a sysimage using PackageCompiler

به طور خلاصه با استفاده از دستورات زیر میشه یک فایل sysimage.so بسازید.

یک مسیر برای فایل ایجاد کنید:
$ mkdir sysimages
$ cd sysimages
جولیا را اجرا کنید. -q فقط برای باز کردن محیط بدون بنر (به حالت quiet) هست.
$ julia -q
پکیج PackageCompiler را صدا بزنید. اگر نصب نشده ابتدا نصب کنید.


julia> using PackageCompiler

julia> ] # ptess ] to go to REPL environment
(v1.4) pkg> activate .
یک backspace بزنید تا از این محیط خارج شوید.
حالا بسته های مورد نظر رو اضافه کنید.
(v1.4) add DifferentialEquations OhMyREPL
julia> using DifferentialEquations
julia> using OhMyREPL
در انتها هم فایل sysimage.so را بسازید. این کار ممکنه چند دقیقه طول بکشد بنابراین صبور باشید.
PackageCompiler.create_sysimage([:OhMyREPL, :DifferentialEquations]; sysimage_path="sysimage.so")

☘️ برای استفاده از فایل sysimage.so هم اینطور عمل کنید:

$ julia -J[path to sysmage.so]
for example:
$ julia -J/home/abolfazl/sysimages/sysimage.so

حالا با بارگیری کردن بسته هایی که از قبل به فایل .so اضافه کرده اید تفاوت زمان بارگیری پکیج ها را احساس کنید.

میتونید به جای ایجاد فایل sysimage در یک مسیر دلخواه اون رو جایگزین حالت پیشفرض کنید. بنابراین جولیا به طور پیشفرض در هنگام شروع از اون فایل استفاده میکنه.
این ویژگی با اضافه کردن
replace_default=true
به دستور create_sysimage قابل استفاده است.
اینجا بیشتر بخوانید.
ویرگول
#sysimage
#julia
#PackageCompiler
@scientific_programming
☘️ I have added many examples, mostly about "Kuramoto model" (ODE, SDE) to the workshop Julia repository.
But the examples can be easily transformed to any arbitrary set of differential equations.
🌱 Feel free to look.
The speed up is usually one order of magnitude faster that scipy.odeint, numba and much faster that pure python equivalent.
#julia
#python
#diffeqpy
@scientific_programming
introduction_hdf5.pdf
36 KB
ذخیره داده ها با استفاده از کتابخانه hdf5 در julia
#julia
#hdf5
@scientific_programming
Create Package in #Julia Tutorial videos.