Traditional I/O

Handling traditional way of data input and output used by QHA and thermo.f code

cij.io.traditional.read_elast_data(fname)

Read static elastic coefficients from data file.

Parameters

fname (str) – the name or path of the input file.

Return type

ElastData

cij.io.traditional.read_energy(fname)

Read \(E\), \(V\), \(\omega\) etc., from QHA data file

Parameters

fname (str) – The path of the input file

Return type

QHAInputData

Traditional QHA input: qha_input

class cij.io.traditional.qha_input.QHAInputData(nv, nq, np, nm, na, weights, volumes)

Bases: NamedTuple

na: int

Alias for field number 4

nm: int

Alias for field number 3

np: int

Alias for field number 2

nq: int

Alias for field number 1

nv: int

Alias for field number 0

volumes: List[VolumeData]

Alias for field number 6

weights: List[Tuple[Tuple[float, float, float], float]]

Alias for field number 5

class cij.io.traditional.qha_input.QPointData(coord, modes)

Bases: NamedTuple

coord: Tuple[float, float, float]

Alias for field number 0

modes: List[float]

Alias for field number 1

class cij.io.traditional.qha_input.QPointWeight(coord, weight)

Bases: NamedTuple

coord: Tuple[float, float, float]

Alias for field number 0

weight: float

Alias for field number 1

class cij.io.traditional.qha_input.VolumeData(pressure, volume, energy, q_points)

Bases: NamedTuple

energy: float

Alias for field number 2

pressure: float

Alias for field number 0

q_points: List[QPointData]

Alias for field number 3

volume: float

Alias for field number 1

cij.io.traditional.qha_input.read_energy(fname)

Read \(E\), \(V\), \(\omega\) etc., from QHA data file

Parameters

fname (str) – The path of the input file

Return type

QHAInputData

cij.io.traditional.qha_input.write_energy(fname, input_data, comment='QHA Input data')

Write QHA input data to file

Parameters
  • fname (str) –

  • input_data (QHAInputData) –

  • comment (str) – The comment line

Traditional QHA tabular output: qha_output

These methods are imported and is therfore identical to what is provided in the QHA distribution.

cij.io.traditional.qha_output.save_x_pt(df, t, desired_pressures_gpa, t_sample, outfile_name)
cij.io.traditional.qha_output.save_x_tp(df, t, desired_pressures_gpa, p_sample_gpa, outfile_name)
cij.io.traditional.qha_output.save_x_tv(x, t, volume_grid, t_sample, outfile_name)
cij.io.traditional.qha_output.save_x_vt(x, t, volume_grid, t_sample, outfile_name)

Traditional elast tabular output: elast_dat

class cij.io.traditional.elast_dat.ElastData(vref, nv, cellmass, volumes, lattice_parmeters)

Bases: NamedTuple

cellmass: float

Alias for field number 2

lattice_parmeters: List[Tuple[float, float, float]]

Alias for field number 4

nv: int

Alias for field number 1

volumes: List[ElastVolumeData]

Alias for field number 3

vref: float

Alias for field number 0

class cij.io.traditional.elast_dat.ElastVolumeData(volume, static_elastic_modulus)

Bases: NamedTuple

static_elastic_modulus: OrderedDict

Alias for field number 1

volume: float

Alias for field number 0

cij.io.traditional.elast_dat.apply_symetry_on_elast_data(input, symmetry)
Return type

None

cij.io.traditional.elast_dat.read_elast_data(fname)

Read static elastic coefficients from data file.

Parameters

fname (str) – the name or path of the input file.

Return type

ElastData