MFEM v4.9.0
Finite element discretization library
Loading...
Searching...
No Matches
schrodinger_flow.hpp File Reference

Go to the source code of this file.

Classes

struct  mfem::Options
 Options for the Incompressible Schrödinger Flow solver. More...
 
struct  Complex
 
struct  mfem::SchrodingerBaseKernels< TMesh, TFiniteElementSpace, TComplexGridFunction, TGridFunction, TBilinearForm, TMixedBilinearForm, TLinearForm >
 Base class for Schrodinger solver kernels. More...
 
struct  mfem::CrankNicolsonTimeBaseSolver< TFiniteElementSpace, TSesquilinearForm, TComplexGridFunction >
 Crank-Nicolson time solver for the Schrodinger equation. More...
 
class  mfem::IncompressibleBaseFlow< TSchrodingerSolver, TGridFunction >
 Class for simulating incompressible Schrodinger flow. More...
 
struct  mfem::VisualizerBase< TMesh, TGridFunction, TFiniteElementSpace, TSchrodingerSolver, TIncompressibleFlow >
 Base class for visualization. More...
 

Namespaces

namespace  mfem
 

Typedefs

using complex_t = std::complex<real_t>
 Complex number type for device.
 
using RealComplex_t = cuFloatComplex
 
using mfem::real3_t = std::array<real_t, 3>
 

Functions

MFEM_HOST_DEVICE Complex operator* (const Complex &x, const real_t &y)
 
MFEM_HOST_DEVICE Complex operator+ (const Complex &a, const Complex &b)
 
MFEM_HOST_DEVICE Complex operator* (const real_t d, const Complex &z)
 
MFEM_HOST_DEVICE Complex operator* (const Complex &a, const Complex &b)
 
MFEM_HOST_DEVICE Complex operator/ (const Complex &z, const real_t &d)
 
MFEM_HOST_DEVICE real_t abs (const Complex &z)
 
MFEM_HOST_DEVICE Complex exp (const Complex &q)
 
MFEM_HOST_DEVICE real_t norm (const Complex &z)
 

Typedef Documentation

◆ complex_t

typedef Complex complex_t = std::complex<real_t>

Complex number type for device.

Definition at line 134 of file schrodinger_flow.hpp.

◆ RealComplex_t

typedef hipDoubleComplex RealComplex_t = cuFloatComplex

Definition at line 140 of file schrodinger_flow.hpp.

Function Documentation

◆ abs()

MFEM_HOST_DEVICE real_t abs ( const Complex & z)
inline

Definition at line 204 of file schrodinger_flow.hpp.

◆ exp()

MFEM_HOST_DEVICE Complex exp ( const Complex & q)
inline

Definition at line 209 of file schrodinger_flow.hpp.

◆ norm()

MFEM_HOST_DEVICE real_t norm ( const Complex & z)
inline

Definition at line 220 of file schrodinger_flow.hpp.

◆ operator*() [1/3]

MFEM_HOST_DEVICE Complex operator* ( const Complex & a,
const Complex & b )
inline

Definition at line 193 of file schrodinger_flow.hpp.

◆ operator*() [2/3]

MFEM_HOST_DEVICE Complex operator* ( const Complex & x,
const real_t & y )
inline

Definition at line 178 of file schrodinger_flow.hpp.

◆ operator*() [3/3]

MFEM_HOST_DEVICE Complex operator* ( const real_t d,
const Complex & z )
inline

Definition at line 188 of file schrodinger_flow.hpp.

◆ operator+()

MFEM_HOST_DEVICE Complex operator+ ( const Complex & a,
const Complex & b )
inline

Definition at line 183 of file schrodinger_flow.hpp.

◆ operator/()

MFEM_HOST_DEVICE Complex operator/ ( const Complex & z,
const real_t & d )
inline

Definition at line 199 of file schrodinger_flow.hpp.