简洁的想法

仁爱、喜乐、和平、忍耐、恩慈、良善、信实、温柔、节制

用matlab求应力Sigma

| Comments

工字钢沿Z轴向下,
Lz是nx1的Array
Mz是nx2的Vector, Mz(:,1)是x向, Mz(:,2)是y向:

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
    % Sigma of 9 points
    %     4 ___              ___ 3  
    %       \  \             \  \
    %        \  \8__________7_\  \ 
    %  Y+/____\_________9         \
    %    \     \   ______\_______  \
    %           \  \ 5    \     6\  \
    %            \__\      \      \__\
    %           1          _\/         2
    %                        X
    %
    % 9个点坐标
    Points = [...
             B,    H/2;
             B,   -H/2;
            -B,   -H/2;
            -B,    H/2;
             t/2,  h/2;
             t/2, -h/2;
            -t/2, -h/2;
            -t/2,  h/2;
             0,    0;
          ];
    Sigma = ...
      repmat(Lz / area,1,9) ...
    + repmat(Mz(:,1),1,9) ...
        .* repmat(Points(:,2),1,length(Mz))' / obj.smaIx ...
    - repmat(Mz(:,2),1,9) ...
        .* repmat(Points(:,1),1,length(Mz))' / obj.smaIy;

下面附带是个实验:

1
2
3
         a =repmat([1:20]',1,9);
         b =repmat([1:9]',1,20);
         a .* b'

Comments