tblite
Light-weight tight-binding framework
Toggle main menu visibility
Loading...
Searching...
No Matches
include
tblite
structure.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
31
32
#pragma once
33
34
#include "
tblite/macros.h
"
35
#include "
tblite/error.h
"
36
37
/*
38
* Molecular structure data class
39
**/
40
47
typedef
struct
_tblite_structure*
tblite_structure
;
48
60
TBLITE_API_ENTRY
tblite_structure
TBLITE_API_CALL
61
tblite_new_structure
(
tblite_error
error,
62
const
int
natoms,
63
const
int
* numbers,
64
const
double
* positions,
65
const
double
* charge,
66
const
int
* uhf,
67
const
double
* lattice,
68
const
bool
* periodic);
69
73
TBLITE_API_ENTRY
void
TBLITE_API_CALL
74
tblite_delete_structure
(
tblite_structure
* mol);
75
82
TBLITE_API_ENTRY
void
TBLITE_API_CALL
83
tblite_update_structure_geometry
(
tblite_error
error,
84
tblite_structure
mol,
85
const
double
* positions,
86
const
double
* lattice);
87
93
TBLITE_API_ENTRY
void
TBLITE_API_CALL
94
tblite_update_structure_charge
(
tblite_error
error,
95
tblite_structure
mol,
96
const
double
* charge);
97
103
TBLITE_API_ENTRY
void
TBLITE_API_CALL
104
tblite_update_structure_uhf
(
tblite_error
error,
105
tblite_structure
mol,
106
const
int
* uhf);
error.h
Provides a light-weight error handler for communicating with the library.
tblite_error
struct _tblite_error * tblite_error
Error instance.
Definition
error.h:35
macros.h
General macro definitions for the tblite C API bindings.
TBLITE_API_ENTRY
#define TBLITE_API_ENTRY
Definition
macros.h:49
TBLITE_API_CALL
#define TBLITE_API_CALL
Definition
macros.h:57
tblite_update_structure_geometry
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_update_structure_geometry(tblite_error error, tblite_structure mol, const double *positions, const double *lattice)
tblite_update_structure_charge
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_update_structure_charge(tblite_error error, tblite_structure mol, const double *charge)
tblite_new_structure
TBLITE_API_ENTRY tblite_structure TBLITE_API_CALL tblite_new_structure(tblite_error error, const int natoms, const int *numbers, const double *positions, const double *charge, const int *uhf, const double *lattice, const bool *periodic)
tblite_delete_structure
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_delete_structure(tblite_structure *mol)
tblite_structure
struct _tblite_structure * tblite_structure
Definition
structure.h:47
tblite_update_structure_uhf
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_update_structure_uhf(tblite_error error, tblite_structure mol, const int *uhf)
Generated by
1.17.0