Skip to content

Commit 66b945a

Browse files
authored
Merge pull request #6 from JuliaFusion/omas_to_imasdd
Change from using OMAS.jl to IMASDD.jl to access IMAS data structure
2 parents e963c03 + 0e49ba2 commit 66b945a

File tree

3 files changed

+8
-6
lines changed

3 files changed

+8
-6
lines changed

Project.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ author = ["Luke Stagner <[email protected]>"]
44
version = "0.2.0"
55

66
[deps]
7+
IMASDD = "06b86afa-9f21-11ec-2ef8-e51b8960cfc5"
78
Interpolations = "a98d9a8b-a2ab-59e6-89dd-64a1c18fca59"
8-
OMAS = "91cfaa06-6526-4804-8666-b540b3feef2f"
99
PolygonOps = "647866c9-e3ac-4575-94e7-e3d426903924"
1010

1111
[compat]

src/io.jl

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
mutable struct GEQDSKFile
22
file::String # Source file
3+
time::Float64 # Time of the equilibrium reconstruction, in seconds
34
nw::Int # Number of horizontal R grid points
45
nh::Int # Number of vertical Z grid points
56
r::AbstractRange{Float64} # R grid points
@@ -75,6 +76,7 @@ function readg(gfile)
7576
s = split(desc)
7677

7778
time = Meta.parse(s[end-3])
79+
time /= 1000.0 # Assume it was written in ms and convert to s
7880
idum = Meta.parse(s[end-2])
7981
nw = Meta.parse(s[end-1])
8082
nh = Meta.parse(s[end])
@@ -160,7 +162,7 @@ function readg(gfile)
160162
z = range(zmid - 0.5*zdim, zmid + 0.5*zdim, length=nh)
161163
psi = range(simag, sibry, length=nw)
162164

163-
g = GEQDSKFile(gfile, nw,nh,r,z,rdim,zdim,rleft,zmid,nbbbs,rbbbs,zbbbs,limitr,rlim,zlim,
165+
g = GEQDSKFile(gfile,time,nw,nh,r,z,rdim,zdim,rleft,zmid,nbbbs,rbbbs,zbbbs,limitr,rlim,zlim,
164166
rcentr,bcentr,rmaxis,zmaxis,simag,sibry,psi,current,fpol,pres,ffprim,pprime,
165167
qpsi,psirz,rhovn)
166168

src/utils.jl

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
using Interpolations: Interpolations
22
using PolygonOps: PolygonOps
3-
using OMAS: OMAS
3+
using IMASDD: IMASDD
44

55
function triangularity(g::GEQDSKFile)
66
Rmin, Rmax = extrema(filter(!iszero,g.rbbbs))
@@ -68,13 +68,13 @@ psi: polidal magnetic flux / T m^2
6868
"""
6969
function fluxinfo(r::Vector, z::Vector, psi::Matrix)
7070
# Take some gradients
71-
dpsidr, dpsidz = OMAS.gradient(r, z, psi)
71+
dpsidr, dpsidz = IMASDD.gradient(r, z, psi)
7272
br = -dpsidz ./ r
7373
bz = dpsidr ./ r
7474
bpol2 = (br .^ 2) .+ (bz .^ 2)
7575
bpol = real.(sqrt.((br .^ 2) .+ (bz .^ 2)))
76-
d2psidr2, d2psidrdz = OMAS.gradient(r, z, dpsidr)
77-
d2psidzdr, d2psidz2 = OMAS.gradient(r, z, dpsidz)
76+
d2psidr2, d2psidrdz = IMASDD.gradient(r, z, dpsidr)
77+
d2psidzdr, d2psidz2 = IMASDD.gradient(r, z, dpsidz)
7878
d = d2psidr2 .* d2psidz2 .- d2psidrdz .^ 2
7979
return (br, bz, bpol, d)
8080
end

0 commit comments

Comments
 (0)