9 string parameters_path);
11 string parameters_path,
12 bool friction_parallelized);
15 void setupModelVectorsMatrices();
16 void setupBlockMatrix();
17 void setupBlockMatrixDerivative();
18 void setupPadVector();
19 void setupPadVectorDerivative();
20 void setupSaveVectorsMatrices();
22 void setupSliderSpeedMode();
24 void setupConstants();
28 void setSpeedAfterThreshold();
29 void updateSliderSpeed(
34 const arma::mat& current_block_matrix,
35 const arma::rowvec& current_pad_vector,
36 arma::mat& current_block_matrix_derivative
40 const arma::mat& current_block_matrix,
41 const arma::rowvec& current_pad_vector,
42 arma::rowvec& current_pad_vector_derivative
45 const arma::rowvec& current_pad_vector,
46 arma::rowvec& current_pad_vector_derivative
48 double calculatePadSupportDamper(
49 arma::rowvec current_pad_vector
51 double calculatePadFriction(
52 arma::mat current_block_matrix,
53 arma::rowvec current_pad_vector
60 void oneDegreeOfFreedomMidpointMethod(
64 void writeValuesToLoggers(
68 void printMidPointMethod(
69 arma::mat block_matrix,
70 arma::rowvec pad_vector,
71 string explanation_text =
"");
72 void runMidpointMethod();
78 void midpointMethodParallel(
80 arma::mat& block_matrix_parallel,
81 arma::rowvec& pad_vector_parallel,
82 arma::mat block_matrix_derivative_parallel,
83 arma::rowvec pad_vector_derivative_parallel);
84 void setupAndRunFrictionInParallel(
87 void calculateFrictionInParallel();
88 void saveToCsvParallel(
89 const arma::colvec& armadillo_vector,
90 const string& result_path,
91 const double& slider_speed
116 bool loggingSpecificBlocks =
false;
117 arma::uvec block_position_column_index = {0};
118 arma::uvec block_velocity_column_index = {1};
126 int index_pad_friction_to_file = 0;
127 int index_to_file = 0;
129 int friction_zero_counter = 0;
138 void printMatrix(arma::mat matrix,
bool arra_format);
139 void printRowVector(arma::rowvec vector);
arma::mat block_matrix_derivative
DebugSimulation(string debug_parameters_path)
arma::colvec pad_friction_to_file
arma::mat block_velocity_to_file
arma::mat block_position_to_file
arma::rowvec pad_vector_derivative
string input_parameters_path
int main(int argc, char *agrv[])
Parameters input_parameters
arma::colvec pad_position_to_file
int updateSliderSpeedDtInterval
arma::colvec pad_velocity_to_file
int number_of_interval_save_step