# PhasicFlow: line Class Reference
PhasicFlow is an open-source parallel DEM (discrete element method) package for simulating granular flow. It is developed in C++ and can be exectued on both GPU (like CUDA) and CPU.

line Class Reference
Inheritance diagram for line:
[legend]
Collaboration diagram for line:
[legend]

## Public Member Functions

| TypeInfoNV ("line")
FUNCTION_HD | line ()
FUNCTION_HD | line (const realx3 &lp1, const realx3 &lp2)
INLINE_FUNCTION_HD | line (const realx3 &v21, const realx3 &p1, bool)
FUNCTION_H | line (const dictionary &dict)
INLINE_FUNCTION_HD | line (const line &src)=default
INLINE_FUNCTION_HD | line (line &&src)=default
INLINE_FUNCTION_HD line & | operator= (const line &)=default
INLINE_FUNCTION_HD line & | operator= (line &&)=default
INLINE_FUNCTION_HD void | set (const realx3 &lp1, const realx3 &lp2)
INLINE_FUNCTION_HD realx3 | point1 () const
INLINE_FUNCTION_HD realx3 | point2 () const
INLINE_FUNCTION_HD realx3 | point (real t) const
INLINE_FUNCTION_HD real | length () const
INLINE_FUNCTION_HD realx3 | unitVector () const
INLINE_FUNCTION_HD realx3 | projectPoint (const realx3 &p) const
INLINE_FUNCTION_HD real | projectNormalizedLength (realx3 p) const
FUNCTION_H bool | read (const dictionary &dict)
FUNCTION_H bool | write (dictionary &ditc) const
FUNCTION_H bool | read (iIstream &is)
FUNCTION_H bool | write (iOstream &os) const

## Protected Attributes

realx3 | p1_
realx3 | v21_

## Detailed Description

Definition at line 36 of file line.hpp.

## Constructor & Destructor Documentation

## line() [1/6]

FUNCTION_HD line | ( |  | ) |

inline

Definition at line 52 of file line.hpp.

## line() [2/6]

FUNCTION_HD line | ( | const realx3 & | lp1,
|  | const realx3 & | lp2
| ) |  |

Definition at line 28 of file line.cpp.

## line() [3/6]

INLINE_FUNCTION_HD line | ( | const realx3 & | v21,
|  | const realx3 & | p1,
|  | bool |
| ) |  |

inline

Definition at line 59 of file line.hpp.

## line() [4/6]

FUNCTION_H line | ( | const dictionary & | dict | ) |

Definition at line 38 of file line.cpp.

References fatalExit.

## line() [5/6]

INLINE_FUNCTION_HD line | ( | const line & | src | ) |

default

## line() [6/6]

INLINE_FUNCTION_HD line | ( | line && | src | ) |

default

## Member Function Documentation

## TypeInfoNV()

TypeInfoNV | ( | "line" |  | ) |

## operator=() [1/2]

INLINE_FUNCTION_HD line& operator= | ( | const line & |  | ) |

default

## operator=() [2/2]

INLINE_FUNCTION_HD line& operator= | ( | line && |  | ) |

default

## set()

INLINE_FUNCTION_HD void set | ( | const realx3 & | lp1,
|  | const realx3 & | lp2
| ) |  |

inline

Definition at line 86 of file line.hpp.

References line::p1_, and line::v21_.

Referenced by multiRotatingAxis::move().

Here is the caller graph for this function:

## point1()

INLINE_FUNCTION_HD realx3 point1 | ( |  | ) | const

inline

Definition at line 94 of file line.hpp.

References line::p1_.

Referenced by multiRotatingAxis::move(), pFlow::rotate(), and line::write().

Here is the caller graph for this function:

## point2()

INLINE_FUNCTION_HD realx3 point2 | ( |  | ) | const

inline

Definition at line 98 of file line.hpp.

References line::point().

Referenced by multiRotatingAxis::move(), and line::write().

Here is the call graph for this function:
Here is the caller graph for this function:

## point()

INLINE_FUNCTION_HD realx3 point | ( | real | t | ) | const

inline

Definition at line 102 of file line.hpp.

References line::p1_, and line::v21_.

Referenced by planeWall::addPlaneWall(), plane::parallelPlane(), line::point2(), line::projectPoint(), and cylinderWall::readCylinderWall().

Here is the caller graph for this function:

## length()

INLINE_FUNCTION_HD real length | ( |  | ) | const

inline

Definition at line 106 of file line.hpp.

References length(), and line::v21_.

Here is the call graph for this function:

## unitVector()

INLINE_FUNCTION_HD realx3 unitVector | ( |  | ) | const

inline

Definition at line 110 of file line.hpp.

References normalize(), and line::v21_.

Referenced by rotatingAxis::linVelocityPoint(), and pFlow::rotate().

Here is the call graph for this function:
Here is the caller graph for this function:

## projectPoint()

INLINE_FUNCTION_HD realx3 projectPoint | ( | const realx3 & | p | ) | const

inline

Definition at line 114 of file line.hpp.

References line::point(), and line::projectNormalizedLength().

Referenced by rotatingAxis::linVelocityPoint().

Here is the call graph for this function:
Here is the caller graph for this function:

## projectNormalizedLength()

INLINE_FUNCTION_HD real projectNormalizedLength | ( | realx3 | p | ) | const

inline

Definition at line 121 of file line.hpp.

References dot(), line::p1_, and line::v21_.

Referenced by line::projectPoint().

Here is the call graph for this function:
Here is the caller graph for this function:

## read() [1/2]

FUNCTION_H bool read | ( | const dictionary & | dict | ) |

Definition at line 50 of file line.cpp.

References dictionary::getVal().

Referenced by rotatingAxis::read().

Here is the call graph for this function:
Here is the caller graph for this function:

## write() [1/2]

FUNCTION_H bool write | ( | dictionary & | ditc | ) | const

Definition at line 61 of file line.cpp.

References dictionary::add(), pFlow::endl(), fatalErrorInFunction, dictionary::globalName(), line::point1(), and line::point2().

Referenced by rotatingAxis::write().

Here is the call graph for this function:
Here is the caller graph for this function:

## read() [2/2]

FUNCTION_H bool read | ( | iIstream & | is | ) |

Definition at line 82 of file line.cpp.

References IOstream::check(), pFlow::endl(), FUNCTION_NAME, ioErrorInFile, IOstream::lineNumber(), IOstream::name(), and iIstream::readEndStatement().

Here is the call graph for this function:

## write() [2/2]

FUNCTION_H bool write | ( | iOstream & | os | ) | const

Definition at line 124 of file line.cpp.

References IOstream::check(), FUNCTION_NAME, and iOstream::writeWordEntry().

Here is the call graph for this function:

## Member Data Documentation

## p1_

realx3 p1_

protected

Definition at line 41 of file line.hpp.

Referenced by line::point(), line::point1(), line::projectNormalizedLength(), and line::set().

## v21_

realx3 v21_

protected

Definition at line 44 of file line.hpp.

Referenced by line::length(), line::point(), line::projectNormalizedLength(), line::set(), and line::unitVector().

The documentation for this class was generated from the following files:

- src/phasicFlow/structuredData/line/line.hpp
- src/phasicFlow/structuredData/line/line.cpp