SFEMaNS  version 5.3
Reference documentation for SFEMaNS
update_maxwell_with_h Module Reference

Functions/Subroutines

subroutine, public maxwell_decouple_with_h (comm_one_d, H_mesh, pmag_mesh, phi_mesh, interface_H_phi, interface_H_mu, Hn, Bn, phin, Hn1, Bn1, phin1, vel, stab_in, sigma_in, R_fourier, index_fourier, mu_H_field, mu_phi, time, dt_in, Rem, list_mode, H_phi_per, LA_H, LA_pmag, LA_phi, LA_mhd, one_over_sigma_ns_in, jj_v_to_H)
 
subroutine mat_h_p_phi_maxwell (H_mesh, pmag_mesh, phi_mesh, interface_H_phi, mode, mu_H_field, mu_phi, c_mass, stab, R_fourier, index_fourier, LA_H, LA_pmag, LA_phi, H_p_phi_mat1, H_p_phi_mat2, sigma_nj_m, sigma)
 
subroutine mat_dirichlet_maxwell (H_mesh, jj_v_to_H, Dirichlet_bdy_H_sides, mode, stab, LA_H, H_p_phi_mat1, H_p_phi_mat2, sigma_np, sigma)
 
subroutine courant_int_by_parts (H_mesh, phi_mesh, interface_H_phi, sigma, mu_phi, mu_H_field, time, mode, rhs_H, nl, LA_H, LA_phi, vb_1, vb_2, B_ext, sigma_curl_gauss, J_over_sigma_gauss)
 
subroutine surf_int (H_mesh, phi_mesh, pmag_mesh, interface_H_phi, interface_H_mu, list_dirichlet_sides_H, sigma, mu_phi, mu_H_field, time, mode, LA_H, LA_phi, LA_pmag, vb_1, vb_2, sigma_tot_gauss, R_fourier, index_fourier)
 
subroutine mat_maxwell_mu (H_mesh, jj_v_to_H, interface_H_mu, mode, stab, mu_H_field, sigma, LA_H, H_p_phi_mat1, H_p_phi_mat2, sigma_np)
 
subroutine courant_mu (H_mesh, interface_H_mu, sigma, mu_H_field, time, mode, nl, LA_H, vb_1, vb_2, B_ext, J_over_sigma_gauss, sigma_curl_gauss)
 
subroutine rhs_dirichlet (H_mesh, Dirichlet_bdy_H_sides, sigma, mu_H_field, time, mode, nl, stab, LA_H, vb_1, vb_2, B_ext, J_over_sigma_bdy, sigma_curl_bdy)
 
subroutine dirichlet_cavities (communicator, interface_H_phi, mesh, js_D)
 
subroutine smb_sigma_prod_curl (communicator, mesh, jj_v_to_H, list_mode, H_in, one_over_sigma_in, sigma_nj_m, sigma, V_out)
 
subroutine smb_sigma_prod_curl_bdy (communicator, mesh, jj_v_to_H, Dirichlet_bdy_H_sides, list_mode, H_in, one_over_sigma_in, sigma_np, sigma, V_out)
 
subroutine smb_sigma_prod_curl_inter_mu (communicator, mesh, jj_v_to_H, interface_H_mu, list_mode, H_in, one_over_sigma_in, sigma_np, sigma, V_out)
 
subroutine smb_current_over_sigma (communicator, mesh, jj_v_to_H, list_mode, B_in, mu_H_field, mu_phi, one_over_sigma_tot, time, sigma, J_over_sigma_gauss)
 
subroutine smb_current_over_sigma_bdy (communicator, mesh, jj_v_to_H, Dirichlet_bdy_H_sides, list_mode, B_in, mu_H_field, mu_phi, one_over_sigma_tot, time, sigma, J_over_sigma_gauss)
 
subroutine smb_current_over_sigma_inter_mu (communicator, mesh, jj_v_to_H, interface_H_mu, list_mode, B_in, mu_H_field, mu_phi, one_over_sigma_tot, time, sigma, J_over_sigma_gauss)
 
subroutine smb_sigma_neumann (communicator, mesh, Neumann_bdy_H_sides, list_mode, one_over_sigma_tot, sigma_tot_gauss_Neumann)
 

Variables

real(kind=8), parameter, private alpha =0.6d0
 
integer, dimension(:), allocatable neumann_bdy_h_sides
 
integer, dimension(:), allocatable neumann_bdy_pmag_sides
 
integer, dimension(:), allocatable neumann_bdy_phi_sides
 

Function/Subroutine Documentation

subroutine update_maxwell_with_h::courant_int_by_parts ( type(mesh_type), intent(in)  H_mesh,
type(mesh_type), intent(in)  phi_mesh,
type(interface_type), intent(in)  interface_H_phi,
real(kind=8), dimension(:), intent(in)  sigma,
real(kind=8), intent(in)  mu_phi,
real(kind=8), dimension(:), intent(in)  mu_H_field,
real(kind=8), intent(in)  time,
integer, intent(in)  mode,
real(kind=8), dimension(:,:), intent(in)  rhs_H,
real(kind=8), dimension(:,:), intent(in)  nl,
type(petsc_csr_la LA_H,
type(petsc_csr_la LA_phi,
  vb_1,
  vb_2,
real(kind=8), dimension(:,:), intent(in)  B_ext,
real(kind=8), dimension(:,:), intent(in)  sigma_curl_gauss,
real(kind=8), dimension(:,:), intent(in)  J_over_sigma_gauss 
)

Definition at line 2885 of file maxwell_update_time_with_H.f90.

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine update_maxwell_with_h::courant_mu ( type(mesh_type), intent(in)  H_mesh,
type(interface_type), intent(in)  interface_H_mu,
real(kind=8), dimension(h_mesh%me), intent(in)  sigma,
real(kind=8), dimension(:), intent(in)  mu_H_field,
real(kind=8), intent(in)  time,
integer, intent(in)  mode,
real(kind=8), dimension(:,:), intent(in)  nl,
type(petsc_csr_la LA_H,
  vb_1,
  vb_2,
real(kind=8), dimension(:,:), intent(in)  B_ext,
real(kind=8), dimension(:,:), intent(in)  J_over_sigma_gauss,
real(kind=8), dimension(:,:), intent(in)  sigma_curl_gauss 
)

Definition at line 4230 of file maxwell_update_time_with_H.f90.

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine update_maxwell_with_h::dirichlet_cavities ( intent(in)  communicator,
type(interface_type), intent(in)  interface_H_phi,
type(mesh_type), intent(in)  mesh,
integer, dimension(:), pointer  js_D 
)

Definition at line 4574 of file maxwell_update_time_with_H.f90.

Here is the caller graph for this function:

subroutine update_maxwell_with_h::mat_dirichlet_maxwell ( type(mesh_type), intent(in)  H_mesh,
integer, dimension(:), intent(in)  jj_v_to_H,
integer, dimension(:), intent(in)  Dirichlet_bdy_H_sides,
integer, intent(in)  mode,
real(kind=8), dimension(3), intent(in)  stab,
type(petsc_csr_la LA_H,
  H_p_phi_mat1,
  H_p_phi_mat2,
real(kind=8), dimension(:), intent(in)  sigma_np,
real(kind=8), dimension(h_mesh%me), intent(in)  sigma 
)

Definition at line 2495 of file maxwell_update_time_with_H.f90.

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine update_maxwell_with_h::mat_h_p_phi_maxwell ( type(mesh_type), intent(in)  H_mesh,
type(mesh_type), intent(in)  pmag_mesh,
type(mesh_type), intent(in)  phi_mesh,
type(interface_type), intent(in)  interface_H_phi,
integer, intent(in)  mode,
real(kind=8), dimension(:), intent(in)  mu_H_field,
real(kind=8), intent(in)  mu_phi,
real(kind=8), intent(in)  c_mass,
real(kind=8), dimension(3), intent(in)  stab,
real(kind=8), optional  R_fourier,
integer, optional  index_fourier,
type(petsc_csr_la LA_H,
type(petsc_csr_la LA_pmag,
type(petsc_csr_la LA_phi,
  H_p_phi_mat1,
  H_p_phi_mat2,
real(kind=8), dimension(h_mesh%gauss%n_w,h_mesh%me), intent(in)  sigma_nj_m,
real(kind=8), dimension(h_mesh%me), intent(in)  sigma 
)

Definition at line 806 of file maxwell_update_time_with_H.f90.

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine update_maxwell_with_h::mat_maxwell_mu ( type(mesh_type), intent(in)  H_mesh,
integer, dimension(:), intent(in)  jj_v_to_H,
type(interface_type), intent(in)  interface_H_mu,
integer, intent(in)  mode,
real(kind=8), dimension(3), intent(in)  stab,
real(kind=8), dimension(:), intent(in)  mu_H_field,
real(kind=8), dimension(:), intent(in)  sigma,
type(petsc_csr_la LA_H,
  H_p_phi_mat1,
  H_p_phi_mat2,
real(kind=8), dimension(:), intent(in)  sigma_np 
)

Definition at line 3606 of file maxwell_update_time_with_H.f90.

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine, public update_maxwell_with_h::maxwell_decouple_with_h ( pointer  comm_one_d,
type(mesh_type), intent(in)  H_mesh,
type(mesh_type), intent(in)  pmag_mesh,
type(mesh_type), intent(in)  phi_mesh,
type(interface_type), intent(in)  interface_H_phi,
type(interface_type), intent(in)  interface_H_mu,
real(kind=8), dimension(h_mesh%np,6,size(list_mode)), intent(inout)  Hn,
real(kind=8), dimension(h_mesh%np,6,size(list_mode)), intent(inout)  Bn,
real(kind=8), dimension(:,:,:), intent(inout)  phin,
real(kind=8), dimension(h_mesh%np,6,size(list_mode)), intent(inout)  Hn1,
real(kind=8), dimension(h_mesh%np,6,size(list_mode)), intent(inout)  Bn1,
real(kind=8), dimension(:,:,:), intent(inout)  phin1,
real(kind=8), dimension(:,:,:), intent(inout)  vel,
real(kind=8), dimension(3), intent(in)  stab_in,
real(kind=8), dimension(:), intent(in)  sigma_in,
real(kind=8), intent(in)  R_fourier,
integer, intent(in)  index_fourier,
real(kind=8), dimension(:), intent(in)  mu_H_field,
real(kind=8), intent(in)  mu_phi,
real(kind=8), intent(in)  time,
real(kind=8), intent(in)  dt_in,
real(kind=8), intent(in)  Rem,
integer, dimension(:), intent(in)  list_mode,
type(periodic_type), intent(in)  H_phi_per,
type(petsc_csr_la LA_H,
type(petsc_csr_la LA_pmag,
type(petsc_csr_la LA_phi,
type(petsc_csr_la LA_mhd,
real(kind=8), dimension(:,:,:), intent(in)  one_over_sigma_ns_in,
integer, dimension(:), intent(in)  jj_v_to_H 
)

Definition at line 24 of file maxwell_update_time_with_H.f90.

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine update_maxwell_with_h::rhs_dirichlet ( type(mesh_type), intent(in)  H_mesh,
integer, dimension(:), intent(in)  Dirichlet_bdy_H_sides,
real(kind=8), dimension(h_mesh%me), intent(in)  sigma,
real(kind=8), dimension(:), intent(in)  mu_H_field,
real(kind=8), intent(in)  time,
integer, intent(in)  mode,
real(kind=8), dimension(:,:), intent(in)  nl,
real(kind=8), dimension(3), intent(in)  stab,
type(petsc_csr_la LA_H,
  vb_1,
  vb_2,
real(kind=8), dimension(:,:), intent(in)  B_ext,
real(kind=8), dimension(:,:), intent(in)  J_over_sigma_bdy,
real(kind=8), dimension(:,:), intent(in)  sigma_curl_bdy 
)

Definition at line 4419 of file maxwell_update_time_with_H.f90.

Here is the caller graph for this function:

subroutine update_maxwell_with_h::smb_current_over_sigma (   communicator,
type(mesh_type), intent(in)  mesh,
integer, dimension(:), intent(in)  jj_v_to_H,
integer, dimension(:), intent(in)  list_mode,
real(kind=8), dimension(:,:,:), intent(in)  B_in,
real(kind=8), dimension(:), intent(in)  mu_H_field,
real(kind=8), intent(in)  mu_phi,
real(kind=8), dimension(:,:,:), intent(in)  one_over_sigma_tot,
real(kind=8), intent(in)  time,
real(kind=8), dimension(mesh%me), intent(in)  sigma,
real(kind=8), dimension(:,:,:), intent(out)  J_over_sigma_gauss 
)

Definition at line 5092 of file maxwell_update_time_with_H.f90.

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine update_maxwell_with_h::smb_current_over_sigma_bdy (   communicator,
type(mesh_type), intent(in)  mesh,
integer, dimension(:), intent(in)  jj_v_to_H,
integer, dimension(:), intent(in)  Dirichlet_bdy_H_sides,
integer, dimension(:), intent(in)  list_mode,
real(kind=8), dimension(:,:,:), intent(in)  B_in,
real(kind=8), dimension(:), intent(in)  mu_H_field,
real(kind=8), intent(in)  mu_phi,
real(kind=8), dimension(:,:,:), intent(in)  one_over_sigma_tot,
real(kind=8), intent(in)  time,
real(kind=8), dimension(mesh%me), intent(in)  sigma,
real(kind=8), dimension(:,:,:), intent(out)  J_over_sigma_gauss 
)

Definition at line 5183 of file maxwell_update_time_with_H.f90.

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine update_maxwell_with_h::smb_current_over_sigma_inter_mu (   communicator,
type(mesh_type), intent(in)  mesh,
integer, dimension(:), intent(in)  jj_v_to_H,
type(interface_type), intent(in)  interface_H_mu,
integer, dimension(:), intent(in)  list_mode,
real(kind=8), dimension(:,:,:), intent(in)  B_in,
real(kind=8), dimension(:), intent(in)  mu_H_field,
real(kind=8), intent(in)  mu_phi,
real(kind=8), dimension(:,:,:), intent(in)  one_over_sigma_tot,
real(kind=8), intent(in)  time,
real(kind=8), dimension(mesh%me), intent(in)  sigma,
real(kind=8), dimension(:,:,:), intent(out)  J_over_sigma_gauss 
)

Definition at line 5279 of file maxwell_update_time_with_H.f90.

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine update_maxwell_with_h::smb_sigma_neumann (   communicator,
type(mesh_type), intent(in)  mesh,
integer, dimension(:), intent(in)  Neumann_bdy_H_sides,
integer, dimension(:), intent(in)  list_mode,
real(kind=8), dimension(:,:,:), intent(in)  one_over_sigma_tot,
real(kind=8), dimension(:,:,:), intent(out)  sigma_tot_gauss_Neumann 
)

Definition at line 5435 of file maxwell_update_time_with_H.f90.

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine update_maxwell_with_h::smb_sigma_prod_curl (   communicator,
type(mesh_type), intent(in)  mesh,
integer, dimension(:), intent(in)  jj_v_to_H,
integer, dimension(:), intent(in)  list_mode,
real(kind=8), dimension(:,:,:), intent(in)  H_in,
real(kind=8), dimension(:,:,:), intent(in)  one_over_sigma_in,
real(kind=8), dimension(mesh%gauss%n_w,mesh%me), intent(in)  sigma_nj_m,
real(kind=8), dimension(mesh%me), intent(in)  sigma,
real(kind=8), dimension(:,:,:)  V_out 
)

Definition at line 4686 of file maxwell_update_time_with_H.f90.

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine update_maxwell_with_h::smb_sigma_prod_curl_bdy (   communicator,
type(mesh_type), intent(in)  mesh,
integer, dimension(:), intent(in)  jj_v_to_H,
integer, dimension(:), intent(in)  Dirichlet_bdy_H_sides,
integer, dimension(:), intent(in)  list_mode,
real(kind=8), dimension(:,:,:), intent(in)  H_in,
real(kind=8), dimension(:,:,:), intent(in)  one_over_sigma_in,
real(kind=8), dimension(:), intent(in)  sigma_np,
real(kind=8), dimension(mesh%me), intent(in)  sigma,
real(kind=8), dimension(:,:,:)  V_out 
)

Definition at line 4791 of file maxwell_update_time_with_H.f90.

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine update_maxwell_with_h::smb_sigma_prod_curl_inter_mu (   communicator,
type(mesh_type), intent(in)  mesh,
integer, dimension(:), intent(in)  jj_v_to_H,
type(interface_type), intent(in)  interface_H_mu,
integer, dimension(:), intent(in)  list_mode,
real(kind=8), dimension(:,:,:), intent(in)  H_in,
real(kind=8), dimension(:,:,:), intent(in)  one_over_sigma_in,
real(kind=8), dimension(:), intent(in)  sigma_np,
real(kind=8), dimension(mesh%me), intent(in)  sigma,
real(kind=8), dimension(:,:,:)  V_out 
)

Definition at line 4908 of file maxwell_update_time_with_H.f90.

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine update_maxwell_with_h::surf_int ( type(mesh_type), intent(in)  H_mesh,
type(mesh_type), intent(in)  phi_mesh,
type(mesh_type), intent(in)  pmag_mesh,
type(interface_type), intent(in)  interface_H_phi,
type(interface_type), intent(in)  interface_H_mu,
integer, dimension(:), intent(in)  list_dirichlet_sides_H,
real(kind=8), dimension(h_mesh%me), intent(in)  sigma,
real(kind=8), intent(in)  mu_phi,
real(kind=8), dimension(:), intent(in)  mu_H_field,
real(kind=8), intent(in)  time,
integer, intent(in)  mode,
type(petsc_csr_la LA_H,
type(petsc_csr_la LA_phi,
type(petsc_csr_la LA_pmag,
  vb_1,
  vb_2,
real(kind=8), dimension(:,:)  sigma_tot_gauss,
real(kind=8), optional  R_fourier,
integer, optional  index_fourier 
)

Definition at line 3260 of file maxwell_update_time_with_H.f90.

Here is the call graph for this function:

Here is the caller graph for this function:

Variable Documentation

real(kind=8), parameter, private update_maxwell_with_h::alpha =0.6d0
private

Definition at line 10 of file maxwell_update_time_with_H.f90.

integer, dimension(:), allocatable update_maxwell_with_h::neumann_bdy_h_sides
private

Definition at line 11 of file maxwell_update_time_with_H.f90.

integer, dimension(:), allocatable update_maxwell_with_h::neumann_bdy_phi_sides
private

Definition at line 13 of file maxwell_update_time_with_H.f90.

integer, dimension(:), allocatable update_maxwell_with_h::neumann_bdy_pmag_sides
private

Definition at line 12 of file maxwell_update_time_with_H.f90.