www.mooseframework.org
FourierNoise.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://www.mooseframework.org
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 "Function.h"
13 
14 class FourierNoise;
15 class FEProblemBase;
16 
17 template <>
18 InputParameters validParams<FourierNoise>();
19 
23 class FourierNoise : public Function
24 {
25 public:
26  FourierNoise(const InputParameters & parameters);
27 
28  virtual Real value(Real, const Point & p) const override;
29 
30 protected:
31  struct SeriesItem
32  {
34  RealVectorValue k;
36  Real s;
38  Real c;
39  };
40 
42  const Real _lambda;
43 
45  std::vector<SeriesItem> _series;
46 
48  Real _scale;
49 
51  FEProblemBase & _fe_problem;
52 };
FourierNoise::_scale
Real _scale
amplitude factor
Definition: FourierNoise.h:48
FourierNoise::FourierNoise
FourierNoise(const InputParameters &parameters)
Definition: FourierNoise.C:33
FourierNoise::value
virtual Real value(Real, const Point &p) const override
Definition: FourierNoise.C:106
FourierNoise
Generate noise using random fourier series coefficients.
Definition: FourierNoise.h:23
FourierNoise::_series
std::vector< SeriesItem > _series
Fourier series terms.
Definition: FourierNoise.h:45
FourierNoise::_fe_problem
FEProblemBase & _fe_problem
FEProblem pointer for obtaining the current mesh.
Definition: FourierNoise.h:51
FourierNoise::SeriesItem::k
RealVectorValue k
k-vector
Definition: FourierNoise.h:34
FourierNoise::SeriesItem::s
Real s
sin coefficient
Definition: FourierNoise.h:36
FourierNoise::SeriesItem::c
Real c
cos coefficient
Definition: FourierNoise.h:38
FourierNoise::SeriesItem
Definition: FourierNoise.h:31
FourierNoise::_lambda
const Real _lambda
selected lower lengthscale for the noise cut-off
Definition: FourierNoise.h:42
validParams< FourierNoise >
InputParameters validParams< FourierNoise >()
Definition: FourierNoise.C:19