Skip to content

Commit 2319f34

Browse files
committed
Fix the badge for the Doxygen doc
1 parent 6f8e2d8 commit 2319f34

39 files changed

+453
-465
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ Tinker9: Next Generation of Tinker with GPU Support
22
===================================================
33
[//]: # (Badges)
44
[![Docs Status](https://readthedocs.org/projects/tinker9-manual/badge/?version=latest&style=flat)](https://tinker9-manual.readthedocs.io)
5-
[![Doxygen Page Status](https://github.com/tinkertools/tinker9/actions/workflows/doxygen_gh_pages.yaml/badge.svg?branch=master)](https://tinkertools.github.io/tinker9/)
5+
[![Doxygen Page Status](https://github.com/tinkertools/tinker9/actions/workflows/doxygen_gh_pages.yaml/badge.svg)](https://tinkertools.github.io/tinker9/)
66

77

88
<h2>Introduction</h2>

doc/Doxyfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ CREATE_SUBDIRS = NO
1313
CREATE_SUBDIRS_LEVEL = 8
1414
ALLOW_UNICODE_NAMES = NO
1515
OUTPUT_LANGUAGE = English
16-
BRIEF_MEMBER_DESC = YES
16+
BRIEF_MEMBER_DESC = NO
1717
REPEAT_BRIEF = YES
1818
ABBREVIATE_BRIEF = "The $name class" \
1919
"The $name widget" \
@@ -130,6 +130,7 @@ INPUT = ../README.md ../doc ../test \
130130
../include/math \
131131
../include/md \
132132
../include/seq \
133+
../include/syntax/acc \
133134
../include/syntax/cu \
134135
../include/tool
135136
INPUT_ENCODING = UTF-8
@@ -308,7 +309,6 @@ INCLUDE_FILE_PATTERNS =
308309
PREDEFINED = NDEBUG \
309310
TINKER_MIXED_PRECISION \
310311
TINKER_CUDART \
311-
TINKER_EXTERN_DEFINITION_FILE \
312312
__cplusplus \
313313
__CUDACC__
314314
EXPAND_AS_DEFINED = YES

doc/doc.h

Lines changed: 42 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,34 @@
11
#error This header file should never have been included.
22

3-
/// \defgroup general General Information
4-
5-
/// \defgroup platform Platforms and Syntaxes
6-
/// \defgroup cpp_syntax C++ Syntax
7-
/// \ingroup platform
8-
/// \defgroup cuda_syntax CUDA Specific Code
9-
/// \ingroup platform
10-
/// \defgroup acc_syntax OpenACC Specific Code
11-
/// \ingroup platform
12-
/// \defgroup nvidia NVIDIA GPU
13-
/// \ingroup platform
3+
/**
4+
* \defgroup general General
5+
* \brief Version numbers, program entries, data construction and destruction
6+
*
7+
* \defgroup platform Platforms
8+
* \brief Platforms and platform-specific syntaxes
9+
* \defgroup cpp_syntax C++ Syntax
10+
* \ingroup platform
11+
* \defgroup cuda_syntax CUDA Syntax
12+
* \ingroup platform
13+
* \defgroup acc_syntax OpenACC Syntax
14+
* \ingroup platform
15+
* \defgroup nvidia NVIDIA GPU
16+
* \ingroup platform
17+
*
18+
* \defgroup prec Precision
19+
* \brief Definitions of data types used in the MD simulations
20+
*
21+
* \defgroup box Box
22+
* \brief Periodic boundary conditions and image distance
23+
*
24+
* \defgroup nblist Neighbor List
25+
* \brief Neighbor lists and spatial decomposition
26+
*
27+
* \defgroup egv Energy
28+
* \brief Energy, gradient, virial tensor, and number of interactions
29+
*/
1430

1531
/// \defgroup ff Force Fields
16-
/// \defgroup prec Precisions
17-
/// \ingroup ff
18-
/// \defgroup box Periodic Boundary Box
19-
/// \ingroup ff
20-
/// \defgroup nblist Neighbor List and Spatial Decomposition
21-
/// \ingroup ff
22-
/// \defgroup egv Energy, Gradient, and Virial Tensor
23-
/// \ingroup ff
2432
/// \defgroup bonded Valence Terms
2533
/// \ingroup ff
2634
/// \defgroup vdw Van der Waals (VDW)
@@ -83,26 +91,27 @@
8391

8492
//====================================================================//
8593

86-
/// \ingroup cpp_syntax
87-
/// \brief Macro for the Intel C++ compiler.
94+
#define TINKER_EXTERN_DEFINITION_FILE
95+
#define TINKER9_DIR
96+
97+
/// \addtogroup cpp_syntax
98+
/// \{
99+
100+
/// Macro for the Intel C++ compiler.
88101
#define TINKER_ICPC
89-
/// \ingroup cpp_syntax
90-
/// \brief Macro for the GNU C++ compiler.
102+
/// Macro for the GNU C++ compiler.
91103
#define TINKER_GCC
92-
/// \ingroup cpp_syntax
93-
/// \brief Macro for the Clang C++ (either Apple or LLVM) compiler.
104+
/// Macro for the Clang C++ (either Apple or LLVM) compiler.
94105
#define TINKER_CLANG
95-
/// \ingroup cpp_syntax
96-
/// \brief Macro for the Clang C++ (Apple) compiler.
106+
/// Macro for the Clang C++ (Apple) compiler.
97107
#define TINKER_APPLE_CLANG
98-
/// \ingroup cpp_syntax
99-
/// \brief Macro for the Clang C++ (LLVM) compiler.
108+
/// Macro for the Clang C++ (LLVM) compiler.
100109
#define TINKER_LLVM_CLANG
101-
/// \ingroup cpp_syntax
102-
/// \brief Macro for the PGI or NVHPC C++ compiler.
110+
/// Macro for the PGI or NVHPC C++ compiler.
103111
#define TINKER_PGI
104-
#define TINKER_EXTERN_DEFINITION_FILE
105-
#define TINKER9_DIR
112+
113+
/// \}
114+
106115
/*
107116
*
108117
* Data structures and procedures to construct the spatial decomposition

include/ff/box.h

Lines changed: 34 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,20 @@
33
#include "tool/rcman.h"
44

55
namespace tinker {
6-
/// \ingroup box
6+
/// \addtogroup box
7+
/// \{
8+
9+
/// Shapes of the periodic box.
710
enum class BoxShape
811
{
9-
UNBOUND,
10-
ORTHO,
11-
MONO,
12-
TRI,
13-
OCT
12+
UNBOUND, ///< unbound
13+
ORTHO, ///< orthorgonal
14+
MONO, ///< monoclinic
15+
TRI, ///< triclinic
16+
OCT ///< truncated octahedron
1417
};
1518

16-
/// \ingroup box
17-
/// \brief Periodic boundary conditions (PBC).
19+
/// Internal data for the periodic boundary condition (PBC).
1820
///
1921
/// PBC in Tinker is defined by lengths of three axes and three angles:
2022
/// `a-axis`, `b-axis`, `c-axis`, `alpha`, `beta`, and `gamma`.
@@ -51,90 +53,64 @@ enum class BoxShape
5153
/// Reciprocal lattice (`recip`), is the inverse of `lvec`:
5254
/// - Fortran: `recip(:,1)`, `recip(:,2)`, `recip(:,3)`;
5355
/// - C++: `recip[0][]`, `recip[1][]`, `recip[2][]`;
54-
/// - Fractional coordinates `fi (i=1,2,3) = recip(:,i) (xr,yr,zr)`;
55-
/// - Cartesian coordinates `wr (w=1,2,3 or x,y,z) = inv_recip(:,w) (f1,f2,f3)
56-
/// = lvec(:,w) (f1,f2,f3)`.
56+
/// - Fractional coordinates `fi = recip(:,i) (xr,yr,zr), (i=1,2,3)`;
57+
/// - Cartesian coordinates `wr = inv_recip(:,w) (f1,f2,f3)
58+
/// = lvec(:,w) (f1,f2,f3), (w=1,2,3 or x,y,z)`.
5759
struct Box
5860
{
5961
BoxShape box_shape;
6062
real3 lvec1, lvec2, lvec3;
6163
real3 recipa, recipb, recipc;
6264
};
63-
}
6465

65-
namespace tinker {
66-
/// \ingroup box
67-
void boxData(RcOp);
68-
void boxDataP1(RcOp);
69-
/// \ingroup box
70-
void boxExtent(double newExtent);
71-
/// \ingroup box
72-
void boxSetCurrent(const Box& p);
73-
/// \ingroup box
74-
void boxGetCurrent(Box& p);
75-
/// \ingroup box
76-
void boxSetCurrentRecip();
77-
/// \ingroup box
78-
void boxSetTinkerModule(const Box& p);
79-
80-
/// \ingroup box
81-
/// \brief Similar to Tinker `lattice` subroutine.
82-
void boxLattice(Box& p, BoxShape sh, double a, double b, double c, //
83-
double alphaDeg, double betaDeg, double gammaDeg);
66+
void boxData(RcOp); ///< Sets up box data on device.
67+
void boxDataP1(RcOp); ///< Internal function used in the setup.
68+
void boxExtent(double newExtent); ///< Sets up a hypothetical orthogonal box for the unbound box
69+
///< whose a-axis equals the new extent.
70+
void boxSetCurrent(const Box& p); ///< Sets the box by the input and updates the box on device.
71+
void boxGetCurrent(Box& p); ///< Copies the current PBC box to the output variable.
72+
void boxSetCurrentRecip(); ///< Calculates the \c recip arrays by new \c lvec arrays and
73+
///< updates the box on device
74+
void boxSetTinker(const Box& p); ///< Updates the related PBC modules of Tinker by \c p.
8475

85-
/// \ingroup box
76+
/// OpenACC only: Copies the current box data to device asynchronously.
77+
/// The implementations are empty for CPU and CUDA code because it is only in
78+
/// the OpenACC code that a copy of the PBC box is created on device.
8679
void boxCopyin();
8780

88-
/// \ingroup box
89-
/// \brief Get the volume of the PBC box.
81+
/// Sets up the internal PBC data. Similar to Tinker \c lattice subroutine.
82+
void boxLattice(Box& p, BoxShape sh, //
83+
double a, double b, double c, //
84+
double alphaDeg, double betaDeg, double gammaDeg);
85+
86+
/// Gets the volume of the PBC box.
9087
/// \note This function may calculate the volume on-the-fly instead of using
9188
/// an internal variable to save the volume.
9289
/// \note The volume is undefined for the unbound box.
9390
real boxVolume();
94-
}
9591

9692
//====================================================================//
9793
// //
9894
// Global Variables //
9995
// //
10096
//====================================================================//
10197

102-
namespace tinker {
103-
/// \ingroup box
10498
TINKER_EXTERN BoxShape box_shape;
105-
/// \ingroup box
10699
TINKER_EXTERN real3 lvec1;
107-
/// \ingroup box
108100
TINKER_EXTERN real3 lvec2;
109-
/// \ingroup box
110101
TINKER_EXTERN real3 lvec3;
111-
/// \ingroup box
112102
TINKER_EXTERN real3 recipa;
113-
/// \ingroup box
114103
TINKER_EXTERN real3 recipb;
115-
/// \ingroup box
116104
TINKER_EXTERN real3 recipc;
117105

118-
/// \def TINKER_IMAGE_LVEC_PARAMS
119-
/// \ingroup box
120-
/// \def TINKER_IMAGE_LVEC_ARGS
121-
/// \ingroup box
122-
/// \def TINKER_IMAGE_RECIP_PARAMS
123-
/// \ingroup box
124-
/// \def TINKER_IMAGE_RECIP_ARGS
125-
/// \ingroup box
126-
/// \def TINKER_IMAGE_PARAMS
127-
/// \ingroup box
128-
/// \def TINKER_IMAGE_ARGS
129-
/// \ingroup box
130106
#define TINKER_IMAGE_LVEC_PARAMS real3 lvec1, real3 lvec2, real3 lvec3
131107
#define TINKER_IMAGE_LVEC_ARGS lvec1, lvec2, lvec3
132108
#define TINKER_IMAGE_RECIP_PARAMS real3 recipa, real3 recipb, real3 recipc
133109
#define TINKER_IMAGE_RECIP_ARGS recipa, recipb, recipc
134110
#define TINKER_IMAGE_PARAMS BoxShape box_shape, TINKER_IMAGE_LVEC_PARAMS, TINKER_IMAGE_RECIP_PARAMS
135111
#define TINKER_IMAGE_ARGS box_shape, TINKER_IMAGE_LVEC_ARGS, TINKER_IMAGE_RECIP_ARGS
136112

137-
/// \ingroup box
138-
/// \brief Host pointer to the PBC boxes of a trajectory.
139-
TINKER_EXTERN Box* trajbox;
113+
TINKER_EXTERN Box* trajbox; ///< Host pointer to the PBC boxes of a trajectory.
114+
115+
/// \}
140116
}

include/ff/elec.h

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4,57 +4,57 @@
44

55
extern "C"
66
{
7-
struct PCHG
7+
class PCHG
88
{
99
int foo;
1010
};
1111

12-
struct MPOLE
12+
class MPOLE
1313
{
1414
int foo;
1515
};
1616

17-
struct UIND
17+
class UIND
1818
{
1919
int foo;
2020
};
2121

22-
struct UIND2
22+
class UIND2
2323
{
2424
int foo;
2525
};
2626

27-
struct DISP
27+
class DISP
2828
{
2929
int foo;
3030
};
3131

32-
struct EWALD
32+
class EWALD
3333
{
3434
int foo;
3535
};
3636

37-
struct DEWALD
37+
class DEWALD
3838
{
3939
int foo;
4040
};
4141

42-
struct NON_EWALD
42+
class NON_EWALD
4343
{
4444
int foo;
4545
};
4646

47-
struct NON_EWALD_TAPER
47+
class NON_EWALD_TAPER
4848
{
4949
int foo;
5050
};
5151

52-
struct GORDON1
52+
class GORDON1
5353
{
5454
int foo;
5555
};
5656

57-
struct GORDON2
57+
class GORDON2
5858
{
5959
int foo;
6060
};

include/ff/energybuffer.h

Lines changed: 20 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,24 +4,34 @@
44
#include <type_traits>
55

66
namespace tinker {
7-
/// \ingroup prec
8-
/// \brief Converts a fixed-point value to floating-point value on host.
7+
/// \addtogroup cpp_syntax
8+
/// \{
9+
10+
/// Converts a fixed-point value \c g to floating-point value on host.
11+
template <class F>
12+
inline F toFloatingPoint(fixed g)
13+
{
14+
static_assert(std::is_same<F, float>::value or std::is_same<F, double>::value, "");
15+
return static_cast<F>(static_cast<long long>(g)) / 0x100000000ull;
16+
}
17+
18+
/// Converts a double-precision \c g to floating-point value on host.
919
template <class F>
10-
inline F toFloat(fixed val)
20+
inline F toFloatingPoint(double g)
1121
{
1222
static_assert(std::is_same<F, float>::value or std::is_same<F, double>::value, "");
13-
return static_cast<F>(static_cast<long long>(val)) / 0x100000000ull;
23+
return g;
1424
}
1525

16-
/// \ingroup prec
17-
/// \brief Converts to floating-point value on host.
18-
template <class F, class T>
19-
inline F toFloat(T val)
26+
/// Converts a single-precision \c g to floating-point value on host.
27+
template <class F>
28+
inline F toFloatingPoint(float g)
2029
{
2130
static_assert(std::is_same<F, float>::value or std::is_same<F, double>::value, "");
22-
static_assert(std::is_same<T, float>::value or std::is_same<T, double>::value, "");
23-
return val;
31+
return g;
2432
}
33+
34+
/// \}
2535
}
2636

2737
namespace tinker {

0 commit comments

Comments
 (0)