A feltörekvő nyílt forráskódú Julia programozási nyelvet úgy tervezték, hogy gyorsan és könnyen használható legyen. Mivel különösen alkalmas olyan numerikus alkalmazásokhoz, mint a differenciálegyenletek megoldása, németországi tudósok a teljesen megújuló energiatermelésre való áttérés kihívásainak feltárására használják.
A szén-dioxid-mentesítés vagy másnéven dekarbonizáció a villamosenergia-hálózatok radikális átalakítását kívánja meg. Ezek hatalmas, komplex rendszerek, sokféle korlátozással, bizonytalansággal és heterogenitással. Az elektromos hálózatok a jövőben még összetettebbé válnak, ezért új számítási eszközökre van szükség.
Az Amerikai Fizikai Intézet Chaos című folyóiratában a Potsdami Éghajlati Hatáskutató Intézet (PIK) tudósai egy olyan szoftvercsomagot mutattak be, amely komplex hálózatokon lehetővé teszi az általános dinamikus rendszerek szimulációját.
Egy nyílt forráskódú eszközt akartak létrehozni - így bárki ellenőrizheti a szoftver struktúráját és algoritmusait -, hogy a Julia ökoszisztémáján belül az összes legkorszerűbb algoritmus könnyen hozzáférhetővé váljon a mérnökök és fizikusok számára. NetworkDynamics.jl nevű csomagjuk egy másik, a PowerDynamics.jl számítási háttértáraként indult.
"Rájöttünk, hogy a mi számítási háttértárunk a dinamikus rendszerek közösségén belül más kutatók számára is hasznos lehet" - mondta Michael Lindner, a PIK kutatója. Munkájuk két elméleti pillérét a differenciálegyenletek és a komplex hálózatok adják.
"Azzal, hogy például az elektromos hálózatok vagy az agyak modelljeit hálózatokra vonatkozó differenciálegyenletek formájában fektetjük le, világos alapstruktúrát adunk nekik. hálózat kódolja a lokalitást, azt, hogy mi mivel lép kölcsönhatásba, a differenciálegyenletek pedig a dinamikát, azt, hogy a dolgok hogyan változnak az idővel" - tette hozzá Lindner.
A kutató elmonda, hogy először kiszámítják a hálózati komponensek közötti összes kölcsönhatást, majd az egyes komponensek visszahatását erre a kölcsönhatásra. Ez lehetővé teszi számunkra, hogy a rendszer teljes fejlődését két könnyen párhuzamosítható cikluson belül kiszámítsák.
Mivel a Juliában gyorsan és könnyen lehet írni, és van differenciálegyenletek megoldására szolgáló könyvtára (DifferentialEquations.jl), a kutatók egy nap alatt megvalósíthatják és szimulálhatják a bonyolult modelleket, ahelyett, hogy (mint más nyelvek esetében) egy hónapra lenne szükség.
"Ez megszünteti a tudományos kreativitást korlátozó akadályok egy részét. Korábban nem is gondoltam bizonyos modellekre és fontos kérdésekre, csak azért, mert az adott időbeli korlátok és programozási készségeim mellett teljesen elérhetetlennek tűntek" - mondta Lindner.
A kutató úgy véli, a nagy teljesítményű algoritmusok jó, intuitív felülete "manapság fontos a tudomány számára, mert lehetővé teszik a tudósoknak, hogy a kód és a megvalósítás részletei helyett a kutatási kérdéseikre és a modellekre koncentráljanak.