Professional Documents
Culture Documents
Introduction To Nonlinear Problems: Chapter Seven
Introduction To Nonlinear Problems: Chapter Seven
This example requires symbolic calculations. Thus there is no MATLAB implementation. An implementa-
tion using MATLAB Symbolic toolbox can be created along the same lines as the Mathematica
implementation.
Element equations
2
kHd L = rE
ij ÅÅÅÅÅÅÅÅ yz
jj 3 ÅbÅÅÅÅÅ zz
Ÿx1 IN d M B B d dx = jjj 3 3 zz
3 3
u1 -u2
kHd L = zz
j -u1 +u2
x2 T 2
T
k ÅÅÅÅÅÅÅÅ3ÅÅÅÅbÅÅÅÅÅÅ {
k ÅÅÅÅ2ÅÅÅÅ { k 2 {
P
i u1 yz
i ∑ k1 ê ∑ u1 ∑ k1 ê ∑ u2 yz jjjj ÅÅÅÅbÅÅ - ÅÅÅÅbÅÅ
j zz
zz
kT = j z=j
2 2
u2
k ∑ k2 ê ∑ u1 ∑ k2 ê ∑ u2 { jj - ÅÅÅÅ zz
k bÅÅ {
u21 u2
ÅÅÅÅb2ÅÅ
MatlabFiles\Chap07\kd.m
end
MatlabFiles\Chap07\kT.m
end
3
MatlabFiles\\Chap07\\BasicNewtonRaphsonBVPEx71.m
>> BasicNewtonRaphsonBVPEx71
Iteration: 1
Element: 1
kde =
4
-7
7
kTe =
3 -12
-3 12
Element: 2
kde =
0
0
kTe =
12 -12
-12 12
Element: 3
kde =
0
0
kTe =
12 -12
-12 12
Kf =
24 -12 0
-12 24 -12
0 -12 12
Ff =
5
-5.6667
1.3333
2.6667
d=
1.0000
1.8611
2.1944
2.4167
Iteration: 2
Element: 1
kde =
-5.4464
5.4464
kTe =
3.0000 -10.3912
-3.0000 10.3912
Element: 2
kde =
-4.1211
4.1211
kTe =
10.3912 -14.4468
-10.3912 14.4468
Element: 3
kde =
-3.5465
3.5465
6
kTe =
14.4468 -17.5208
-14.4468 17.5208
Kf =
20.7824 -14.4468 0
-10.3912 28.8935 -17.5208
0 -14.4468 17.5208
Ff =
0.0081
0.7587
-0.8798
d=
1.0000
1.8502
2.1782
2.3531
Iteration: 3
Element: 1
kde =
-5.3340
5.3340
kTe =
3.0000 -10.2701
-3.0000 10.2701
Element: 2
7
kde =
-4.0011
4.0011
kTe =
10.2701 -14.2341
-10.2701 14.2341
Element: 3
kde =
-2.6940
2.6940
kTe =
14.2341 -16.6110
-14.2341 16.6110
Kf =
20.5401 -14.2341 0
-10.2701 28.4682 -16.6110
0 -14.2341 16.6110
Ff =
0.0004
0.0263
-0.0273
d=
1.0000
1.8502
2.1781
2.3513
8
Element equations
kHd L = rE
ij ÅÅÅÅÅÅÅÅ yz
jj 3 ÅbÅÅÅÅÅ zz
Ÿx1 j
IN d M B B d dx = jj 3 3 zz
3 3
u1 -u2
kHd L = zz
j -u1 +u2
x2 T 2T
k ÅÅÅÅÅÅÅÅ3ÅÅÅÅbÅÅÅÅÅÅ {
ij ÅÅÅÅ ÅÅÅÅ y
2 z i P1 yz
rE = rq + rp = jjj q b zzzz + jj
j z
qb
k ÅÅÅÅ2ÅÅÅÅ { k 2 {
P
i 1 yz
i ∑ k1 ê ∑ u1 ∑ k1 ê ∑ u2 yz jjjj ÅÅÅÅbÅÅ - ÅÅÅÅbÅÅ zz
kT = jj z = jj zz
u2 u2
zz
2
k ∑ k2 ê ∑ u1 ∑ k2 ê ∑ u2 { j - ÅÅÅÅ
k bÅÅ {
u21 u2
ÅÅÅÅb2ÅÅ
MatlabFiles\\Chap07\\LoadIncrementBVPEx73.m
9
>> LoadIncrementBVPEx73
Current load factor: 2
Iteration: 1
Element: 1
10
kde =
-7
7
kTe =
3 -12
-3 12
Element: 2
kde =
0
0
kTe =
12 -12
-12 12
Element: 3
kde =
0
0
kTe =
12 -12
-12 12
Kf =
24 -12 0
-12 24 -12
0 -12 12
11
Ff =
-6.3333
0.6667
1.3333
d=
1.0000
1.6389
1.8056
1.9167
Iteration: 2
Element: 1
kde =
-3.4020
3.4020
kTe =
3.0000 -8.0579
-3.0000 8.0579
Element: 2
kde =
-1.4842
1.4842
kTe =
8.0579 -9.7801
-8.0579 9.7801
Element: 3
kde =
12
-1.1549
1.1549
kTe =
9.7801 -11.0208
-9.7801 11.0208
Kf =
16.1157 -9.7801 0
-8.0579 19.5602 -11.0208
0 -9.7801 11.0208
Ff =
-1.2511
0.3374
0.1784
d=
1.0000
1.5476
1.7831
1.9129
Iteration: 3
Element: 1
kde =
-2.7068
2.7068
kTe =
3.0000 -7.1855
-3.0000 7.1855
13
Element: 2
kde =
-1.9625
1.9625
kTe =
7.1855 -9.5385
-7.1855 9.5385
Element: 3
kde =
-1.3307
1.3307
kTe =
9.5385 -10.9780
-9.5385 10.9780
Kf =
14.3710 -9.5385 0
-7.1855 19.0769 -10.9780
0 -9.5385 10.9780
Ff =
-0.0776
0.0348
0.0026
d=
1.0000
1.5420
14
1.7828
1.9129
kde =
-2.6668
2.6668
kTe =
3.0000 -7.1337
-3.0000 7.1337
Element: 2
kde =
-1.9999
1.9999
kTe =
7.1337 -9.5354
-7.1337 9.5354
Element: 3
kde =
-1.3333
1.3333
kTe =
9.5354 -10.9779
-9.5354 10.9779
Kf =
15
14.2674 -9.5354 0
-7.1337 19.0708 -10.9779
0 -9.5354 10.9779
Ff =
0.6664
0.6668
1.3333
d=
1.0000
1.9158
2.2722
2.4595
Iteration: 2
Element: 1
kde =
-6.0319
6.0319
kTe =
3.0000 -11.0113
-3.0000 11.0113
Element: 2
kde =
-4.6997
4.6997
kTe =
11.0113 -15.4891
16
-11.0113 15.4891
Element: 3
kde =
-3.1460
3.1460
kTe =
15.4891 -18.1472
-15.4891 18.1472
Kf =
22.0225 -15.4891 0
-11.0113 30.9782 -18.1472
0 -15.4891 18.1472
Ff =
0.0011
-0.2204
-0.4793
d=
1.0000
1.8524
2.1820
2.3560
Iteration: 3
Element: 1
kde =
-5.3562
5.3562
17
kTe =
3.0000 -10.2941
-3.0000 10.2941
Element: 2
kde =
-4.0319
4.0319
kTe =
10.2941 -14.2828
-10.2941 14.2828
Element: 3
kde =
-2.6897
2.6897
kTe =
14.2828 -16.6525
-14.2828 16.6525
Kf =
20.5881 -14.2828 0
-10.2941 28.5656 -16.6525
0 -14.2828 16.6525
Ff =
0.0091
-0.0089
-0.0231
18
d=
1.0000
1.8502
2.1781
2.3513
Element equations
kHd L = rE
kHd L =
ÅÅÅÅÅÅ
j ÅÅÅÅÅÅÅÅ z
x2 T 2T 3b
k 3ÅÅÅÅbÅÅÅÅÅÅ {
-u1 +u2
ij ÅÅÅÅ ÅÅÅÅ y
2 z i P1 yz
j
rE = rq + rp = jjj q b zzzz + jj z
qb
k ÅÅÅÅ2ÅÅÅÅ { k 2 {
P
i 1 yz
i ∑ k1 ê ∑ u1 ∑ k1 ê ∑ u2 yz jjjj ÅÅÅÅbÅÅ - ÅÅÅÅbÅÅ zz
kT = jj z = jj zz
u2 u2
zz
2
k ∑ k2 ê ∑ u1 ∑ k2 ê ∑ u2 { j - ÅÅÅÅ
k bÅÅ {
u21 u2
ÅÅÅÅb2ÅÅ
MatlabFiles\\Chap07\\LoadIncrementBVPEx73.m
a3 = b'*b;
if iter==1
ddHdfL = a; s = lambda*sqrtHa3L;
fprintfH'Initial arc-length, s = %f\n', sL
else
ade = a + deHdfL;
a1 = ade'*ade - s^2;
a2 = 2*ade'*b; a4 = a2^2 - 4*a3*a1;
if a4>0
a4 = sqrtHa4L;
dlam1 = H-a2+a4LêH2*a3L;
dlam2 = H-a2-a4LêH2*a3L;
d1 = deHdfL'*HdeHdfL+a+b*dlam1L;
d2 = deHdfL'*HdeHdfL+a+b*dlam2L;
if minHd1,d2L>=0
dlam3 = -a1êa2;
if absHdlam1-dlam3L<absHdlam2-dlam3L
dlam = dlam1;
else
dlam = dlam2;
end
elseif d1>0
dlam = dlam1;
elseif d2>0
dlam = dlam2;
end
else
dlam = -minHmaxHconêtol,0.1L,0.5L*lambda;
end
if lambda + dlam > lambdaMax
dlam = lambdaMax-lambda; lambda = lambdaMax;
else
lambda = lambda + dlam;
end
ddHdfL = a + b*dlam;
end
de = de + dd;
21
d = d + dd
iter=iter+1;
end
end
>> ArcLengthBVPEx74
*************************************
Current load factor: 0.5000
Iteration: 1
*************************************
Element: 1
kde =
-2.3750
2.3750
kTe =
3.0000 -6.7500
-3.0000 6.7500
Element: 2
kde =
0
0
kTe =
6.7500 -6.7500
-6.7500 6.7500
Element: 3
kde =
0
0
kTe =
22
6.7500 -6.7500
-6.7500 6.7500
Kf =
13.5000 -6.7500 0
-6.7500 13.5000 -6.7500
0 -6.7500 6.7500
Ff =
-2.2083
0.1667
0.3333
d=
1.0000
1.2469
1.3210
1.3704
*************************************
Current load factor: 0.5000
Iteration: 2
*************************************
Element: 1
kde =
-0.9387
0.9387
kTe =
3.0000 -4.6644
-3.0000 4.6644
Element: 2
23
kde =
-0.3664
0.3664
kTe =
4.6644 -5.2350
-4.6644 5.2350
Element: 3
kde =
-0.2683
0.2683
kTe =
5.2350 -5.6337
-5.2350 5.6337
Kf =
9.3288 -5.2350 0
-4.6644 10.4701 -5.6337
0 -5.2350 5.6337
Ff =
-0.4056
0.0685
0.0650
d=
1.0000
1.2368
24
1.3698
1.4472
*************************************
Current load factor: 0.6687
Iteration: 3
*************************************
Element: 1
kde =
-0.8920
0.8920
kTe =
3.0000 -4.5893
-3.0000 4.5893
Element: 2
kde =
-0.6779
0.6779
kTe =
4.5893 -5.6287
-4.5893 5.6287
Element: 3
kde =
-0.4610
0.4610
kTe =
5.6287 -6.2831
-5.6287 6.2831
25
Kf =
9.1785 -5.6287 0
-4.5893 11.2573 -6.2831
0 -5.6287 6.2831
Ff =
0.0088
0.0060
-0.0152
d=
1.0000
1.2368
1.3698
1.4472
kde =
-0.8920
0.8920
kTe =
3.0000 -4.5893
-3.0000 4.5893
Element: 2
kde =
26
-0.6779
0.6779
kTe =
4.5893 -5.6287
-4.5893 5.6287
Element: 3
kde =
-0.4610
0.4610
kTe =
5.6287 -6.2831
-5.6287 6.2831
Kf =
9.1785 -5.6287 0
-4.5893 11.2573 -6.2831
0 -5.6287 6.2831
Ff =
0.2317
0.2289
0.4307
d=
1.0000
1.4459
1.6665
1.7870
27
*************************************
Current load factor: 1.3887
Iteration: 5
*************************************
Element: 1
kde =
-2.0229
2.0229
kTe =
3.0000 -6.2720
-3.0000 6.2720
Element: 2
kde =
-1.6053
1.6053
kTe =
6.2720 -8.3317
-6.2720 8.3317
Element: 3
kde =
-1.0784
1.0784
kTe =
8.3317 -9.5802
-8.3317 9.5802
Kf =
28
12.5440 -8.3317 0
-6.2720 16.6634 -9.5802
0 -8.3317 9.5802
Ff =
0.0453
-0.0641
-0.1526
d=
1.0000
1.4537
1.6662
1.7823
*************************************
Current load factor: 1.5539
Iteration: 6
*************************************
Element: 1
kde =
-2.0722
2.0722
kTe =
3.0000 -6.3400
-3.0000 6.3400
Element: 2
kde =
-1.5537
1.5537
29
kTe =
6.3400 -8.3288
-6.3400 8.3288
Element: 3
kde =
-1.0361
1.0361
kTe =
8.3288 -9.5301
-8.3288 9.5301
Kf =
12.6799 -8.3288 0
-6.3400 16.6577 -9.5301
0 -8.3288 9.5301
Ff =
1.0e-003 *
-0.5300
0.3815
-0.1168
d=
1.0000
1.4537
1.6662
1.7823
kde =
-2.0722
2.0722
kTe =
3.0000 -6.3400
-3.0000 6.3400
Element: 2
kde =
-1.5537
1.5537
kTe =
6.3400 -8.3288
-6.3400 8.3288
Element: 3
kde =
-1.0361
1.0361
kTe =
8.3288 -9.5301
-8.3288 9.5301
Kf =
12.6799 -8.3288 0
31
Ff =
0.5175
0.5184
1.0358
d=
1.0000
1.8238
2.1592
2.3363
*************************************
Current load factor: 3.3137
Iteration: 8
*************************************
Element: 1
kde =
-5.0661
5.0661
kTe =
3.0000 -9.9784
-3.0000 9.9784
Element: 2
kde =
-4.0005
4.0005
kTe =
32
9.9784 -13.9865
-9.9784 13.9865
Element: 3
kde =
-2.6851
2.6851
kTe =
13.9865 -16.3744
-13.9865 16.3744
Kf =
19.9567 -13.9865 0
-9.9784 27.9730 -16.3744
0 -13.9865 16.3744
Ff =
0.0390
-0.2109
-0.4760
d=
1.0000
1.8346
2.1584
2.3296
*************************************
Current load factor: 3.8808
Iteration: 9
*************************************
Element: 1
33
kde =
-5.1750
5.1750
kTe =
3.0000 -10.0975
-3.0000 10.0975
Element: 2
kde =
-3.8802
3.8802
kTe =
10.0975 -13.9760
-10.0975 13.9760
Element: 3
kde =
-2.5875
2.5875
kTe =
13.9760 -16.2810
-13.9760 16.2810
Kf =
20.1950 -13.9760 0
-10.0975 27.9519 -16.2810
0 -13.9760 16.2810
34
Ff =
-0.0013
0.0009
-0.0003
d=
1.0000
1.8346
2.1584
2.3296
kde =
-5.1750
5.1750
kTe =
3.0000 -10.0975
-3.0000 10.0975
Element: 2
kde =
-3.8802
3.8802
kTe =
10.0975 -13.9760
-10.0975 13.9760
35
Element: 3
kde =
-2.5875
2.5875
kTe =
13.9760 -16.2810
-13.9760 16.2810
Kf =
20.1950 -13.9760 0
-10.0975 27.9519 -16.2810
0 -13.9760 16.2810
Ff =
0.0384
0.0407
0.0792
d=
1.0000
1.8503
2.1783
2.3515
*************************************
Current load factor: 4.0000
Iteration: 11
*************************************
Element: 1
kde =
36
-5.3347
5.3347
kTe =
3.0000 -10.2708
-3.0000 10.2708
Element: 2
kde =
-4.0012
4.0012
kTe =
10.2708 -14.2349
-10.2708 14.2349
Element: 3
kde =
-2.6675
2.6675
kTe =
14.2349 -16.5892
-14.2349 16.5892
Kf =
20.5416 -14.2349 0
-10.2708 28.4697 -16.5892
0 -14.2349 16.5892
Ff =
1.0e-003 *
37
-0.1404
-0.4119
-0.8040
d=
1.0000
1.8503
2.1783
2.3515