tblite
Light-weight tight-binding framework
Loading...
Searching...
No Matches
result.h
Go to the documentation of this file.
1/* This file is part of tblite.
2 * SPDX-Identifier: LGPL-3.0-or-later
3 *
4 * tblite is free software: you can redistribute it and/or modify it under
5 * the terms of the GNU Lesser General Public License as published by
6 * the Free Software Foundation, either version 3 of the License, or
7 * (at your option) any later version.
8 *
9 * tblite is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public License
15 * along with tblite. If not, see <https://www.gnu.org/licenses/>.
16**/
17
30#pragma once
31
32#include "tblite/macros.h"
33#include "tblite/error.h"
35
37typedef struct _tblite_result* tblite_result;
38
44
51
57
65 tblite_result res,
66 int* nat);
67
75 tblite_result res,
76 int* nsh);
77
85 tblite_result res,
86 int* nao);
87
95 tblite_result res,
96 int* nspin);
97
105 tblite_result res,
106 double* energy);
107
115 tblite_result res,
116 double* energies);
117
125 tblite_result res,
126 double* gradient);
127
135 tblite_result res,
136 double* sigma);
137
145 tblite_result res,
146 double* charges);
147
155 tblite_result res,
156 double* mbo);
157
165 tblite_result res,
166 double dipole[3]);
167
175 tblite_result res,
176 double quadrupole[6]);
177
185 tblite_result res,
186 double* emo);
187
195 tblite_result res,
196 double* occ);
197
205 tblite_result res,
206 double* cmat);
207
215 tblite_result res,
216 double* pmat);
217
225 tblite_result res,
226 double* smat);
227
235 tblite_result res,
236 double* hmat);
237
243TBLITE_API_ENTRY tblite_double_dictionary TBLITE_API_CALL
245 tblite_result res);
Provides access to the double dictionary class in tblite, which gathers post processing values.
Provides a light-weight error handler for communicating with the library.
struct _tblite_error * tblite_error
Error instance.
Definition error.h:35
General macro definitions for the tblite C API bindings.
#define TBLITE_API_ENTRY
Definition macros.h:49
#define TBLITE_API_CALL
Definition macros.h:57
struct _tblite_result * tblite_result
Container to for storing and handling calculation results.
Definition result.h:37
TBLITE_API_ENTRY tblite_result TBLITE_API_CALL tblite_new_result(void)
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_get_result_dipole(tblite_error error, tblite_result res, double dipole[3])
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_get_result_number_of_spins(tblite_error error, tblite_result res, int *nspin)
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_get_result_density_matrix(tblite_error error, tblite_result res, double *pmat)
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_delete_result(tblite_result *res)
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_get_result_orbital_occupations(tblite_error error, tblite_result res, double *occ)
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_get_result_virial(tblite_error error, tblite_result res, double *sigma)
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_get_result_quadrupole(tblite_error error, tblite_result res, double quadrupole[6])
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_get_result_charges(tblite_error error, tblite_result res, double *charges)
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_get_result_number_of_shells(tblite_error error, tblite_result res, int *nsh)
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_get_result_number_of_orbitals(tblite_error error, tblite_result res, int *nao)
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_get_result_energy(tblite_error error, tblite_result res, double *energy)
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_get_result_gradient(tblite_error error, tblite_result res, double *gradient)
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_get_result_number_of_atoms(tblite_error error, tblite_result res, int *nat)
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_get_result_energies(tblite_error error, tblite_result res, double *energies)
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_get_result_hamiltonian_matrix(tblite_error error, tblite_result res, double *hmat)
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_get_result_orbital_coefficients(tblite_error error, tblite_result res, double *cmat)
TBLITE_API_ENTRY tblite_double_dictionary TBLITE_API_CALL tblite_get_post_processing_dict(tblite_error error, tblite_result res)
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_get_result_orbital_energies(tblite_error error, tblite_result res, double *emo)
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_get_result_bond_orders(tblite_error error, tblite_result res, double *mbo)
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_get_result_overlap_matrix(tblite_error error, tblite_result res, double *smat)
TBLITE_API_ENTRY tblite_result TBLITE_API_CALL tblite_copy_result(tblite_result res)