www.mooseframework.org
BimodalSuperellipsoidsIC.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 
13 
14 // Forward Declarations
16 
17 template <>
19 
30 {
31 public:
32  BimodalSuperellipsoidsIC(const InputParameters & parameters);
33 
34  virtual void initialSetup();
35 
36 protected:
37  virtual void computeSuperellipsoidCenters();
38  virtual void computeSuperellipsoidSemiaxes();
39  virtual void computeSuperellipsoidExponents();
40 
42  unsigned int _npart;
45  Real _small_a;
46  Real _small_b;
47  Real _small_c;
48  Real _small_n;
49  const Real _size_variation;
50  const MooseEnum _size_variation_type;
52 
53  const unsigned int _max_num_tries;
54 
55  Point _bottom_left;
56  Point _top_right;
57  Point _range;
58 };
59 
virtual void computeSuperellipsoidSemiaxes()
InputParameters validParams< BimodalSuperellipsoidsIC >()
SpecifiedSmoothSuperellipsoidIC creates multiple SmoothSuperellipsoids (number = size of x_positions)...
BimodalSuperellipsoidsIC takes a specified number of superellipsoids, each with given parameters Thes...
unsigned int _npart
Variables to describe the randomly placed (smaller) superellipsoids.
BimodalSuperellipsoidsIC(const InputParameters &parameters)