The Open FUSION Toolkit 1.0.0-8905cc5
Modeling tools for plasma and fusion research and engineering
Loading...
Searching...
No Matches
Functions/Subroutines
thin_wall_solvers Module Reference

Detailed Description

Module for thin-wall modeling on 3D triangular meshes.

Authors
Chris Hansen
Date
May 2017

Functions/Subroutines

subroutine frequency_response (self, direct, fr_limit, freq, driver, hodlr_op)
 Needs Docs.
 
subroutine lr_eigenmodes_arpack (self, neigs, eig_rval, eig_vec, eig_ival, hodlr_op)
 Compute L/R eigenmodes of ThinCurr model using an iterative Lanczos method via ARPACK.
 
subroutine lr_eigenmodes_direct (self, neigs, eig_rval, eig_vec, eig_ival)
 Compute L/R eigenmodes of ThinCurr model using a direct approach via LAPACK.
 
subroutine plot_td_sim (self, nsteps, nplot, sensors, compute_b, rebuild_sensors, sensor_vals, hodlr_op)
 Needs Docs.
 
subroutine run_td_sim (self, dt, nsteps, vec, direct, lin_tol, use_cn, nstatus, nplot, sensors, curr_waveform, volt_waveform, sensor_vals, hodlr_op)
 Needs Docs.
 
subroutine tw_reduce_model (self, sensors, neigs, eig_vec, filename, compute_b, hodlr_op)
 Needs Docs.
 

Function/Subroutine Documentation

◆ frequency_response()

subroutine frequency_response ( type(tw_type), intent(in)  self,
logical, intent(in)  direct,
integer(i4), intent(in)  fr_limit,
real(r8), intent(in)  freq,
real(r8), dimension(:,:), intent(inout)  driver,
type(oft_tw_hodlr_op), intent(inout), optional, target  hodlr_op 
)

Needs Docs.

Parameters
[in]selfThinCurr object
[in]directUse direct solver?
[in]freqFrequency for calculation (if fr_limit=0)
[in]fr_limitLimit for frequency response (0: Use freq, 1: Inductive, 2: Resistive)
[in,out]driverDriver voltages (real, imaginary) [selfnelems,2]
[in,out]hodlr_opHODLR L matrix

◆ lr_eigenmodes_arpack()

subroutine lr_eigenmodes_arpack ( type(tw_type), intent(in)  self,
integer(4), intent(in)  neigs,
real(8), dimension(:), intent(out)  eig_rval,
real(8), dimension(:,:), intent(out)  eig_vec,
real(8), dimension(:), intent(out), optional  eig_ival,
type(oft_tw_hodlr_op), intent(inout), optional, target  hodlr_op 
)

Compute L/R eigenmodes of ThinCurr model using an iterative Lanczos method via ARPACK.

Parameters
[in]selfThinCurr object
[in]neigsNumber of eigenvalues to compute
[out]eig_rvalReal part of eigenvalues
[out]eig_vecEigenvectors [selfnelems,neigs]
[out]eig_ivalImaginary part of eigenvalues (should be zero)
[in,out]hodlr_opHODLR L matrix

◆ lr_eigenmodes_direct()

subroutine lr_eigenmodes_direct ( type(tw_type), intent(in)  self,
integer(4), intent(in)  neigs,
real(8), dimension(:), intent(out)  eig_rval,
real(8), dimension(:,:), intent(out)  eig_vec,
real(8), dimension(:), intent(out), optional  eig_ival 
)

Compute L/R eigenmodes of ThinCurr model using a direct approach via LAPACK.

Parameters
[in]selfThinCurr object
[in]neigsNumber of eigenvalues to compute
[out]eig_rvalReal part of eigenvalues
[out]eig_vecEigenvectors [selfnelems,neigs]
[out]eig_ivalImaginary part of eigenvalues (should be zero)

◆ plot_td_sim()

subroutine plot_td_sim ( type(tw_type), intent(inout)  self,
integer(4), intent(in)  nsteps,
integer(4), intent(in)  nplot,
type(tw_sensors), intent(in)  sensors,
logical, intent(in)  compute_b,
logical, intent(in)  rebuild_sensors,
real(8), dimension(:,:), intent(in), pointer  sensor_vals,
type(oft_tw_hodlr_op), intent(inout), optional, target  hodlr_op 
)

Needs Docs.

Parameters
[in,out]selfNeeds Docs
[in]nstepsNeeds Docs
[in]nplotNeeds Docs
[in]sensorsNeeds Docs
[in]compute_bNeeds Docs
[in]rebuild_sensorsNeeds Docs
[in,out]hodlr_opHODLR L matrix

◆ run_td_sim()

subroutine run_td_sim ( type(tw_type), intent(in)  self,
real(8), intent(in)  dt,
integer(4), intent(in)  nsteps,
real(8), dimension(:), intent(inout)  vec,
logical, intent(in)  direct,
real(8), intent(in)  lin_tol,
logical, intent(in)  use_cn,
integer(4), intent(in)  nstatus,
integer(4), intent(in)  nplot,
type(tw_sensors), intent(in)  sensors,
real(8), dimension(:,:), intent(in), pointer  curr_waveform,
real(8), dimension(:,:), intent(in), pointer  volt_waveform,
real(8), dimension(:,:), intent(in), pointer  sensor_vals,
type(oft_tw_hodlr_op), intent(inout), optional, target  hodlr_op 
)

Needs Docs.

Parameters
[in,out]hodlr_opHODLR L matrix

◆ tw_reduce_model()

subroutine tw_reduce_model ( type(tw_type), intent(inout)  self,
type(tw_sensors), intent(in)  sensors,
integer(4), intent(in)  neigs,
real(8), dimension(:,:), intent(in)  eig_vec,
character(len=*), intent(in)  filename,
logical, intent(in)  compute_b,
type(oft_tw_hodlr_op), intent(inout), optional, target  hodlr_op 
)

Needs Docs.

Parameters
[in,out]selfNeeds docs
[in]sensorsSensor information
[in]neigsNeeds docs
[in]eig_vecNeeds docs
[in]filenameNeeds docs
[in]compute_bNeeds docs
[in,out]hodlr_opHODLR L matrix