| Bsoft 2.0.5 Bernard's software package

Public Member Functions | List of all members
UnitCell Class Reference

`#include <UnitCell.h>`

## Public Member Functions
| UnitCell ()
| UnitCell (double *v)
| UnitCell (double a, double b, double c, double alf, double bet, double gam)
double & | operator[] (int i)
bool | check ()
void | size (double a, double b, double c)
void | a (double d)
void | b (double d)
void | c (double d)
void | alpha (double d)
void | beta (double d)
void | gamma (double d)
double | a ()
double | b ()
double | c ()
double | alpha ()
double | beta ()
double | gamma ()
void | set_angle_range ()
void | degrees_to_radians ()
void | radians_to_degrees ()
double | volume ()
Matrix3 | skew_matrix ()
| Calculates the skew matrix from the unit cell parameters. More...
Matrix3 | skew_rotation (int invert)

## Detailed Description

Definition at line 22 of file UnitCell.h.

## Constructor & Destructor Documentation

## ◆ UnitCell() [1/3]

UnitCell::UnitCell | ( |  | ) |
| inline

Definition at line 26 of file UnitCell.h.

## ◆ UnitCell() [2/3]

UnitCell::UnitCell | ( | double * | v | ) |
| inline

Definition at line 27 of file UnitCell.h.

## ◆ UnitCell() [3/3]

UnitCell::UnitCell | ( | double | a,
|  | double | b,
|  | double | c,
|  | double | alf,
|  | double | bet,
|  | double | gam
| ) |  |
| inline

Definition at line 28 of file UnitCell.h.

## Member Function Documentation

## ◆ a() [1/2]

void UnitCell::a | ( | double | d | ) |
| inline

Definition at line 36 of file UnitCell.h.

## ◆ a() [2/2]

double UnitCell::a | ( |  | ) |
| inline

Definition at line 42 of file UnitCell.h.

## ◆ alpha() [1/2]

void UnitCell::alpha | ( | double | d | ) |
| inline

Definition at line 39 of file UnitCell.h.

## ◆ alpha() [2/2]

double UnitCell::alpha | ( |  | ) |
| inline

Definition at line 45 of file UnitCell.h.

## ◆ b() [1/2]

void UnitCell::b | ( | double | d | ) |
| inline

Definition at line 37 of file UnitCell.h.

## ◆ b() [2/2]

double UnitCell::b | ( |  | ) |
| inline

Definition at line 43 of file UnitCell.h.

## ◆ beta() [1/2]

void UnitCell::beta | ( | double | d | ) |
| inline

Definition at line 40 of file UnitCell.h.

## ◆ beta() [2/2]

double UnitCell::beta | ( |  | ) |
| inline

Definition at line 46 of file UnitCell.h.

## ◆ c() [1/2]

void UnitCell::c | ( | double | d | ) |
| inline

Definition at line 38 of file UnitCell.h.

## ◆ c() [2/2]

double UnitCell::c | ( |  | ) |
| inline

Definition at line 44 of file UnitCell.h.

## ◆ check()

bool UnitCell::check | ( |  | ) |
| inline

Definition at line 34 of file UnitCell.h.

## ◆ degrees_to_radians()

void UnitCell::degrees_to_radians | ( |  | ) |
| inline

Definition at line 54 of file UnitCell.h.

## ◆ gamma() [1/2]

void UnitCell::gamma | ( | double | d | ) |
| inline

Definition at line 41 of file UnitCell.h.

## ◆ gamma() [2/2]

double UnitCell::gamma | ( |  | ) |
| inline

Definition at line 47 of file UnitCell.h.

## ◆ operator[]()

double& UnitCell::operator[] | ( | int | i | ) |
| inline

Definition at line 33 of file UnitCell.h.

## ◆ radians_to_degrees()

void UnitCell::radians_to_degrees | ( |  | ) |
| inline

Definition at line 55 of file UnitCell.h.

## ◆ set_angle_range()

void UnitCell::set_angle_range | ( |  | ) |
| inline

Definition at line 48 of file UnitCell.h.

## ◆ size()

void UnitCell::size | ( | double | a,
|  | double | b,
|  | double | c
| ) |  |
| inline

Definition at line 35 of file UnitCell.h.

## ◆ skew_matrix()

Matrix3 UnitCell::skew_matrix | ( |  | ) |

Calculates the skew matrix from the unit cell parameters.

Returns
  Matrix3 the 3x3 skew matrix.

      Derived from the X-plor source rotate.s.
      New coordinates are obtained by r'(i)=sum_j matrix(i,j)*r(j)
      The convention to setup the matrices is as follows:
          a lies on the x-axis,
          b lies in the x,y plane.

Definition at line 26 of file UnitCell.cpp.

## ◆ skew_rotation()

Matrix3 UnitCell::skew_rotation | ( | int | invert | ) |

Definition at line 65 of file UnitCell.cpp.

## ◆ volume()

double UnitCell::volume | ( |  | ) |
| inline

Definition at line 56 of file UnitCell.h.

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

- /Users/bernard/b20/bsoft/include/UnitCell.h
- /Users/bernard/b20/bsoft/src/util/UnitCell.cpp