![]()  | 
  
    Octopus
    
   | 
 
Data Types | |
| type | hamiltonian_mxll_t | 
Functions/Subroutines | |
| subroutine, public | hamiltonian_mxll_init (hm, namespace, gr, st) | 
| Initializing the Maxwell Hamiltonian.  More... | |
| subroutine, public | hamiltonian_mxll_end (hm) | 
| logical function, public | hamiltonian_mxll_hermitian (hm) | 
| subroutine, public | hamiltonian_mxll_span (hm, delta, emin, namespace) | 
| subroutine, public | hamiltonian_mxll_adjoint (hm) | 
| subroutine, public | hamiltonian_mxll_not_adjoint (hm) | 
| subroutine, public | hamiltonian_mxll_update (this, time) | 
| Maxwell Hamiltonian update (here only the time is updated, can maybe be added to another routine)  More... | |
| real(real64) function, public | hamiltonian_mxll_get_time (this) | 
| logical pure function, public | hamiltonian_mxll_apply_packed (this, mesh) | 
| subroutine, public | hamiltonian_mxll_apply_batch (hm, namespace, der, psib, hpsib, time, terms, set_bc) | 
| subroutine, public | hamiltonian_mxll_apply_simple (hm, namespace, mesh, psib, hpsib, terms, set_bc) | 
| subroutine | mxll_apply_pml_simple (hm, gradb) | 
| subroutine, public | mxll_update_pml_simple (hm, rs_stateb) | 
| subroutine, public | mxll_copy_pml_simple (hm, rs_stateb) | 
| subroutine | mxll_linear_medium_terms_simple (hm, rs_stateb) | 
| subroutine, public | dhamiltonian_mxll_apply (hm, namespace, mesh, psib, hpsib, terms, set_bc) | 
| Apply hamiltonian to real states (not possible)  More... | |
| subroutine, public | zhamiltonian_mxll_apply (hm, namespace, mesh, psib, hpsib, terms, set_bc) | 
| Applying the Maxwell Hamiltonian on Maxwell states.  More... | |
| subroutine | maxwell_hamiltonian_apply_fd (hm, der, psi, oppsi) | 
| Applying the Maxwell Hamiltonian on Maxwell states with finite difference.  More... | |
| subroutine | maxwell_pml_hamiltonian (hm, der, psi, dir1, dir2, tmp) | 
| Maxwell Hamiltonian is updated for the PML calculation.  More... | |
| subroutine | maxwell_pml_hamiltonian_medium (hm, der, psi, dir1, dir2, tmp) | 
| Maxwell Hamiltonian is updated for the PML calculation.  More... | |
| subroutine | maxwell_pml_calculation_via_riemann_silberstein (hm, der, psi, pml_dir, field_dir, pml) | 
| Maxwell Hamiltonian is updated for the PML calculation via Riemann-Silberstein vector.  More... | |
| subroutine | maxwell_pml_calculation_via_riemann_silberstein_medium (hm, der, psi, pml_dir, field_dir, pml) | 
| Maxwell Hamiltonian is updated for the PML calculation via Riemann-Silberstein vector with medium inside the box.  More... | |
| subroutine | maxwell_medium_boundaries_calculation (hm, psi, oppsi) | 
| Maxwell Hamiltonian for medium boundaries.  More... | |
| subroutine | maxwell_medium_boxes_calculation (hm, der, psi, oppsi) | 
| subroutine, public | dhamiltonian_mxll_magnus_apply (hm, namespace, mesh, psib, hpsib, vmagnus) | 
| Maxwell hamiltonian Magnus (not implemented)  More... | |
| subroutine, public | zhamiltonian_mxll_magnus_apply (hm, namespace, mesh, psib, hpsib, vmagnus) | 
| Maxwell hamiltonian Magnus (not implemented)  More... | |
Variables | |
| integer, parameter, public | faraday_ampere = 1 | 
| integer, parameter, public | faraday_ampere_medium = 2 | 
| integer, parameter, public | mxll_simple = 3 | 
| subroutine, public hamiltonian_mxll_oct_m::hamiltonian_mxll_init | ( | type(hamiltonian_mxll_t), intent(inout) | hm, | 
| type(namespace_t), intent(in) | namespace, | ||
| type(grid_t), intent(inout), target | gr, | ||
| type(states_mxll_t), intent(inout), target | st | ||
| ) | 
Initializing the Maxwell Hamiltonian.
Definition at line 253 of file hamiltonian_mxll.F90.
| subroutine, public hamiltonian_mxll_oct_m::hamiltonian_mxll_end | ( | type(hamiltonian_mxll_t), intent(inout) | hm | ) | 
Definition at line 354 of file hamiltonian_mxll.F90.
| logical function, public hamiltonian_mxll_oct_m::hamiltonian_mxll_hermitian | ( | class(hamiltonian_mxll_t), intent(in) | hm | ) | 
Definition at line 380 of file hamiltonian_mxll.F90.
| subroutine, public hamiltonian_mxll_oct_m::hamiltonian_mxll_span | ( | class(hamiltonian_mxll_t), intent(inout) | hm, | 
| real(real64), dimension(:), intent(in) | delta, | ||
| real(real64), intent(in) | emin, | ||
| type(namespace_t), intent(in) | namespace | ||
| ) | 
Definition at line 397 of file hamiltonian_mxll.F90.
| subroutine, public hamiltonian_mxll_oct_m::hamiltonian_mxll_adjoint | ( | type(hamiltonian_mxll_t), intent(inout) | hm | ) | 
Definition at line 433 of file hamiltonian_mxll.F90.
| subroutine, public hamiltonian_mxll_oct_m::hamiltonian_mxll_not_adjoint | ( | type(hamiltonian_mxll_t), intent(inout) | hm | ) | 
Definition at line 447 of file hamiltonian_mxll.F90.
| subroutine, public hamiltonian_mxll_oct_m::hamiltonian_mxll_update | ( | type(hamiltonian_mxll_t), intent(inout) | this, | 
| real(real64), intent(in), optional | time | ||
| ) | 
Maxwell Hamiltonian update (here only the time is updated, can maybe be added to another routine)
Definition at line 462 of file hamiltonian_mxll.F90.
| real(real64) function, public hamiltonian_mxll_oct_m::hamiltonian_mxll_get_time | ( | type(hamiltonian_mxll_t), intent(inout) | this | ) | 
Definition at line 476 of file hamiltonian_mxll.F90.
| logical pure function, public hamiltonian_mxll_oct_m::hamiltonian_mxll_apply_packed | ( | type(hamiltonian_mxll_t), intent(in) | this, | 
| class(mesh_t), intent(in) | mesh | ||
| ) | 
Definition at line 485 of file hamiltonian_mxll.F90.
| subroutine, public hamiltonian_mxll_oct_m::hamiltonian_mxll_apply_batch | ( | type(hamiltonian_mxll_t), intent(in) | hm, | 
| type(namespace_t), intent(in) | namespace, | ||
| type(derivatives_t), intent(in) | der, | ||
| type(batch_t), intent(inout), target | psib, | ||
| type(batch_t), intent(inout), target | hpsib, | ||
| real(real64), intent(in), optional | time, | ||
| integer, intent(in), optional | terms, | ||
| logical, intent(in), optional | set_bc | ||
| ) | 
| [in] | set_bc | If set to .false. the boundary conditions are assumed to be set previously. | 
Definition at line 495 of file hamiltonian_mxll.F90.
| subroutine, public hamiltonian_mxll_oct_m::hamiltonian_mxll_apply_simple | ( | type(hamiltonian_mxll_t), intent(in) | hm, | 
| type(namespace_t), intent(in) | namespace, | ||
| class(mesh_t), intent(in) | mesh, | ||
| type(batch_t), intent(inout), target | psib, | ||
| type(batch_t), intent(inout), target | hpsib, | ||
| integer, intent(in), optional | terms, | ||
| logical, intent(in), optional | set_bc | ||
| ) | 
| [in] | set_bc | If set to .false. the boundary conditions are assumed to be set previously. | 
Definition at line 776 of file hamiltonian_mxll.F90.
      
  | 
  private | 
Definition at line 818 of file hamiltonian_mxll.F90.
| subroutine, public hamiltonian_mxll_oct_m::mxll_update_pml_simple | ( | type(hamiltonian_mxll_t), intent(inout) | hm, | 
| type(batch_t), intent(inout) | rs_stateb | ||
| ) | 
Definition at line 875 of file hamiltonian_mxll.F90.
| subroutine, public hamiltonian_mxll_oct_m::mxll_copy_pml_simple | ( | type(hamiltonian_mxll_t), intent(inout) | hm, | 
| type(batch_t), intent(inout) | rs_stateb | ||
| ) | 
Definition at line 934 of file hamiltonian_mxll.F90.
      
  | 
  private | 
Definition at line 971 of file hamiltonian_mxll.F90.
| subroutine, public hamiltonian_mxll_oct_m::dhamiltonian_mxll_apply | ( | class(hamiltonian_mxll_t), intent(in) | hm, | 
| type(namespace_t), intent(in) | namespace, | ||
| class(mesh_t), intent(in) | mesh, | ||
| class(batch_t), intent(inout), target | psib, | ||
| class(batch_t), intent(inout), target | hpsib, | ||
| integer, intent(in), optional | terms, | ||
| logical, intent(in), optional | set_bc | ||
| ) | 
Apply hamiltonian to real states (not possible)
| [in] | set_bc | If set to .false. the boundary conditions are assumed to be set previously. | 
Definition at line 1038 of file hamiltonian_mxll.F90.
| subroutine, public hamiltonian_mxll_oct_m::zhamiltonian_mxll_apply | ( | class(hamiltonian_mxll_t), intent(in) | hm, | 
| type(namespace_t), intent(in) | namespace, | ||
| class(mesh_t), intent(in) | mesh, | ||
| class(batch_t), intent(inout), target | psib, | ||
| class(batch_t), intent(inout), target | hpsib, | ||
| integer, intent(in), optional | terms, | ||
| logical, intent(in), optional | set_bc | ||
| ) | 
Applying the Maxwell Hamiltonian on Maxwell states.
| [in] | set_bc | If set to .false. the boundary conditions are assumed to be set previously. | 
Definition at line 1054 of file hamiltonian_mxll.F90.
      
  | 
  private | 
Applying the Maxwell Hamiltonian on Maxwell states with finite difference.
Definition at line 1100 of file hamiltonian_mxll.F90.
      
  | 
  private | 
Maxwell Hamiltonian is updated for the PML calculation.
Definition at line 1248 of file hamiltonian_mxll.F90.
      
  | 
  private | 
Maxwell Hamiltonian is updated for the PML calculation.
Definition at line 1272 of file hamiltonian_mxll.F90.
      
  | 
  private | 
Maxwell Hamiltonian is updated for the PML calculation via Riemann-Silberstein vector.
Definition at line 1296 of file hamiltonian_mxll.F90.
      
  | 
  private | 
Maxwell Hamiltonian is updated for the PML calculation via Riemann-Silberstein vector with medium inside the box.
Definition at line 1341 of file hamiltonian_mxll.F90.
      
  | 
  private | 
Maxwell Hamiltonian for medium boundaries.
Definition at line 1392 of file hamiltonian_mxll.F90.
      
  | 
  private | 
Definition at line 1454 of file hamiltonian_mxll.F90.
| subroutine, public hamiltonian_mxll_oct_m::dhamiltonian_mxll_magnus_apply | ( | class(hamiltonian_mxll_t), intent(in) | hm, | 
| type(namespace_t), intent(in) | namespace, | ||
| class(mesh_t), intent(in) | mesh, | ||
| class(batch_t), intent(inout) | psib, | ||
| class(batch_t), intent(inout) | hpsib, | ||
| real(real64), dimension(:, :, :), intent(in) | vmagnus | ||
| ) | 
Maxwell hamiltonian Magnus (not implemented)
Definition at line 1517 of file hamiltonian_mxll.F90.
| subroutine, public hamiltonian_mxll_oct_m::zhamiltonian_mxll_magnus_apply | ( | class(hamiltonian_mxll_t), intent(in) | hm, | 
| type(namespace_t), intent(in) | namespace, | ||
| class(mesh_t), intent(in) | mesh, | ||
| class(batch_t), intent(inout) | psib, | ||
| class(batch_t), intent(inout) | hpsib, | ||
| real(real64), dimension(:, :, :), intent(in) | vmagnus | ||
| ) | 
Maxwell hamiltonian Magnus (not implemented)
Definition at line 1531 of file hamiltonian_mxll.F90.
| integer, parameter, public hamiltonian_mxll_oct_m::faraday_ampere = 1 | 
Definition at line 244 of file hamiltonian_mxll.F90.
| integer, parameter, public hamiltonian_mxll_oct_m::faraday_ampere_medium = 2 | 
Definition at line 244 of file hamiltonian_mxll.F90.
| integer, parameter, public hamiltonian_mxll_oct_m::mxll_simple = 3 | 
Definition at line 244 of file hamiltonian_mxll.F90.