C library for manipulations based on cell parameters.
More...
#include <math.h>
Go to the source code of this file.
|
double | ccp4uc_frac_orth_mat (const double cell[6], const int ncode, double ro[3][3], double rf[3][3]) |
|
double | ccp4uc_calc_rcell (const double cell[6], double rcell[6]) |
|
void | ccp4uc_orth_to_frac (const double rf[3][3], const double xo[3], double xf[3]) |
|
void | ccp4uc_frac_to_orth (const double ro[3][3], const double xf[3], double xo[3]) |
|
void | ccp4uc_orthu_to_fracu (const double rf[3][3], const double uo[6], double uf[6]) |
|
void | ccp4uc_fracu_to_orthu (const double ro[3][3], const double uf[6], double uo[6]) |
|
double | ccp4uc_calc_cell_volume (const double cell[6]) |
|
int | ccp4uc_cells_differ (const double cell1[6], const double cell2[6], const double tolerance) |
|
int | ccp4uc_is_rhombohedral (const float cell[6], const float tolerance) |
|
int | ccp4uc_is_hexagonal (const float cell[6], const float tolerance) |
|
C library for manipulations based on cell parameters.
- Author
- Martyn Winn
◆ ccp4uc_calc_cell_volume()
double ccp4uc_calc_cell_volume |
( |
const double |
cell[6] | ) |
|
Calculate cell volume from cell parameters.
- Parameters
-
- Returns
- Cell volume.
Calculate cell volume from cell parameters.
- Parameters
-
[in] | cell | direct space cell parameters |
- Returns
- Cell volume.
Referenced by ccp4uc_calc_rcell(), and ccp4uc_cells_differ().
◆ ccp4uc_calc_rcell()
double ccp4uc_calc_rcell |
( |
const double |
cell[6], |
|
|
double |
rcell[6] |
|
) |
| |
From input cell, find dimensions of reciprocal cell.
- Parameters
-
- Returns
- Reciprocal cell volume
From input cell, find dimensions of reciprocal cell.
- Parameters
-
[in] | cell | direct space unit cell parameters. |
[out] | rcell | reciprocal space unit cell parameters. |
- Returns
- Reciprocal cell volume
References ccp4uc_calc_cell_volume().
◆ ccp4uc_cells_differ()
int ccp4uc_cells_differ |
( |
const double |
cell1[6], |
|
|
const double |
cell2[6], |
|
|
const double |
tolerance |
|
) |
| |
Check cells agree within tolerance.
- Parameters
-
cell1 | First cell. |
cell2 | Second cell. |
tolerance | A tolerance for agreement. |
- Returns
- 1 if cells differ by more than tolerance, 0 otherwise.
Check cells agree within tolerance.
- Parameters
-
[in] | cell1 | Cell parameters of first cell. |
[in] | cell2 | Cell parameters of second cell. |
[in] | tolerance | A tolerance for agreement. |
- Returns
- 1 if cells differ by more than tolerance, 0 otherwise.
References ccp4_liberr_verbosity(), and ccp4uc_calc_cell_volume().
◆ ccp4uc_frac_orth_mat()
double ccp4uc_frac_orth_mat |
( |
const double |
cell[6], |
|
|
const int |
ncode, |
|
|
double |
ro[3][3], |
|
|
double |
rf[3][3] |
|
) |
| |
From input cell and orthogonalisation code, find orthogonalisation and fractionalisation matrices.
- Parameters
-
- Returns
- Cell volume
From input cell and orthogonalisation code, find orthogonalisation and fractionalisation matrices.
- Parameters
-
[in] | cell | unit cell parameters |
[in] | ncode | orthogonalisation code:
- ncode = 1 - xo along a zo along c*
- ncode = 2 - xo along b zo along a*
- ncode = 3 - xo along c zo along b*
- ncode = 4 - trigonal only - xo along a+b yo alon a-b zo along c*
- ncode = 5 - xo along a* zo along c
- ncode = 6 - xo along a yo along b*
|
[out] | ro | orthogonalization matrix |
[out] | rf | fractionalisation matrix |
- Returns
- Cell volume
References invert3matrix().
◆ ccp4uc_frac_to_orth()
void ccp4uc_frac_to_orth |
( |
const double |
ro[3][3], |
|
|
const double |
xf[3], |
|
|
double |
xo[3] |
|
) |
| |
Convert fractional to orthogonal coordinates.
- Parameters
-
- Returns
- void
Convert fractional to orthogonal coordinates.
- Parameters
-
[in] | ro | orthogonalization matrix |
[in] | xf | fractional coordinates
|
[out] | xo | orthogonal coordinates |
- Returns
- void
◆ ccp4uc_fracu_to_orthu()
void ccp4uc_fracu_to_orthu |
( |
const double |
ro[3][3], |
|
|
const double |
uf[6], |
|
|
double |
uo[6] |
|
) |
| |
Convert fractional to orthogonal u matrix.
- Parameters
-
- Returns
- void
Convert fractional to orthogonal u matrix.
- Parameters
-
[in] | ro | orthogonalization matrix |
[in] | uf | fractional u matrix |
[out] | uo | orthogonal u matrix |
- Returns
- void
References ccp4_3matmul().
◆ ccp4uc_is_hexagonal()
int ccp4uc_is_hexagonal |
( |
const float |
cell[6], |
|
|
const float |
tolerance |
|
) |
| |
Check if cell parameters conform to a hexagonal setting.
- Parameters
-
cell | Cell parameters. Angles are assumed to be in degrees. |
tolerance | A tolerance for agreement. |
- Returns
- 1 if cell parameters conform, 0 otherwise.
Check if cell parameters conform to a hexagonal setting.
- Parameters
-
[in] | cell | Cell parameters. Angles are assumed to be in degrees. |
[in] | tolerance | A tolerance for agreement. |
- Returns
- 1 if cell parameters conform, 0 otherwise.
◆ ccp4uc_is_rhombohedral()
int ccp4uc_is_rhombohedral |
( |
const float |
cell[6], |
|
|
const float |
tolerance |
|
) |
| |
Check if cell parameters conform to a rhombohedral setting.
- Parameters
-
cell | Cell parameters. Angles are assumed to be in degrees. |
tolerance | A tolerance for agreement. |
- Returns
- 1 if cell parameters conform, 0 otherwise.
Check if cell parameters conform to a rhombohedral setting.
- Parameters
-
[in] | cell | Cell parameters. Angles are assumed to be in degrees. |
[in] | tolerance | A tolerance for agreement. |
- Returns
- 1 if cell parameters conform, 0 otherwise.
◆ ccp4uc_orth_to_frac()
void ccp4uc_orth_to_frac |
( |
const double |
rf[3][3], |
|
|
const double |
xo[3], |
|
|
double |
xf[3] |
|
) |
| |
Convert orthogonal to fractional coordinates. Translation only if deliberate origin shift - does this ever happen? Leave it to the application.
- Parameters
-
- Returns
- void
Convert orthogonal to fractional coordinates. Translation only if deliberate origin shift - does this ever happen? Leave it to the application.
- Parameters
-
[in] | rf | fractionalisation matrix |
[in] | xo | orthogonal coordinates |
[out] | xf | fractional coordinates |
- Returns
- void
◆ ccp4uc_orthu_to_fracu()
void ccp4uc_orthu_to_fracu |
( |
const double |
rf[3][3], |
|
|
const double |
uo[6], |
|
|
double |
uf[6] |
|
) |
| |
Convert orthogonal to fractional u matrix.
- Parameters
-
- Returns
- void
Convert orthogonal to fractional u matrix.
- Parameters
-
[in] | rf | fractionalisation matrix |
[in] | uo | orthogonal u matrix |
[out] | uf | fractional u matrix |
- Returns
- void
References ccp4_3matmul().