26 #ifndef BOUNDARIES_HOPPERINSERTIONBOUNDARY_H
27 #define BOUNDARIES_HOPPERINSERTIONBOUNDARY_H
69 void set(
BaseParticle* particleToCopy,
int maxFailed,
double yMin,
double yMax,
double radMin,
double radMax,
70 double chuteAngle,
double fixedParticleRadius,
bool isHopperCentred_,
int hopperDim,
double hopperAngle,
double hopperLength,
double hopperExitLength,
71 double hopperHeight,
double lift,
double fillPercent);
81 void read(std::istream& is);
92 void write(std::ostream& os)
const;
97 virtual std::string
getName()
const;
double fixedParticleRadius_
double hopperExitLength_
The horizontal (AB-direction) width at the square exit of the hopper.
double radMin_
Minimum and maximum radii of the inserted particles.
virtual std::string getName() const
Returns the name of the object.
MERCURY_DEPRECATED void oldRead(std::istream &is)
deprecated version of CubeInsertionBoundary::read().
double hopperHeight_
The vertical (AC-direction) height of the hopper, measured from the top of the hopper to the start of...
double hopperLength_
The horizontal (AB-direction) width at the top of the hopper.
int hopperDim_
Either 1 or 2. If 1, the insertion boundary has vertical walls in the y extrema. This is used e...
Boundary structure for boundaries used for insertion of particles.
#define MERCURY_DEPRECATED
This is a class that generates random numbers i.e. named the Random Number Generator (RNG)...
HopperInsertionBoundary()
Default constructor. Sets all properties to 0.
void write(std::ostream &os) const
writes boundary properties to ostream
virtual HopperInsertionBoundary * copy() const
copy method, returns a pointer to a copy.
double hopperAngle_
Angle of the hopper as compared to the vertical plane.
double chuteAngle_
Angle of the chute as compared to the horizontal plane.
Inherits from InsertionBoundary Some images are useful to better understand the structure of both the...
void set(BaseParticle *particleToCopy, int maxFailed, double yMin, double yMax, double radMin, double radMax, double chuteAngle, double fixedParticleRadius, bool isHopperCentred_, int hopperDim, double hopperAngle, double hopperLength, double hopperExitLength, double hopperHeight, double lift, double fillPercent)
Sets all boundary properties at once.
double yMin_
The minimum and maximum y-positions of the particle for a hopper with vertical walls in the y-directi...
void read(std::istream &is)
reads boundary properties from istream
double fillPercent_
Percentage of the height of the insertion boundary up to which it should be filled. The part to be filled reaches from the top of the hopper down to {fillPercent * (top - 'position A')}.
virtual BaseParticle * generateParticle(RNG &random)
This creates an inflow particle in the top 50% of the hopper i.e. between gamma=0.5 and gamma=1.0.