Loading graph_driver/xrays.cpp +11 −9 Original line number Diff line number Diff line Loading @@ -158,7 +158,7 @@ void trace_ray(const size_t num_times, // Inital conditions. if constexpr (jit::is_float<T> ()) { #if 0 #if 1 init_efit<T, float, SAFE_MATH> (omega, x, y, z, ky, kz, engine, local_num_rays); Loading @@ -168,7 +168,7 @@ void trace_ray(const size_t num_times, local_num_rays); #endif } else { #if 0 #if 1 init_efit<T, double, SAFE_MATH> (omega, x, y, z, ky, kz, engine, local_num_rays); Loading @@ -178,18 +178,18 @@ void trace_ray(const size_t num_times, local_num_rays); #endif } #if 0 #if 1 kx->set(static_cast<T> (-700.0)); #else kx->set(static_cast<T> (-30.0)); #endif auto eq = equilibrium::make_vmec<T, SAFE_MATH> (VMEC_FILE); //auto eq = equilibrium::make_efit<T, SAFE_MATH> (EFIT_FILE); //auto eq = equilibrium::make_vmec<T, SAFE_MATH> (VMEC_FILE); auto eq = equilibrium::make_efit<T, SAFE_MATH> (EFIT_FILE); //auto eq = equilibrium::make_slab_density<T, SAFE_MATH> (); //auto eq = equilibrium::make_slab_field<T, SAFE_MATH> (); //auto eq = equilibrium::make_no_magnetic_field<T, SAFE_MATH> (); #if 0 #if 1 const T endtime = static_cast<T> (2.0); #else const T endtime = static_cast<T> (0.2); Loading Loading @@ -325,8 +325,8 @@ void calculate_power(const size_t num_times, auto t = graph::variable<T, SAFE_MATH> (local_num_rays, "t"); auto kamp = graph::variable<T, SAFE_MATH> (local_num_rays, "kamp"); auto eq = equilibrium::make_vmec<T, SAFE_MATH> (VMEC_FILE); //auto eq = equilibrium::make_efit<T, SAFE_MATH> (EFIT_FILE); //auto eq = equilibrium::make_vmec<T, SAFE_MATH> (VMEC_FILE); auto eq = equilibrium::make_efit<T, SAFE_MATH> (EFIT_FILE); //auto eq = equilibrium::make_slab_density<T, SAFE_MATH> (); //auto eq = equilibrium::make_slab_field<T, SAFE_MATH> (); //auto eq = equilibrium::make_no_magnetic_field<T, SAFE_MATH> (); Loading Loading @@ -393,7 +393,9 @@ void bin_power(const size_t num_times, auto power = graph::variable<T, SAFE_MATH> (local_num_rays, static_cast<T> (1.0), "power"); auto k_sum = graph::variable<T, SAFE_MATH> (local_num_rays, static_cast<T> (0.0), "k_sum"); auto eq = equilibrium::make_vmec<T, SAFE_MATH> (VMEC_FILE); //auto eq = equilibrium::make_vmec<T, SAFE_MATH> (VMEC_FILE); auto eq = equilibrium::make_efit<T, SAFE_MATH> (EFIT_FILE); auto x_real = eq->get_x(x, y, z); auto y_real = eq->get_y(x, y, z); auto z_real = eq->get_z(x, y, z); Loading graph_framework.xcodeproj/project.pbxproj +2 −0 Original line number Diff line number Diff line Loading @@ -1338,6 +1338,7 @@ USE_METAL, "CXX_FLAGS=\\\"-g\\\"", "CXX=\\\"c++\\ -I/Users/m4c/Projects/graph_framework/graph_framework\\ -std=gnu++2a\\\"", STATIC, "DEBUG=1", "$(inherited)", ); Loading Loading @@ -1447,6 +1448,7 @@ USE_METAL, "CXX_FLAGS=\\\"-gl\\\"", "CXX=\\\"c++\\ -I/Users/m4c/Projects/graph_framework/graph_framework\\ -std=gnu++2a\\\"", STATIC, "DEBUG=1", "$(inherited)", ); Loading graph_framework/absorption.hpp +8 −7 Original line number Diff line number Diff line Loading @@ -280,13 +280,14 @@ namespace absorption { const size_t index=0) : kamp(kamp), w(w), kx(kx), ky(ky), kz(kz), x(x), y(y), z(z), t(t), file(filename), dataset(file), index(index), work(index), sync([]{}) { auto kvec = graph::vector(kx, ky, kz); auto kunit = kvec->unit(); auto kvec = kx*eq->get_esup1(x, y, z) + ky*eq->get_esup2(x, y, z) + kz*eq->get_esup3(x, y, z); auto klen = kvec->length(); auto kx_amp = kamp*kunit->get_x(); auto ky_amp = kamp*kunit->get_y(); auto kz_amp = kamp*kunit->get_z(); auto kx_amp = kamp*kx/klen; auto ky_amp = kamp*ky/klen; auto kz_amp = kamp*kz/klen; auto Dc = dispersion::cold_plasma<T, SAFE_MATH> ().D(w, kx_amp, ky_amp, kz_amp, Loading Loading @@ -376,8 +377,8 @@ namespace absorption { sync.join(); work.wait(); sync = std::thread([this] (const size_t index) -> void { dataset.write(file, index); sync = std::thread([this] (const size_t i) -> void { dataset.write(file, i); }, time_index); } }; Loading Loading
graph_driver/xrays.cpp +11 −9 Original line number Diff line number Diff line Loading @@ -158,7 +158,7 @@ void trace_ray(const size_t num_times, // Inital conditions. if constexpr (jit::is_float<T> ()) { #if 0 #if 1 init_efit<T, float, SAFE_MATH> (omega, x, y, z, ky, kz, engine, local_num_rays); Loading @@ -168,7 +168,7 @@ void trace_ray(const size_t num_times, local_num_rays); #endif } else { #if 0 #if 1 init_efit<T, double, SAFE_MATH> (omega, x, y, z, ky, kz, engine, local_num_rays); Loading @@ -178,18 +178,18 @@ void trace_ray(const size_t num_times, local_num_rays); #endif } #if 0 #if 1 kx->set(static_cast<T> (-700.0)); #else kx->set(static_cast<T> (-30.0)); #endif auto eq = equilibrium::make_vmec<T, SAFE_MATH> (VMEC_FILE); //auto eq = equilibrium::make_efit<T, SAFE_MATH> (EFIT_FILE); //auto eq = equilibrium::make_vmec<T, SAFE_MATH> (VMEC_FILE); auto eq = equilibrium::make_efit<T, SAFE_MATH> (EFIT_FILE); //auto eq = equilibrium::make_slab_density<T, SAFE_MATH> (); //auto eq = equilibrium::make_slab_field<T, SAFE_MATH> (); //auto eq = equilibrium::make_no_magnetic_field<T, SAFE_MATH> (); #if 0 #if 1 const T endtime = static_cast<T> (2.0); #else const T endtime = static_cast<T> (0.2); Loading Loading @@ -325,8 +325,8 @@ void calculate_power(const size_t num_times, auto t = graph::variable<T, SAFE_MATH> (local_num_rays, "t"); auto kamp = graph::variable<T, SAFE_MATH> (local_num_rays, "kamp"); auto eq = equilibrium::make_vmec<T, SAFE_MATH> (VMEC_FILE); //auto eq = equilibrium::make_efit<T, SAFE_MATH> (EFIT_FILE); //auto eq = equilibrium::make_vmec<T, SAFE_MATH> (VMEC_FILE); auto eq = equilibrium::make_efit<T, SAFE_MATH> (EFIT_FILE); //auto eq = equilibrium::make_slab_density<T, SAFE_MATH> (); //auto eq = equilibrium::make_slab_field<T, SAFE_MATH> (); //auto eq = equilibrium::make_no_magnetic_field<T, SAFE_MATH> (); Loading Loading @@ -393,7 +393,9 @@ void bin_power(const size_t num_times, auto power = graph::variable<T, SAFE_MATH> (local_num_rays, static_cast<T> (1.0), "power"); auto k_sum = graph::variable<T, SAFE_MATH> (local_num_rays, static_cast<T> (0.0), "k_sum"); auto eq = equilibrium::make_vmec<T, SAFE_MATH> (VMEC_FILE); //auto eq = equilibrium::make_vmec<T, SAFE_MATH> (VMEC_FILE); auto eq = equilibrium::make_efit<T, SAFE_MATH> (EFIT_FILE); auto x_real = eq->get_x(x, y, z); auto y_real = eq->get_y(x, y, z); auto z_real = eq->get_z(x, y, z); Loading
graph_framework.xcodeproj/project.pbxproj +2 −0 Original line number Diff line number Diff line Loading @@ -1338,6 +1338,7 @@ USE_METAL, "CXX_FLAGS=\\\"-g\\\"", "CXX=\\\"c++\\ -I/Users/m4c/Projects/graph_framework/graph_framework\\ -std=gnu++2a\\\"", STATIC, "DEBUG=1", "$(inherited)", ); Loading Loading @@ -1447,6 +1448,7 @@ USE_METAL, "CXX_FLAGS=\\\"-gl\\\"", "CXX=\\\"c++\\ -I/Users/m4c/Projects/graph_framework/graph_framework\\ -std=gnu++2a\\\"", STATIC, "DEBUG=1", "$(inherited)", ); Loading
graph_framework/absorption.hpp +8 −7 Original line number Diff line number Diff line Loading @@ -280,13 +280,14 @@ namespace absorption { const size_t index=0) : kamp(kamp), w(w), kx(kx), ky(ky), kz(kz), x(x), y(y), z(z), t(t), file(filename), dataset(file), index(index), work(index), sync([]{}) { auto kvec = graph::vector(kx, ky, kz); auto kunit = kvec->unit(); auto kvec = kx*eq->get_esup1(x, y, z) + ky*eq->get_esup2(x, y, z) + kz*eq->get_esup3(x, y, z); auto klen = kvec->length(); auto kx_amp = kamp*kunit->get_x(); auto ky_amp = kamp*kunit->get_y(); auto kz_amp = kamp*kunit->get_z(); auto kx_amp = kamp*kx/klen; auto ky_amp = kamp*ky/klen; auto kz_amp = kamp*kz/klen; auto Dc = dispersion::cold_plasma<T, SAFE_MATH> ().D(w, kx_amp, ky_amp, kz_amp, Loading Loading @@ -376,8 +377,8 @@ namespace absorption { sync.join(); work.wait(); sync = std::thread([this] (const size_t index) -> void { dataset.write(file, index); sync = std::thread([this] (const size_t i) -> void { dataset.write(file, i); }, time_index); } }; Loading