The Open FUSION Toolkit 1.0.0-beta6
Modeling tools for plasma and fusion research and engineering
Loading...
Searching...
No Matches
thincurr_f Module Reference

Detailed Description

Fortran part of Python wrapper for ThinCurr thin-wall eddy current functionality.

Authors
Chris Hansen
Date
March 2024

Functions/Subroutines

subroutine thincurr_bmat (tw_ptr, hodlr_ptr, bmat_ptr, bdr_ptr, cache_file, error_str)
 Needs docs.
subroutine thincurr_cross_coupling (tw_ptr1, tw_ptr2, mmat, cache_file, error_str)
 Needs docs.
subroutine thincurr_cross_eval (tw_ptr1, tw_ptr2, nrhs, vec1, vec2, error_str)
 Needs docs.
subroutine thincurr_curr_regmat (tw_ptr, rmat, error_str)
 Needs docs.
subroutine thincurr_eigenvalues (tw_ptr, direct, neigs, eig_vals, eig_vec, hodlr_ptr, error_str)
 Needs docs.
subroutine thincurr_freq_response (tw_ptr, direct, fr_limit, freq, fr_driver, hodlr_ptr, error_str)
 Needs docs.
subroutine thincurr_get_eta (tw_ptr, eta_ptr, error_str)
 Needs docs.
subroutine thincurr_get_sensor_name (sensor_ptr, sensor_ind, sensor_name, error_str)
 Needs docs.
subroutine thincurr_lmat (tw_ptr, use_hodlr, lmat_ptr, cache_file, error_str)
 Needs docs.
subroutine thincurr_mcoil (tw_ptr, mc_ptr, cache_file, error_str)
 Needs docs.
subroutine thincurr_msensor (tw_ptr, sensor_file, ms_ptr, msc_ptr, nsensors, njumpers, sensor_ptr, cache_file, error_str)
 Needs docs.
subroutine thincurr_recon_curr (tw_ptr, vals, curr, format)
 Needs docs.
subroutine thincurr_recon_field (tw_ptr, pot, coils, field, hodlr_ptr)
 Needs docs.
subroutine thincurr_reduce_model (tw_ptr, filename, neigs, eig_vec, compute_b, sensor_ptr, hodlr_ptr, error_str)
 Needs docs.
subroutine thincurr_rmat (tw_ptr, copy_out, rmat, error_str)
 Needs docs.
subroutine thincurr_save_field (tw_ptr, vals, fieldname)
 Needs docs.
subroutine thincurr_save_scalar (tw_ptr, vals, fieldname)
 Needs docs.
subroutine thincurr_scale_va (tw_ptr, vals, div_flag)
 Needs docs.
subroutine thincurr_set_eta (tw_ptr, eta_ptr, error_str)
 Needs docs.
subroutine thincurr_setup (mesh_file, np, r_loc, nc, lc_loc, reg_loc, pmap_loc, jumper_start_in, tw_ptr, sizes, error_str, xml_ptr)
 Needs docs.
subroutine thincurr_setup_io (tw_ptr, basepath, save_debug, legacy_hdf5, error_str)
 Needs docs.
subroutine thincurr_time_domain (tw_ptr, direct, dt, nsteps, cg_tol, timestep_cn, nstatus, nplot, vec_ic, sensor_ptr, ncurr, curr_ptr, nvolt, volt_ptr, volts_full, sensor_vals_ptr, hodlr_ptr, error_str)
 Needs docs.
subroutine thincurr_time_domain_plot (tw_ptr, compute_b, rebuild_sensors, nsteps, nplot, sensor_ptr, sensor_vals_ptr, nsensor, hodlr_ptr, error_str)
 Needs docs.

Variables

integer(i4), dimension(:,:), pointer lc_plot
 Needs docs.
real(r8), dimension(:,:), pointer r_plot
 Needs docs.
integer(i4), dimension(:), pointer reg_plot
 Needs docs.

Function/Subroutine Documentation

◆ thincurr_bmat()

subroutine thincurr_bmat ( type(c_ptr), intent(in), value tw_ptr,
type(c_ptr), intent(in), value hodlr_ptr,
type(c_ptr), intent(out) bmat_ptr,
type(c_ptr), intent(out) bdr_ptr,
character(kind=c_char), dimension(oft_path_slen), intent(in) cache_file,
character(kind=c_char), dimension(oft_error_slen), intent(out) error_str )

Needs docs.

Parameters
[in]tw_ptrNeeds docs
[in]hodlr_ptrNeeds docs
[out]bmat_ptrNeeds docs
[out]bdr_ptrNeeds docs
[in]cache_fileNeeds docs
[out]error_strNeeds docs

◆ thincurr_cross_coupling()

subroutine thincurr_cross_coupling ( type(c_ptr), intent(in), value tw_ptr1,
type(c_ptr), intent(in), value tw_ptr2,
type(c_ptr), intent(in), value mmat,
character(kind=c_char), dimension(oft_path_slen), intent(in) cache_file,
character(kind=c_char), dimension(oft_error_slen), intent(out) error_str )

Needs docs.

Parameters
[in]tw_ptr1Needs docs
[in]tw_ptr2Needs docs
[in]mmatNeeds docs
[in]cache_fileNeeds docs
[out]error_strNeeds docs

◆ thincurr_cross_eval()

subroutine thincurr_cross_eval ( type(c_ptr), intent(in), value tw_ptr1,
type(c_ptr), intent(in), value tw_ptr2,
integer(kind=c_int), intent(in), value nrhs,
type(c_ptr), intent(in), value vec1,
type(c_ptr), intent(in), value vec2,
character(kind=c_char), dimension(oft_error_slen), intent(out) error_str )

Needs docs.

Parameters
[in]tw_ptr1Needs docs
[in]tw_ptr2Needs docs
[in]vec1Needs docs
[in]vec2Needs docs
[out]error_strNeeds docs

◆ thincurr_curr_regmat()

subroutine thincurr_curr_regmat ( type(c_ptr), intent(in), value tw_ptr,
type(c_ptr), intent(in), value rmat,
character(kind=c_char), dimension(oft_error_slen), intent(out) error_str )

Needs docs.

Parameters
[in]tw_ptrNeeds docs
[in]rmatNeeds docs
[out]error_strNeeds docs

◆ thincurr_eigenvalues()

subroutine thincurr_eigenvalues ( type(c_ptr), intent(in), value tw_ptr,
logical(kind=c_bool), intent(in), value direct,
integer(kind=c_int), intent(in), value neigs,
type(c_ptr), intent(in), value eig_vals,
type(c_ptr), intent(in), value eig_vec,
type(c_ptr), intent(in), value hodlr_ptr,
character(kind=c_char), dimension(oft_error_slen), intent(out) error_str )

Needs docs.

Parameters
[in]tw_ptrNeeds docs
[in]directNeeds docs
[in]neigsNeeds docs
[in]eig_valsNeeds docs
[in]eig_vecNeeds docs
[in]hodlr_ptrNeeds docs
[out]error_strNeeds docs

◆ thincurr_freq_response()

subroutine thincurr_freq_response ( type(c_ptr), intent(in), value tw_ptr,
logical(kind=c_bool), intent(in), value direct,
integer(kind=c_int), intent(in), value fr_limit,
real(kind=c_double), intent(in), value freq,
type(c_ptr), intent(in), value fr_driver,
type(c_ptr), intent(in), value hodlr_ptr,
character(kind=c_char), dimension(oft_error_slen), intent(out) error_str )

Needs docs.

Parameters
[in]tw_ptrNeeds docs
[in]directNeeds docs
[in]fr_limitNeeds docs
[in]freqNeeds docs
[in]fr_driverNeeds docs
[in]hodlr_ptrNeeds docs
[out]error_strNeeds docs

◆ thincurr_get_eta()

subroutine thincurr_get_eta ( type(c_ptr), intent(in), value tw_ptr,
type(c_ptr), intent(in), value eta_ptr,
character(kind=c_char), dimension(oft_error_slen), intent(out) error_str )

Needs docs.

Parameters
[in]tw_ptrNeeds docs
[in]eta_ptrNeeds docs
[out]error_strNeeds docs

◆ thincurr_get_sensor_name()

subroutine thincurr_get_sensor_name ( type(c_ptr), intent(in), value sensor_ptr,
integer(kind=c_int), intent(in), value sensor_ind,
character(kind=c_char), dimension(40), intent(out) sensor_name,
character(kind=c_char), dimension(200), intent(out) error_str )

Needs docs.

Parameters
[in]sensor_ptrNeeds docs
[in]sensor_indNeeds docs
[out]sensor_nameNeeds docs
[out]error_strNeeds docs

◆ thincurr_lmat()

subroutine thincurr_lmat ( type(c_ptr), intent(in), value tw_ptr,
logical(kind=c_bool), intent(in), value use_hodlr,
type(c_ptr), intent(out) lmat_ptr,
character(kind=c_char), dimension(oft_path_slen), intent(in) cache_file,
character(kind=c_char), dimension(oft_error_slen), intent(out) error_str )

Needs docs.

Parameters
[in]tw_ptrNeeds docs
[out]lmat_ptrNeeds docs
[in]cache_fileNeeds docs
[out]error_strNeeds docs

◆ thincurr_mcoil()

subroutine thincurr_mcoil ( type(c_ptr), intent(in), value tw_ptr,
type(c_ptr), intent(out) mc_ptr,
character(kind=c_char), dimension(oft_path_slen), intent(in) cache_file,
character(kind=c_char), dimension(oft_error_slen), intent(out) error_str )

Needs docs.

Parameters
[in]tw_ptrNeeds docs
[out]mc_ptrNeeds docs
[in]cache_fileNeeds docs
[out]error_strNeeds docs

◆ thincurr_msensor()

subroutine thincurr_msensor ( type(c_ptr), intent(in), value tw_ptr,
character(kind=c_char), dimension(oft_path_slen), intent(in) sensor_file,
type(c_ptr), intent(out) ms_ptr,
type(c_ptr), intent(out) msc_ptr,
integer(kind=c_int), intent(out) nsensors,
integer(kind=c_int), intent(out) njumpers,
type(c_ptr), intent(inout) sensor_ptr,
character(kind=c_char), dimension(oft_path_slen), intent(in) cache_file,
character(kind=c_char), dimension(oft_error_slen), intent(out) error_str )

Needs docs.

Parameters
[in]tw_ptrNeeds docs
[in]sensor_fileNeeds docs
[out]ms_ptrNeeds docs
[out]msc_ptrNeeds docs
[in,out]sensor_ptrNeeds docs
[in]cache_fileNeeds docs
[out]error_strNeeds docs

◆ thincurr_recon_curr()

subroutine thincurr_recon_curr ( type(c_ptr), intent(in), value tw_ptr,
type(c_ptr), intent(in), value vals,
type(c_ptr), intent(in), value curr,
integer(kind=c_int), intent(in), value format )

Needs docs.

Parameters
[in]tw_ptrNeeds docs
[in]valsNeeds docs
[in]currNeeds docs
[in]formatNeeds docs

◆ thincurr_recon_field()

subroutine thincurr_recon_field ( type(c_ptr), intent(in), value tw_ptr,
type(c_ptr), intent(in), value pot,
type(c_ptr), intent(in), value coils,
type(c_ptr), intent(in), value field,
type(c_ptr), intent(in), value hodlr_ptr )

Needs docs.

Parameters
[in]tw_ptrNeeds docs
[in]potNeeds docs
[in]coilsNeeds docs
[in]fieldNeeds docs
[in]hodlr_ptrNeeds docs

◆ thincurr_reduce_model()

subroutine thincurr_reduce_model ( type(c_ptr), intent(in), value tw_ptr,
character(kind=c_char), dimension(oft_path_slen), intent(in) filename,
integer(kind=c_int), intent(in), value neigs,
type(c_ptr), intent(in), value eig_vec,
logical(kind=c_bool), intent(in), value compute_b,
type(c_ptr), intent(in), value sensor_ptr,
type(c_ptr), intent(in), value hodlr_ptr,
character(kind=c_char), dimension(oft_error_slen), intent(out) error_str )

Needs docs.

Parameters
[in]tw_ptrNeeds docs
[in]filenameNeeds docs
[in]neigsNeeds docs
[in]eig_vecNeeds docs
[in]compute_bNeeds docs
[in]sensor_ptrNeeds docs
[in]hodlr_ptrNeeds docs
[out]error_strNeeds docs

◆ thincurr_rmat()

subroutine thincurr_rmat ( type(c_ptr), intent(in), value tw_ptr,
logical(kind=c_bool), intent(in), value copy_out,
type(c_ptr), intent(in), value rmat,
character(kind=c_char), dimension(oft_error_slen), intent(out) error_str )

Needs docs.

Parameters
[in]tw_ptrNeeds docs
[in]copy_outNeeds docs
[in]rmatNeeds docs
[out]error_strNeeds docs

◆ thincurr_save_field()

subroutine thincurr_save_field ( type(c_ptr), intent(in), value tw_ptr,
type(c_ptr), intent(in), value vals,
character(kind=c_char), dimension(oft_slen), intent(in) fieldname )

Needs docs.

Parameters
[in]tw_ptrNeeds docs
[in]valsNeeds docs
[in]fieldnameNeeds docs

◆ thincurr_save_scalar()

subroutine thincurr_save_scalar ( type(c_ptr), intent(in), value tw_ptr,
type(c_ptr), intent(in), value vals,
character(kind=c_char), dimension(oft_slen), intent(in) fieldname )

Needs docs.

Parameters
[in]tw_ptrNeeds docs
[in]valsNeeds docs
[in]fieldnameNeeds docs

◆ thincurr_scale_va()

subroutine thincurr_scale_va ( type(c_ptr), intent(in), value tw_ptr,
type(c_ptr), intent(in), value vals,
logical, intent(in), value div_flag )

Needs docs.

Parameters
[in]tw_ptrNeeds docs
[in]valsNeeds docs
[in]div_flagNeeds docs

◆ thincurr_set_eta()

subroutine thincurr_set_eta ( type(c_ptr), intent(in), value tw_ptr,
type(c_ptr), intent(in), value eta_ptr,
character(kind=c_char), dimension(oft_error_slen), intent(out) error_str )

Needs docs.

Parameters
[in]tw_ptrNeeds docs
[in]eta_ptrNeeds docs
[out]error_strNeeds docs

◆ thincurr_setup()

subroutine thincurr_setup ( character(kind=c_char), dimension(oft_path_slen), intent(in) mesh_file,
integer(c_int), intent(in), value np,
type(c_ptr), intent(in), value r_loc,
integer(c_int), intent(in), value nc,
type(c_ptr), intent(in), value lc_loc,
type(c_ptr), intent(in), value reg_loc,
type(c_ptr), intent(in), value pmap_loc,
integer(c_int), intent(in), value jumper_start_in,
type(c_ptr), intent(out) tw_ptr,
type(c_ptr), intent(in), value sizes,
character(kind=c_char), dimension(oft_error_slen), intent(out) error_str,
type(c_ptr), intent(in), value xml_ptr )

Needs docs.

Parameters
[in]mesh_fileNeeds docs
[in]r_locNeeds docs
[in]lc_locNeeds docs
[in]reg_locNeeds docs
[in]pmap_locNeeds docs
[in]npNeeds docs
[in]ncNeeds docs
[in]jumper_start_inNeeds docs
[in]sizesNeeds docs
[out]tw_ptrNeeds docs
[out]error_strNeeds docs
[in]xml_ptrNeeds docs

◆ thincurr_setup_io()

subroutine thincurr_setup_io ( type(c_ptr), intent(in), value tw_ptr,
character(kind=c_char), dimension(oft_path_slen), intent(in) basepath,
logical(c_bool), intent(in), value save_debug,
logical(c_bool), intent(in), value legacy_hdf5,
character(kind=c_char), dimension(oft_error_slen), intent(out) error_str )

Needs docs.

Parameters
[in]tw_ptrNeeds docs
[in]basepathNeeds docs
[in]save_debugNeeds docs
[in]legacy_hdf5Use legacy HDF5 format?
[out]error_strNeeds docs

◆ thincurr_time_domain()

subroutine thincurr_time_domain ( type(c_ptr), intent(in), value tw_ptr,
logical(kind=c_bool), intent(in), value direct,
real(kind=c_double), intent(in), value dt,
integer(kind=c_int), intent(in), value nsteps,
real(kind=c_double), intent(in), value cg_tol,
logical(kind=c_bool), intent(in), value timestep_cn,
integer(kind=c_int), intent(in), value nstatus,
integer(kind=c_int), intent(in), value nplot,
type(c_ptr), intent(in), value vec_ic,
type(c_ptr), intent(in), value sensor_ptr,
integer(kind=c_int), intent(in), value ncurr,
type(c_ptr), intent(in), value curr_ptr,
integer(kind=c_int), intent(in), value nvolt,
type(c_ptr), intent(in), value volt_ptr,
logical(kind=c_bool), intent(in), value volts_full,
type(c_ptr), intent(in), value sensor_vals_ptr,
type(c_ptr), intent(in), value hodlr_ptr,
character(kind=c_char), dimension(oft_error_slen), intent(out) error_str )

Needs docs.

Parameters
[in]tw_ptrNeeds docs
[in]directNeeds docs
[in]dtNeeds docs
[in]nstepsNeeds docs
[in]cg_tolNeeds docs
[in]timestep_cnNeeds docs
[in]nstatusNeeds docs
[in]nplotNeeds docs
[in]vec_icNeeds docs
[in]sensor_ptrNeeds docs
[in]ncurrNeeds docs
[in]curr_ptrNeeds docs
[in]nvoltNeeds docs
[in]volt_ptrNeeds docs
[in]volts_fullNeeds docs
[in]sensor_vals_ptrNeeds docs
[in]hodlr_ptrNeeds docs
[out]error_strNeeds docs

◆ thincurr_time_domain_plot()

subroutine thincurr_time_domain_plot ( type(c_ptr), intent(in), value tw_ptr,
logical(kind=c_bool), intent(in), value compute_b,
logical(kind=c_bool), intent(in), value rebuild_sensors,
integer(kind=c_int), intent(in), value nsteps,
integer(kind=c_int), intent(in), value nplot,
type(c_ptr), intent(in), value sensor_ptr,
type(c_ptr), intent(in), value sensor_vals_ptr,
integer(kind=c_int), intent(in), value nsensor,
type(c_ptr), intent(in), value hodlr_ptr,
character(kind=c_char), dimension(oft_error_slen), intent(out) error_str )

Needs docs.

Parameters
[in]tw_ptrNeeds docs
[in]compute_bNeeds docs
[in]rebuild_sensorsNeeds docs
[in]nstepsNeeds docs
[in]nplotNeeds docs
[in]sensor_ptrNeeds docs
[in]sensor_vals_ptrNeeds docs
[in]nsensorNeeds docs
[in]hodlr_ptrNeeds docs
[out]error_strNeeds docs

Variable Documentation

◆ lc_plot

integer(i4), dimension(:,:), pointer lc_plot

Needs docs.

◆ r_plot

real(r8), dimension(:,:), pointer r_plot

Needs docs.

◆ reg_plot

integer(i4), dimension(:), pointer reg_plot

Needs docs.