c_part #1

Merged
ParkSuMin merged 4 commits from c_part into main 2025-10-06 21:25:27 +02:00
Showing only changes of commit 1fc2925f8f - Show all commits

View File

@@ -91,25 +91,25 @@ void Solver::Execute_Cubic(double val1, double val2) {
VectorXd local_load(4);
// Формирование локальной матрицы жёсткости
local(0, 0) = -A * 37.0 / 10.0 / L + B * (-1.0) / 2.0;
local(0, 1) = -A * (-189.0) / 40.0 / L + B * 57.0 / 80.0;
local(0, 2) = -A * 27.0 / 20.0 / L + B * (-3.0) / 10.0;
local(0, 3) = -A * (-13.0) / 40.0 / L + B * 7.0 / 80.0;
local(0, 0) = -A * 37.0 / 10.0 / L + B * (-1.0) / 2.0 + C * 8. * L / 105.;
local(0, 1) = -A * (-189.0) / 40.0 / L + B * 57.0 / 80.0 + C * 33. * L / 560.;
local(0, 2) = -A * 27.0 / 20.0 / L + B * (-3.0) / 10.0 - C * 3. * L / 140.;
local(0, 3) = -A * (-13.0) / 40.0 / L + B * 7.0 / 80.0 + C * 19. * L / 1680.;
local(1, 0) = -A * (-189.0) / 40.0 / L + B * (-57.0) / 80.0;
local(1, 1) = -A * 54.0 / 5.0 / L;
local(1, 2) = -A * (-297.0) / 40.0 / L + B * 81.0 / 80.0;
local(1, 3) = -A * 27.0 / 20.0 / L + B * (-3.0) / 10.0;
local(1, 0) = -A * (-189.0) / 40.0 / L + B * (-57.0) / 80.0 + C * 33. * L / 560.;
local(1, 1) = -A * 54.0 / 5.0 / L + C * 27. * L / 70.;
local(1, 2) = -A * (-297.0) / 40.0 / L + B * 81.0 / 80.0 - C * 27. * L / 560.;
local(1, 3) = -A * 27.0 / 20.0 / L + B * (-3.0) / 10.0 - C * 3. * L / 140.;
local(2, 0) = -A * 27.0 / 20.0 / L + B * 3.0 / 10.0;
local(2, 1) = -A * (-297.0) / 40.0 / L + B * (-81.0) / 80.0;
local(2, 2) = -A * 54.0 / 5.0 / L;
local(2, 3) = -A * (-189.0) / 40.0 / L + B * 57.0 / 80.0;
local(2, 0) = -A * 27.0 / 20.0 / L + B * 3.0 / 10.0 - C * 3. * L / 140.;
local(2, 1) = -A * (-297.0) / 40.0 / L + B * (-81.0) / 80.0 - C * 27. * L / 560.;
local(2, 2) = -A * 54.0 / 5.0 / L + C * 27. * L / 70.;
local(2, 3) = -A * (-189.0) / 40.0 / L + B * 57.0 / 80.0 + C * 33. * L / 560.;
local(3, 0) = -A * (-13.0) / 40.0 / L + B * (-7.0) / 80.0;
local(3, 1) = -A * 27.0 / 20.0 / L + B * 3.0 / 10.0;
local(3, 2) = -A * (-189.0) / 40.0 / L + B * (-57.0) / 80.0;
local(3, 3) = -A * 37.0 / 10.0 / L + B * 1.0 / 2.0;
local(3, 0) = -A * (-13.0) / 40.0 / L + B * (-7.0) / 80.0 + C * 19. * L / 1680.;
local(3, 1) = -A * 27.0 / 20.0 / L + B * 3.0 / 10.0 - C * 3. * L / 140.;
local(3, 2) = -A * (-189.0) / 40.0 / L + B * (-57.0) / 80.0 + C * 33. * L / 560.;
local(3, 3) = -A * 37.0 / 10.0 / L + B * 1.0 / 2.0 + C * 8. * L / 105.;
// Формирование локального вектора нагрузки
local_load(0) = -D * L / 8.0;