https://mooseframework.inl.gov
ReflectionCoefficient.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://mooseframework.inl.gov
3 //*
4 //* All rights reserved, see COPYRIGHT for full restrictions
5 //* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6 //*
7 //* Licensed under LGPL 2.1, please see LICENSE for details
8 //* https://www.gnu.org/licenses/lgpl-2.1.html
9 
10 #pragma once
11 
12 #include "SidePostprocessor.h"
13 #include "MooseVariableInterface.h"
14 
21 {
22 public:
24 
26 
27  virtual void initialize() override;
28  virtual void execute() override;
29  virtual PostprocessorValue getValue() const override;
30  virtual void threadJoin(const UserObject & y) override;
31  virtual void finalize() override;
32 
33 protected:
35  virtual Real computeReflection();
36 
38  unsigned int _qp;
39 
42 
45 
47  const Real _theta;
48 
50  const Real _length;
51 
53  const Real _k;
54 
57 
60 };
virtual Real computeReflection()
compute reflection coefficient
unsigned int _qp
quadrature point
const Real _theta
Wave incidence angle.
virtual PostprocessorValue getValue() const override
Real _reflection_coefficient
Value of the reflection coefficient.
const std::vector< double > y
const Real _k
Wave number.
const VariableValue & _coupled_imag
Imaginary component of the coupled field variable.
const Real _incoming_mag
Incoming field magnitude.
CURRENTLY ONLY FOR 1D PLANE WAVE SOLVES.
static InputParameters validParams()
virtual void execute() override
virtual void initialize() override
const Real _length
Domain length.
Real PostprocessorValue
virtual void threadJoin(const UserObject &y) override
virtual void finalize() override
OutputTools< Real >::VariableValue VariableValue
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
const InputParameters & parameters() const
ReflectionCoefficient(const InputParameters &parameters)
const VariableValue & _coupled_real
Real component of the coupled field variable.