第1章 问题导入

1.1 问题描述

  图示结构,a=2ma=2m,梁ABAB和梁CDCD的抗弯刚度均为E1I1=24×106Nm2E_1I_1=24\times 10^6N\cdot m^2。两梁用长l=5ml=5m、抗拉刚度E2A2=6×107NE_2A_2=6\times 10^7N的钢杆连接。若F=50kNF=50kN,试求梁ABABBB点挠度。

1.2 问题假设

  因为杆BEBE只受轴力,假设杆BEBE在结构中始终保持竖直。

  杆ABAB和杆CDCD上的各点只存在竖直方向的位移,不存在水平方向的位移。

  本文中使用的MATLAB版本是R2024b。

第2章 常规解析法求解问题

  在本章,我们将采用常规解析法求解问题,为以后MATLAB仿真法提供相互对照。

  设杆BEBE的轴力为ff。由题易得,杆BEBE轴向拉伸。先分别求出杆ABABBB点挠度和杆CDCDEE点挠度,进而可以得到杆BEBE的长度,再与由杆BEBE的轴向拉伸公式解出的杆BEBE的长度相对照,可解出ff

2.1 杆AB的分析及B点挠度

  杆ABAB的受力图如下。

  杆ABAB的剪力图与弯矩图如下。

  有

FsAB(x)=f(2.1)F_{sAB}(x)=f\tag{2.1}

MAB(x)=fx+fa(2.2)M_{AB}(x)=-fx+fa\tag{2.2}

  由d2ω(x)dx2=1EIM(x)\frac{d^2\omega(x)}{dx^2}=-\frac{1}{EI}M(x)

d2ωAB(x)dx2=1E1I1(fx+fa)(2.3)\frac{d^2\omega_{AB}(x)}{dx^2}=-\frac{1}{E_1I_1}(-fx+fa)\tag{2.3}

  两边同时积分,得

θAB(x)=dωAB(x)dx=1E1I1(12fx2+fax)(2.4)\theta_{AB}(x)=\frac{d\omega_{AB}(x)}{dx}=-\frac{1}{E_1I_1}\left(-\frac{1}{2}fx^2+fax\right)\tag{2.4}

ωAB(x)=1E1I1(16fx3+12fax2)(2.5)\omega_{AB}(x)=-\frac{1}{E_1I_1}\left(-\frac{1}{6}fx^3+\frac{1}{2}fax^2\right)\tag{2.5}

  BB点的挠度,将x=ax=a代入(2.5)(2.5)式,得

ωB=ωAB(a)=fa33E1I1(2.6)\omega_{B}=\omega_{AB}(a)=-\frac{fa^3}{3E_1I_1}\tag{2.6}

2.2 杆CD的分析及D、E点挠度

  杆CDCD的受力图如下。

  杆CDCD的剪力图与弯矩图如下。

  有

FsCD(x)={Ff,0xaF,a<x2a(2.7)\begin{aligned} F_{sCD}(x)= \begin{cases} F-f,\quad &0\leq x\leq a\\ F,\quad &a<x\leq 2a \end{cases} \end{aligned} \tag{2.7}

MCD(x)={(Ff)x+(2Ff)a,0xaFx+2Fa,a<x2a(2.8)\begin{aligned} M_{CD}(x)= \begin{cases} -(F-f)x+(2F-f)a,\quad &0\leq x\leq a\\ -Fx+2Fa,\quad &a<x\leq 2a \end{cases} \end{aligned} \tag{2.8}

  0xa\pmb{0\leq x\leq a}时,

FsCD(x)=Ff(2.9)F_{sCD}(x)=F-f\tag{2.9}

MCD(x)=(Ff)x+(2Ff)a(2.10)M_{CD}(x)=-(F-f)x+(2F-f)a\tag{2.10}

  由d2ω(x)dx2=1EIM(x)\frac{d^2\omega(x)}{dx^2}=-\frac{1}{EI}M(x)

d2ωCD(x)dx2=1E1I1[(Ff)x+(2Ff)a](2.11)\frac{d^2\omega_{CD}(x)}{dx^2}=-\frac{1}{E_1I_1}[-(F-f)x+(2F-f)a]\tag{2.11}

  两边同时积分,得

θCD(x)=dωCD(x)dx=1E1I1[12(Ff)x2+(2Ff)ax](2.12)\theta_{CD}(x)=\frac{d\omega_{CD}(x)}{dx}=-\frac{1}{E_1I_1}\left[-\frac{1}{2}(F-f)x^2+(2F-f)ax\right]\tag{2.12}

ωCD(x)=1E1I1[16(Ff)x3+12(2Ff)ax2](2.13)\omega_{CD}(x)=-\frac{1}{E_1I_1}\left[-\frac{1}{6}(F-f)x^3+\frac{1}{2}(2F-f)ax^2\right]\tag{2.13}

  EE点的转角和挠度,将x=ax=a代入(2.12)(2.12)式和(2.13)(2.13)式,得

θE=θCD(a)=1E1I1(32F12f)a2(2.14)\theta_{E}=\theta_{CD}(a)=-\frac{1}{E_1I_1}\left(\frac{3}{2}F-\frac{1}{2}f\right)a^2\tag{2.14}

ωE=ωCD(a)=1E1I1(56F13f)a3(2.15)\omega_{E}=\omega_{CD}(a)=-\frac{1}{E_1I_1}\left(\frac{5}{6}F-\frac{1}{3}f\right)a^3\tag{2.15}

  a<x2a\pmb{a<x\leq 2a}时,

FsCD(x)=F(2.16)F_{sCD}(x)=F\tag{2.16}

MCD(x)=Fx+2Fa(2.17)M_{CD}(x)=-Fx+2Fa\tag{2.17}

  由d2ω(x)dx2=1EIM(x)\frac{d^2\omega(x)}{dx^2}=-\frac{1}{EI}M(x)

d2ωCD(x)dx2=1E1I1(Fx+2Fa)(2.18)\frac{d^2\omega_{CD}(x)}{dx^2}=-\frac{1}{E_1I_1}(-Fx+2Fa)\tag{2.18}

  两边同时积分,得

θCD(x)=dωCD(x)dx=1E1I1[12Fx2+2Fax12fa2](2.19)\theta_{CD}(x)=\frac{d\omega_{CD}(x)}{dx}=-\frac{1}{E_1I_1}\left[-\frac{1}{2}Fx^2+2Fax-\frac{1}{2}fa^2\right]\tag{2.19}

ωCD(x)=1E1I1[16Fx3+Fax212fa2x+16fa3](2.20)\omega_{CD}(x)=-\frac{1}{E_1I_1}\left[-\frac{1}{6}Fx^3+Fax^2-\frac{1}{2}fa^2x+\frac{1}{6}fa^3\right]\tag{2.20}

2.3 杆BE的分析

  杆BEBE的轴力为ff,由Δl=FNlEA\Delta l=\frac{F_Nl}{EA}

ΔlBE=flE2A2(2.21)\Delta l_{BE}=\frac{fl}{E_2A_2}\tag{2.21}

  另外,

ΔlBE=ωBωE=fa33E1I1+1E1I1(56F13f)a3=1E1I1(56F23f)a3(2.22)\begin{aligned} \Delta l_{BE}=&\omega_{B}-\omega_{E}=-\frac{fa^3}{3E_1I_1}+\frac{1}{E_1I_1}\left(\frac{5}{6}F-\frac{1}{3}f\right)a^3\\ =&\frac{1}{E_1I_1}\left(\frac{5}{6}F-\frac{2}{3}f\right)a^3 \end{aligned} \tag{2.22}

  联立(2.21)(2.21)式和(2.22)(2.22)式,得

f=5E2A2Fa36E1I1l+4E2A2a3(2.23)f=\frac{5E_2A_2Fa^3}{6E_1I_1l+4E_2A_2a^3}\tag{2.23}

2.4 B点的挠度

  将(2.23)(2.23)式代入(2.6)(2.6)式,得

ωB=5E2A2Fa63E1I1(6E1I1l+4E2A2a3)=11980.005051(2.24)\omega_{B}=-\frac{5E_2A_2Fa^6}{3E_1I_1(6E_1I_1l+4E_2A_2a^3)}=-\frac{1}{198}\approx-0.005051\tag{2.24}

第3章 MATLAB仿真法求解问题

3.1 自由端受集中载荷的悬臂梁仿真思路

  如图,有一悬臂梁,其自由端受一集中载荷FF

  剪力图与弯矩图如下。

  将梁划分为若干长度为dxdx的微元。

  分析从右往左数第一个(最右端)微元的受力状态。

  其中,Fs1F_{s1}M1M_1是从右往左数第二个微元作用在它上的,为维持平衡,Fs1F_{s1}和M_1$需满足

{Fs1=FM1=Fdx(3.1)\begin{aligned} \begin{cases} F_{s1}=F\\ M_1=Fdx \end{cases} \end{aligned} \tag{3.1}

  由剪力图与弯矩图可知,这一点所受到的剪力和弯矩为

{Fs1=FM1=0(3.2)\begin{aligned} \begin{cases} F_{s1}'=F\\ M_1'=0 \end{cases} \end{aligned} \tag{3.2}

  分析从右往左数第二个微元的受力状态。

  其中,Fs2F_{s2}M2M_2是从右往左数第三个微元作用在它上的,为维持平衡,Fs2F_{s2}M2M_2需满足

{Fs2=FM2=2Fdx(3.3)\begin{aligned} \begin{cases} F_{s2}=F\\ M_2=2Fdx \end{cases} \end{aligned} \tag{3.3}

  由剪力图与弯矩图可知,这一点所受到的剪力和弯矩为

{Fs2=F=Fs1M2=Fdx=M1(3.4)\begin{aligned} \begin{cases} F_{s2}'=F=F_{s1}\\ M_2'=Fdx=M_1 \end{cases} \end{aligned} \tag{3.4}

  由此可以得出梁上某一点受到的剪力和弯矩,取决于这一点处微元右侧面所受的力与力矩,大小与其相等,方向与其相反

  弯矩是通过剪力在相邻微元中传递的,宏观上来看,是此微元右侧各点所受到的剪力产生微小力矩(长度为dx\pmb{dx})的总和

3.2 算法思路

  设微元长度为dxdx,长度为a的范围内微元数为nxnx。则可以建立一个1×nx1\times nx的矩阵,来描述杆ABAB各微元处的剪力,称为剪力矩阵。同样,可以建立一个1×2nx1\times 2nx的杆CDCD的剪力矩阵。用相同的方法,建立弯矩矩阵和挠度矩阵来描述杆ABAB和杆CDCD各微元处的弯矩和挠度。

  这三种矩阵之间是存在相互联系的。对于剪力矩阵,在除了BB点和EE点之外的所有的点,它的剪力等于右侧相邻点的剪力,由此,可以根据已知的自由端的力,迭代出每一点的剪力。对于弯矩矩阵,每一点弯矩的值,等于右侧各点所受到的剪力产生微小力矩(长度为dxdx)的总和。对于挠度矩阵,每一点挠度函数二阶导数的值,等于这一点弯矩的值乘以1EI-\frac{1}{EI}。再由辛普森法来求出这一点的挠度的值。

  另外还有边界条件。由第2章剪力图可知,杆ABAB与杆CECE同一竖直方向上的两点,剪力和为FF

  我们不知道杆BEBE的轴力,可以假定一个初始值。判断这个轴力值合不合适的标准是:由杆AB\pmb{AB}和杆CD\pmb{CD}的两个挠度矩阵,所确定的B\pmb{B}点处挠度值ωB\pmb{\omega_{B}}E\pmb{E}点处挠度值ωE\pmb{\omega_{E}},计算两者的差值ωBωE\pmb{\omega_{B}-\omega_{E}}。由轴向拉伸公式所确定的杆BE\pmb{BE}的伸长量ΔlBE\pmb{\Delta l_{BE}}(杆BE\pmb{BE}轴力与杆AB\pmb{AB}剪力相同)。应有:

\pmb{\Delta l_{BE}=\omega_{B}-\omega_{E}\tag{3.5}}

  如果假设的轴力不合适,我们可以对这个值进行微量的增加,再校验。重复以上,直到轴力合适。

  由合适的轴力可以迭代出杆ABAB的挠度矩阵,进而得到BB点处的挠度。

  具体的MATLAB源代码及其运行结果见下。

  源代码已上传Github,可以访问链接下载源代码。

3.2 MATLAB源代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
clc;
clear;
close all;
format short
%% 参数设置
a = 2;
l = 5;
F = 50 * 10 ^ 3;
E1I1 = 24 * 10 ^ 6;
E2A2 = 6 * 10 ^ 7;
%% 解析解计算
analytical_solution = - (5 * E2A2 * F * a ^ 6) / (3 * E1I1) / (6 * E1I1 * l + 4 * E2A2 * a ^ 3);
%% 离散化参数
dx = 0.005;
% 微元长度
df = 0.5;
% 迭代增加轴力的步长
nx = a / dx;
% 长度为a的微元数
%% 初始化边界条件
F_AB_end = df;
% 杆AB末端剪力初始猜测值
F_CD_end = F;
% 杆CD末端集中力
%% 迭代模拟
for i = 1 : 10 ^ 10
% 末端尽量大,使充分迭代
[F_AB, M_AB, W_AB, F_CD, M_CD, W_CD, diff_w, diff_L, w_B] = sim(F_AB_end, F_CD_end, l, F, E1I1, E2A2, dx, nx);
if mod(i, 100) == 0
% 进度条
clc;
disp('程序运行进度:')
a = w_B / analytical_solution * 100;
s = ['[', repmat('*', 1, floor(a / 4)), repmat('-', 1, 50 floor(a / 4)), ']'];
fprintf('%s', s)
fprintf('%2.2f%%', a)
end
if abs(diff_w - diff_L) <= 0.000001
% diff_w与diff_L近似相等
clc;
fprintf('算法值为: %.4f\n', w_B);
fprintf('解析值为: %.4f\n', analytical_solution);
fprintf('算法值与解析值相对误差为: %.4f%%\n', abs((w_B - analytical_solution) / analytical_solution) * 100);
disp('杆AB的挠度矩阵:')
disp(W_AB)
disp('杆CD的挠度矩阵:')
disp(W_CD)
break
end
F_AB_end = F_AB_end + df;
end
%% 定义模拟函数
function [F_AB, M_AB, W_AB, F_CD, M_CD, W_CD, diff_w, diff_L, w_B] = sim(F_AB_end, F_CD_end, l, F, E1I1, E2A2, dx, nx)
% 初始化杆件状态
% 杆AB的剪力、弯矩、挠度矩阵
F_AB = zeros(1, nx);
M_AB = zeros(1, nx);
W_AB = zeros(1, nx);
% 杆CD的剪力、弯矩、挠度矩阵
F_CD = zeros(1, 2 * nx);
M_CD = zeros(1, 2 * nx);
W_CD = zeros(1, 2 * nx);
% 初始化边界条件
F_AB(end) = F_AB_end;
F_CD(end) = F_CD_end;
% 剪力的传递
% 杆AB
for i = nx-1 : -1 : 1
F_AB(i) = F_AB(i + 1);
end
% 杆CD
for i = 2 * nx - 1 : - 1 : nx + 1
F_CD(i) = F_CD(i + 1);
end
for i = nx - 1 : - 1 : 1
F_CD(i) = F - F_AB(i);
end
% 弯矩的传递
% 杆AB
for i = nx - 1 : - 1 : 1
M_AB(i) = sum(F_AB(i + 1 : end) * dx);
end
% 杆CD
for i = 2 * nx - 1 : - 1 : 1
M_CD(i) = sum(F_CD(i + 1 : end) * dx);
end
% 挠度的传递
% 挠度的二阶导数
W2_AB = - M_AB / E1I1;
W2_CD = - M_CD / E1I1;
% 第一次积分,辛普森法数值积分
slope_AB = simpson_integrate(W2_AB, dx);
slope_CD = simpson_integrate(W2_CD, dx);
% 第二次积分,辛普森法数值积分
W_AB = simpson_integrate(slope_AB, dx);
W_CD = simpson_integrate(slope_CD, dx);
% 输出结果
diff_w = W_AB(nx) - W_CD(nx);
diff_L = F_AB(nx) * l / E2A2;
w_B = W_AB(nx);
end
%% 辛普森法数值积分
function y = simpson_integrate(f, h)
% 输入:
% f - 导数在等距点上的值向量 [f0, f1, f2, ..., fN]
% h - 采样步长
% 输出:
% y - 原函数在对应点上的值向量 [y0, y1, y2, ..., yN]
N = length(f) - 1; % 采样点数-1
y = zeros(1, N + 1); % 存储原函数y的值
% 初始条件
y(1) = 0;
% 逐点积分计算原函数y
for k = 1 : N
% 计算原函数y(k+1)
if mod(k, 2) == 1
% 奇步长: 梯形法则
y(k + 1) = y(k) + (h / 2) * (f(k) + f(k + 1));
else
% 偶步长: 辛普森法则
y(k + 1) = y(k - 1) + (h / 3) * (f(k - 1) + 4 * f(k) + f(k + 1));
end
end
end

3.3 MATLAB代码运行结果

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
算法值为: -0.0050

解析值为: -0.0051

算法值与解析值相对误差为: 0.8236%

杆AB的挠度矩阵:

16

0 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000

712

-0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000

1318

-0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000

1924

-0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000

2530

-0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000

3136

-0.0000 -0.0000 -0.0000 -0.0000 -0.0001 -0.0001

3742

-0.0001 -0.0001 -0.0001 -0.0001 -0.0001 -0.0001

4348

-0.0001 -0.0001 -0.0001 -0.0001 -0.0001 -0.0001

4954

-0.0001 -0.0001 -0.0001 -0.0001 -0.0001 -0.0001

5560

-0.0001 -0.0001 -0.0001 -0.0001 -0.0002 -0.0002

6166

-0.0002 -0.0002 -0.0002 -0.0002 -0.0002 -0.0002

6772

-0.0002 -0.0002 -0.0002 -0.0002 -0.0002 -0.0002

7378

-0.0002 -0.0002 -0.0002 -0.0002 -0.0003 -0.0003

7984

-0.0003 -0.0003 -0.0003 -0.0003 -0.0003 -0.0003

8590

-0.0003 -0.0003 -0.0003 -0.0003 -0.0003 -0.0003

9196

-0.0004 -0.0004 -0.0004 -0.0004 -0.0004 -0.0004

97102

-0.0004 -0.0004 -0.0004 -0.0004 -0.0004 -0.0004

103108

-0.0004 -0.0005 -0.0005 -0.0005 -0.0005 -0.0005

109114

-0.0005 -0.0005 -0.0005 -0.0005 -0.0005 -0.0005

115120

-0.0006 -0.0006 -0.0006 -0.0006 -0.0006 -0.0006

121126

-0.0006 -0.0006 -0.0006 -0.0006 -0.0007 -0.0007

127132

-0.0007 -0.0007 -0.0007 -0.0007 -0.0007 -0.0007

133138

-0.0007 -0.0007 -0.0008 -0.0008 -0.0008 -0.0008

139144

-0.0008 -0.0008 -0.0008 -0.0008 -0.0008 -0.0008

145150

-0.0009 -0.0009 -0.0009 -0.0009 -0.0009 -0.0009

151156

-0.0009 -0.0009 -0.0010 -0.0010 -0.0010 -0.0010

157162

-0.0010 -0.0010 -0.0010 -0.0010 -0.0010 -0.0011

163168

-0.0011 -0.0011 -0.0011 -0.0011 -0.0011 -0.0011

169174

-0.0011 -0.0012 -0.0012 -0.0012 -0.0012 -0.0012

175180

-0.0012 -0.0012 -0.0012 -0.0013 -0.0013 -0.0013

181186

-0.0013 -0.0013 -0.0013 -0.0013 -0.0014 -0.0014

187192

-0.0014 -0.0014 -0.0014 -0.0014 -0.0014 -0.0014

193198

-0.0015 -0.0015 -0.0015 -0.0015 -0.0015 -0.0015

199204

-0.0015 -0.0016 -0.0016 -0.0016 -0.0016 -0.0016

205210

-0.0016 -0.0016 -0.0017 -0.0017 -0.0017 -0.0017

211216

-0.0017 -0.0017 -0.0017 -0.0018 -0.0018 -0.0018

217222

-0.0018 -0.0018 -0.0018 -0.0018 -0.0019 -0.0019

223228

-0.0019 -0.0019 -0.0019 -0.0019 -0.0020 -0.0020

229234

-0.0020 -0.0020 -0.0020 -0.0020 -0.0020 -0.0021

235240

-0.0021 -0.0021 -0.0021 -0.0021 -0.0021 -0.0022

241246

-0.0022 -0.0022 -0.0022 -0.0022 -0.0022 -0.0023

247252

-0.0023 -0.0023 -0.0023 -0.0023 -0.0023 -0.0023

253258

-0.0024 -0.0024 -0.0024 -0.0024 -0.0024 -0.0024

259264

-0.0025 -0.0025 -0.0025 -0.0025 -0.0025 -0.0025

265270

-0.0026 -0.0026 -0.0026 -0.0026 -0.0026 -0.0026

271276

-0.0027 -0.0027 -0.0027 -0.0027 -0.0027 -0.0027

277282

-0.0028 -0.0028 -0.0028 -0.0028 -0.0028 -0.0029

283288

-0.0029 -0.0029 -0.0029 -0.0029 -0.0029 -0.0030

289294

-0.0030 -0.0030 -0.0030 -0.0030 -0.0030 -0.0031

295300

-0.0031 -0.0031 -0.0031 -0.0031 -0.0031 -0.0032

301306

-0.0032 -0.0032 -0.0032 -0.0032 -0.0033 -0.0033

307312

-0.0033 -0.0033 -0.0033 -0.0033 -0.0034 -0.0034

313318

-0.0034 -0.0034 -0.0034 -0.0035 -0.0035 -0.0035

319324

-0.0035 -0.0035 -0.0035 -0.0036 -0.0036 -0.0036

325330

-0.0036 -0.0036 -0.0036 -0.0037 -0.0037 -0.0037

331336

-0.0037 -0.0037 -0.0038 -0.0038 -0.0038 -0.0038

337342

-0.0038 -0.0039 -0.0039 -0.0039 -0.0039 -0.0039

343348

-0.0039 -0.0040 -0.0040 -0.0040 -0.0040 -0.0040

349354

-0.0041 -0.0041 -0.0041 -0.0041 -0.0041 -0.0041

355360

-0.0042 -0.0042 -0.0042 -0.0042 -0.0042 -0.0043

361366

-0.0043 -0.0043 -0.0043 -0.0043 -0.0044 -0.0044

367372

-0.0044 -0.0044 -0.0044 -0.0044 -0.0045 -0.0045

373378

-0.0045 -0.0045 -0.0045 -0.0046 -0.0046 -0.0046

379384

-0.0046 -0.0046 -0.0047 -0.0047 -0.0047 -0.0047

385390

-0.0047 -0.0047 -0.0048 -0.0048 -0.0048 -0.0048

391396

-0.0048 -0.0049 -0.0049 -0.0049 -0.0049 -0.0049

397400

-0.0050 -0.0050 -0.0050 -0.0050

杆CD的挠度矩阵:

16

0 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000

712

-0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000

1318

-0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000

1924

-0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000

2530

-0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000

3136

-0.0001 -0.0001 -0.0001 -0.0001 -0.0001 -0.0001

3742

-0.0001 -0.0001 -0.0001 -0.0001 -0.0001 -0.0001

4348

-0.0001 -0.0001 -0.0001 -0.0001 -0.0001 -0.0001

4954

-0.0001 -0.0001 -0.0001 -0.0001 -0.0002 -0.0002

5560

-0.0002 -0.0002 -0.0002 -0.0002 -0.0002 -0.0002

6166

-0.0002 -0.0002 -0.0002 -0.0002 -0.0002 -0.0002

6772

-0.0002 -0.0003 -0.0003 -0.0003 -0.0003 -0.0003

7378

-0.0003 -0.0003 -0.0003 -0.0003 -0.0003 -0.0003

7984

-0.0003 -0.0004 -0.0004 -0.0004 -0.0004 -0.0004

8590

-0.0004 -0.0004 -0.0004 -0.0004 -0.0004 -0.0004

9196

-0.0005 -0.0005 -0.0005 -0.0005 -0.0005 -0.0005

97102

-0.0005 -0.0005 -0.0005 -0.0006 -0.0006 -0.0006

103108

-0.0006 -0.0006 -0.0006 -0.0006 -0.0006 -0.0006

109114

-0.0007 -0.0007 -0.0007 -0.0007 -0.0007 -0.0007

115120

-0.0007 -0.0007 -0.0008 -0.0008 -0.0008 -0.0008

121126

-0.0008 -0.0008 -0.0008 -0.0009 -0.0009 -0.0009

127132

-0.0009 -0.0009 -0.0009 -0.0009 -0.0010 -0.0010

133138

-0.0010 -0.0010 -0.0010 -0.0010 -0.0010 -0.0011

139144

-0.0011 -0.0011 -0.0011 -0.0011 -0.0011 -0.0012

145150

-0.0012 -0.0012 -0.0012 -0.0012 -0.0012 -0.0012

151156

-0.0013 -0.0013 -0.0013 -0.0013 -0.0013 -0.0014

157162

-0.0014 -0.0014 -0.0014 -0.0014 -0.0014 -0.0015

163168

-0.0015 -0.0015 -0.0015 -0.0015 -0.0015 -0.0016

169174

-0.0016 -0.0016 -0.0016 -0.0016 -0.0017 -0.0017

175180

-0.0017 -0.0017 -0.0017 -0.0018 -0.0018 -0.0018

181186

-0.0018 -0.0018 -0.0019 -0.0019 -0.0019 -0.0019

187192

-0.0019 -0.0020 -0.0020 -0.0020 -0.0020 -0.0020

193198

-0.0021 -0.0021 -0.0021 -0.0021 -0.0022 -0.0022

199204

-0.0022 -0.0022 -0.0022 -0.0023 -0.0023 -0.0023

205210

-0.0023 -0.0024 -0.0024 -0.0024 -0.0024 -0.0024

211216

-0.0025 -0.0025 -0.0025 -0.0025 -0.0026 -0.0026

217222

-0.0026 -0.0026 -0.0027 -0.0027 -0.0027 -0.0027

223228

-0.0028 -0.0028 -0.0028 -0.0028 -0.0029 -0.0029

229234

-0.0029 -0.0029 -0.0030 -0.0030 -0.0030 -0.0030

235240

-0.0031 -0.0031 -0.0031 -0.0031 -0.0032 -0.0032

241246

-0.0032 -0.0032 -0.0033 -0.0033 -0.0033 -0.0034

247252

-0.0034 -0.0034 -0.0034 -0.0035 -0.0035 -0.0035

253258

-0.0035 -0.0036 -0.0036 -0.0036 -0.0037 -0.0037

259264

-0.0037 -0.0037 -0.0038 -0.0038 -0.0038 -0.0039

265270

-0.0039 -0.0039 -0.0039 -0.0040 -0.0040 -0.0040

271276

-0.0041 -0.0041 -0.0041 -0.0042 -0.0042 -0.0042

277282

-0.0042 -0.0043 -0.0043 -0.0043 -0.0044 -0.0044

283288

-0.0044 -0.0045 -0.0045 -0.0045 -0.0046 -0.0046

289294

-0.0046 -0.0047 -0.0047 -0.0047 -0.0047 -0.0048

295300

-0.0048 -0.0048 -0.0049 -0.0049 -0.0049 -0.0050

301306

-0.0050 -0.0050 -0.0051 -0.0051 -0.0051 -0.0052

307312

-0.0052 -0.0052 -0.0053 -0.0053 -0.0053 -0.0054

313318

-0.0054 -0.0054 -0.0055 -0.0055 -0.0055 -0.0056

319324

-0.0056 -0.0057 -0.0057 -0.0057 -0.0058 -0.0058

325330

-0.0058 -0.0059 -0.0059 -0.0059 -0.0060 -0.0060

331336

-0.0060 -0.0061 -0.0061 -0.0062 -0.0062 -0.0062

337342

-0.0063 -0.0063 -0.0063 -0.0064 -0.0064 -0.0065

343348

-0.0065 -0.0065 -0.0066 -0.0066 -0.0066 -0.0067

349354

-0.0067 -0.0068 -0.0068 -0.0068 -0.0069 -0.0069

355360

-0.0069 -0.0070 -0.0070 -0.0071 -0.0071 -0.0071

361366

-0.0072 -0.0072 -0.0073 -0.0073 -0.0073 -0.0074

367372

-0.0074 -0.0075 -0.0075 -0.0075 -0.0076 -0.0076

373378

-0.0077 -0.0077 -0.0077 -0.0078 -0.0078 -0.0079

379384

-0.0079 -0.0079 -0.0080 -0.0080 -0.0081 -0.0081

385390

-0.0082 -0.0082 -0.0082 -0.0083 -0.0083 -0.0084

391396

-0.0084 -0.0085 -0.0085 -0.0085 -0.0086 -0.0086

397402

-0.0087 -0.0087 -0.0088 -0.0088 -0.0088 -0.0089

403408

-0.0089 -0.0090 -0.0090 -0.0091 -0.0091 -0.0091

409414

-0.0092 -0.0092 -0.0093 -0.0093 -0.0094 -0.0094

415420

-0.0095 -0.0095 -0.0095 -0.0096 -0.0096 -0.0097

421426

-0.0097 -0.0098 -0.0098 -0.0099 -0.0099 -0.0100

427432

-0.0100 -0.0101 -0.0101 -0.0101 -0.0102 -0.0102

433438

-0.0103 -0.0103 -0.0104 -0.0104 -0.0105 -0.0105

439444

-0.0106 -0.0106 -0.0107 -0.0107 -0.0108 -0.0108

445450

-0.0109 -0.0109 -0.0109 -0.0110 -0.0110 -0.0111

451456

-0.0111 -0.0112 -0.0112 -0.0113 -0.0113 -0.0114

457462

-0.0114 -0.0115 -0.0115 -0.0116 -0.0116 -0.0117

463468

-0.0117 -0.0118 -0.0118 -0.0119 -0.0119 -0.0120

469474

-0.0120 -0.0121 -0.0121 -0.0122 -0.0122 -0.0123

475480

-0.0123 -0.0124 -0.0124 -0.0125 -0.0125 -0.0126

481486

-0.0126 -0.0127 -0.0127 -0.0128 -0.0128 -0.0129

487492

-0.0129 -0.0130 -0.0130 -0.0131 -0.0131 -0.0132

493498

-0.0133 -0.0133 -0.0134 -0.0134 -0.0135 -0.0135

499504

-0.0136 -0.0136 -0.0137 -0.0137 -0.0138 -0.0138

505510

-0.0139 -0.0139 -0.0140 -0.0140 -0.0141 -0.0141

511516

-0.0142 -0.0143 -0.0143 -0.0144 -0.0144 -0.0145

517522

-0.0145 -0.0146 -0.0146 -0.0147 -0.0147 -0.0148

523528

-0.0148 -0.0149 -0.0150 -0.0150 -0.0151 -0.0151

529534

-0.0152 -0.0152 -0.0153 -0.0153 -0.0154 -0.0154

535540

-0.0155 -0.0156 -0.0156 -0.0157 -0.0157 -0.0158

541546

-0.0158 -0.0159 -0.0159 -0.0160 -0.0161 -0.0161

547552

-0.0162 -0.0162 -0.0163 -0.0163 -0.0164 -0.0165

553558

-0.0165 -0.0166 -0.0166 -0.0167 -0.0167 -0.0168

559564

-0.0168 -0.0169 -0.0170 -0.0170 -0.0171 -0.0171

565570

-0.0172 -0.0172 -0.0173 -0.0174 -0.0174 -0.0175

571576

-0.0175 -0.0176 -0.0176 -0.0177 -0.0178 -0.0178

577582

-0.0179 -0.0179 -0.0180 -0.0181 -0.0181 -0.0182

583588

-0.0182 -0.0183 -0.0183 -0.0184 -0.0185 -0.0185

589594

-0.0186 -0.0186 -0.0187 -0.0188 -0.0188 -0.0189

595600

-0.0189 -0.0190 -0.0190 -0.0191 -0.0192 -0.0192

601606

-0.0193 -0.0193 -0.0194 -0.0195 -0.0195 -0.0196

607612

-0.0196 -0.0197 -0.0198 -0.0198 -0.0199 -0.0199

613618

-0.0200 -0.0201 -0.0201 -0.0202 -0.0202 -0.0203

619624

-0.0204 -0.0204 -0.0205 -0.0205 -0.0206 -0.0207

625630

-0.0207 -0.0208 -0.0208 -0.0209 -0.0210 -0.0210

631636

-0.0211 -0.0211 -0.0212 -0.0213 -0.0213 -0.0214

637642

-0.0214 -0.0215 -0.0216 -0.0216 -0.0217 -0.0217

643648

-0.0218 -0.0219 -0.0219 -0.0220 -0.0221 -0.0221

649654

-0.0222 -0.0222 -0.0223 -0.0224 -0.0224 -0.0225

655660

-0.0225 -0.0226 -0.0227 -0.0227 -0.0228 -0.0229

661666

-0.0229 -0.0230 -0.0230 -0.0231 -0.0232 -0.0232

667672

-0.0233 -0.0233 -0.0234 -0.0235 -0.0235 -0.0236

673678

-0.0237 -0.0237 -0.0238 -0.0238 -0.0239 -0.0240

679684

-0.0240 -0.0241 -0.0242 -0.0242 -0.0243 -0.0243

685690

-0.0244 -0.0245 -0.0245 -0.0246 -0.0247 -0.0247

691696

-0.0248 -0.0248 -0.0249 -0.0250 -0.0250 -0.0251

697702

-0.0252 -0.0252 -0.0253 -0.0253 -0.0254 -0.0255

703708

-0.0255 -0.0256 -0.0257 -0.0257 -0.0258 -0.0259

709714

-0.0259 -0.0260 -0.0260 -0.0261 -0.0262 -0.0262

715720

-0.0263 -0.0264 -0.0264 -0.0265 -0.0265 -0.0266

721726

-0.0267 -0.0267 -0.0268 -0.0269 -0.0269 -0.0270

727732

-0.0271 -0.0271 -0.0272 -0.0272 -0.0273 -0.0274

733738

-0.0274 -0.0275 -0.0276 -0.0276 -0.0277 -0.0278

739744

-0.0278 -0.0279 -0.0279 -0.0280 -0.0281 -0.0281

745750

-0.0282 -0.0283 -0.0283 -0.0284 -0.0285 -0.0285

751756

-0.0286 -0.0287 -0.0287 -0.0288 -0.0288 -0.0289

757762

-0.0290 -0.0290 -0.0291 -0.0292 -0.0292 -0.0293

763768

-0.0294 -0.0294 -0.0295 -0.0295 -0.0296 -0.0297

769774

-0.0297 -0.0298 -0.0299 -0.0299 -0.0300 -0.0301

775780

-0.0301 -0.0302 -0.0303 -0.0303 -0.0304 -0.0304

781786

-0.0305 -0.0306 -0.0306 -0.0307 -0.0308 -0.0308

787792

-0.0309 -0.0310 -0.0310 -0.0311 -0.0312 -0.0312

793798

-0.0313 -0.0313 -0.0314 -0.0315 -0.0315 -0.0316

799800

-0.0317 -0.0317

第4章 总结

4.1 研究内容与方法概述

  本研究围绕杆结构的挠度求解问题,结合理论分析与数值仿真展开研究。通过常规解析法,基于材料力学基本公式(如挠曲线微分方程、轴向拉伸公式),推导各杆段的剪力、弯矩及挠度表达式,通过联立方程求解未知轴力,最终得到BB点挠度;借助MATLAB仿真法,将杆离散为微元,通过迭代传递剪力、弯矩与挠度的二阶导数,利用数值积分(辛普森法)计算挠度,并通过轴力迭代使钢杆变形与结构挠度协调,实现对复杂结构的量化分析。

4.2 方法对比与结果分析

  常规解析法:理论推导严谨,物理意义明确,适用于规则结构的精确求解,但对于多构件耦合或复杂载荷情况,公式推导繁琐,易受数学处理能力限制。本研究中解析解与仿真结果误差小于1%1\%,验证了理论模型的准确性。

  MATLAB仿真法:通过离散化和迭代算法,将连续结构转化为数值模型,灵活性高,可适应复杂边界条件与载荷分布。本研究中通过设置微元长度dx=0.005mdx=0.005m和轴力迭代步长df=0.5Ndf=0.5N,实现了高精度求解,且算法值与解析值高度吻合,证明了仿真方法的可靠性。

4.3 工程应用价值

  本研究建立的解析与仿真方法为杆结构的挠度分析提供了实用工具。MATLAB仿真法尤其适用于工程中常见的复杂结构(如变截面梁、多支点结构),可通过调整参数快速模拟不同工况,为结构设计与优化提供数据支持。此外,两种方法的对比分析为数值模型的验证提供了参考,有助于提升工程计算的准确性与效率。

4.4 未来展望

  后续研究可进一步拓展模型复杂度,如考虑变刚度杆、非线性材料特性或动态载荷作用,同时可优化MATLAB算法(如引入自适应步长积分或更高效的迭代策略),以提升计算效率与适用范围。该研究方法也可延伸至其他力学问题(如应力分析、振动响应),为工程力学的数值模拟提供普适性思路。

致谢

  感谢房凯老师这一个学期的耐心教导!

  感谢父母与朋友在生活中无微的帮助!

  在我这么多朋友中,我尤其感谢远在河北某本科上学的异父异母的亲兄弟——Hana,感谢他在编程方面对我的帮助。感谢他凌晨一点半还热心地教我怎样在Github上上传文件,我的博客网站得以建成,他功不可没。