www.mooseframework.org
PorousFlowLineGeometry.h
Go to the documentation of this file.
1 /****************************************************************/
2 /* MOOSE - Multiphysics Object Oriented Simulation Environment */
3 /* */
4 /* All contents are licensed under LGPL V2.1 */
5 /* See LICENSE for full restrictions */
6 /****************************************************************/
7 
8 #ifndef POROUSFLOWLINEGEOMETRY_H
9 #define POROUSFLOWLINEGEOMETRY_H
10 
11 #include "DiracKernel.h"
12 
14 
15 template <>
16 InputParameters validParams<PorousFlowLineGeometry>();
17 
21 class PorousFlowLineGeometry : public DiracKernel
22 {
23 public:
31  PorousFlowLineGeometry(const InputParameters & parameters);
32 
33 protected:
35  const Real _line_length;
36 
38  const RealVectorValue _line_direction;
39 
45  const std::string _point_file;
46 
48  std::vector<Real> _rs;
49 
51  std::vector<Real> _xs;
52 
54  std::vector<Real> _ys;
55 
57  std::vector<Real> _zs;
58 
61 
63  std::vector<Real> _half_seg_len;
64 
66  virtual void addPoints() override;
67 
69  bool parseNextLineReals(std::ifstream & ifs, std::vector<Real> & myvec);
70 };
71 
72 #endif // POROUSFLOWLINEGEOMETRY_H
virtual void addPoints() override
Add Dirac Points to the line sink.
bool parseNextLineReals(std::ifstream &ifs, std::vector< Real > &myvec)
reads a space-separated line of floats from ifs and puts in myvec
const Real _line_length
line length. This is only used if there is only one borehole point
Approximates a borehole by a sequence of Dirac Points.
InputParameters validParams< PorousFlowLineGeometry >()
std::vector< Real > _ys
y points of the borehole
std::vector< Real > _half_seg_len
0.5*(length of polyline segments between points)
const RealVectorValue _line_direction
line direction. This is only used if there is only one borehole point
PorousFlowLineGeometry(const InputParameters &parameters)
Creates a new PorousFlowLineGeometry This reads the file containing the lines of the form weight x y ...
std::vector< Real > _zs
z points of borehole
const std::string _point_file
File defining the geometry of the borehole.
std::vector< Real > _xs
x points of the borehole
std::vector< Real > _rs
radii of the borehole
Point _bottom_point
the bottom point of the borehole (where bottom_pressure is defined)