63 error_measurement_implementation,
64 delta_between_database_flushes,
66 data_delta_between_snapshots,
67 time_delta_between_snapshots,
68 clear_database_after_flush,
70 solver._constructor_implementation += (
72 delta_between_database_flushes=delta_between_database_flushes,
73 output_file_name=output_file_name,
74 data_delta_between_snapshots=data_delta_between_snapshots,
75 time_delta_between_snapshots=time_delta_between_snapshots,
76 clear_database_after_flush=clear_database_after_flush,
80 solver.add_user_solver_includes(
82#include "toolbox/blockstructured/GlobalDatabase.h"
86 solver._abstract_solver_user_declarations +=
"""
88 toolbox::blockstructured::GlobalDatabase _errorDatabase;
89 double _errors[3] = {0.0, 0.0, 0.0};
90 void setError(double* error);
93 solver._abstract_solver_user_definitions +=
"""
94void {{"{{FULL_QUALIFIED_NAMESPACE}}::{{CLASSNAME}}"}}::setError(double* error) {
95 tarch::multicore::Lock lock(_semaphore);
96 _errors[0] += error[0];
97 _errors[1] += error[1];
98 _errors[2] = std::max(_errors[2], error[2]);
102 if error_measurement_implementation == PDETerms.User_Defined_Implementation:
103 print(error_measurement_implementation)
104 print(PDETerms.User_Defined_Implementation)
107 solver._abstract_solver_user_declarations += (
111 solver._abstract_solver_user_definitions += (
113 error_measurement_implementation
116 solver._abstract_solver_user_declarations += (