@@ -93,7 +93,9 @@ size_t pcmsolver_get_irreducible_cavity_size(pcmsolver_context_t * context)
93
93
94
94
void pcmsolver_get_centers (pcmsolver_context_t * context, double centers[])
95
95
{
96
+ TIMER_ON (" pcmsolver_get_centers" );
96
97
AS_TYPE (pcm::Meddle, context)->getCenters (centers);
98
+ TIMER_OFF (" pcmsolver_get_centers" );
97
99
}
98
100
99
101
void pcmsolver_get_center (pcmsolver_context_t * context, int its, double center[])
@@ -111,15 +113,19 @@ void pcmsolver_compute_asc(pcmsolver_context_t * context,
111
113
const char * asc_name,
112
114
int irrep)
113
115
{
116
+ TIMER_ON (" pcmsolver_compute_asc" );
114
117
AS_TYPE (pcm::Meddle, context)->computeASC (mep_name, asc_name, irrep);
118
+ TIMER_OFF (" pcmsolver_compute_asc" );
115
119
}
116
120
117
121
void pcmsolver_compute_response_asc (pcmsolver_context_t * context,
118
122
const char * mep_name,
119
123
const char * asc_name,
120
124
int irrep)
121
125
{
126
+ TIMER_ON (" pcmsolver_compute_response_asc" );
122
127
AS_TYPE (pcm::Meddle, context)->computeResponseASC (mep_name, asc_name, irrep);
128
+ TIMER_OFF (" pcmsolver_compute_response_asc" );
123
129
}
124
130
125
131
double pcmsolver_compute_polarization_energy (pcmsolver_context_t * context,
@@ -132,13 +138,17 @@ double pcmsolver_compute_polarization_energy(pcmsolver_context_t * context,
132
138
void pcmsolver_get_surface_function (pcmsolver_context_t * context,
133
139
size_t size, double values[], const char * name)
134
140
{
141
+ TIMER_ON (" pcmsolver_get_surface_function" );
135
142
AS_TYPE (pcm::Meddle, context)->getSurfaceFunction (size, values, name);
143
+ TIMER_OFF (" pcmsolver_get_surface_function" );
136
144
}
137
145
138
146
void pcmsolver_set_surface_function (pcmsolver_context_t * context,
139
147
size_t size, double values[], const char * name)
140
148
{
149
+ TIMER_ON (" pcmsolver_set_surface_function" );
141
150
AS_TYPE (pcm::Meddle, context)->setSurfaceFunction (size, values, name);
151
+ TIMER_OFF (" pcmsolver_set_surface_function" );
142
152
}
143
153
144
154
void pcmsolver_save_surface_functions (pcmsolver_context_t * context)
@@ -166,10 +176,23 @@ namespace pcm {
166
176
charges[], double coordinates[], int symmetry_info[], const PCMInput & host_input)
167
177
: hasDynamic_(false )
168
178
{
179
+ TIMER_ON (" Meddle::initInput" );
169
180
initInput (input_reading, nr_nuclei, charges, coordinates, symmetry_info, host_input);
181
+ TIMER_OFF (" Meddle::initInput" );
182
+
183
+ TIMER_ON (" Meddle::initCavity" );
170
184
initCavity ();
185
+ TIMER_OFF (" Meddle::initCavity" );
186
+
187
+ TIMER_ON (" Meddle::initStaticSolver" );
171
188
initStaticSolver ();
172
- if (input_.isDynamic ()) initDynamicSolver ();
189
+ TIMER_OFF (" Meddle::initStaticSolver" );
190
+
191
+ if (input_.isDynamic ()) {
192
+ TIMER_ON (" Meddle::initDynamicSolver" );
193
+ initDynamicSolver ();
194
+ TIMER_OFF (" Meddle::initDynamicSolver" );
195
+ }
173
196
// Reserve space for Tot-MEP/ASC, Nuc-MEP/ASC and Ele-MEP/ASC
174
197
functions_.reserve (12 );
175
198
}
@@ -193,7 +216,9 @@ namespace pcm {
193
216
194
217
void Meddle::getCenters (double centers[]) const
195
218
{
219
+ TIMER_ON (" Meddle::getCenters" );
196
220
Eigen::Map<Eigen::Matrix3Xd>(centers, 3 , cavity_->size ()) = cavity_->elementCenter ();
221
+ TIMER_OFF (" Meddle::getCenters" );
197
222
}
198
223
199
224
void Meddle::getCenter (int its, double center[]) const
0 commit comments