/[ascend]/trunk/models/johnpye/columnbuckling.a4c
ViewVC logotype

Annotation of /trunk/models/johnpye/columnbuckling.a4c

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1561 - (hide annotations) (download) (as text)
Mon Jul 30 07:35:58 2007 UTC (12 years, 4 months ago) by jpye
File MIME type: text/x-ascend
File size: 1658 byte(s)
Added kgf and tonnef as measures (these are not SI units).
Added 'columnbuckling' formula for buckling of an eccentrically loaded
column using the secant formula.

1 jpye 1561 REQUIRE "johnpye/section.a4c";
2    
3     (*
4     we will just go ahead and assume that the 'y' direction is the buckling
5     direction. TODO: add conditional statements to check that.
6     *)
7     MODEL columnbuckling(
8     S WILL_BE section;
9     );
10     P, P_design IS_A force;
11     A ALIASES S.A;
12    
13     I_y ALIASES S.I_y;
14     I_z ALIASES S.I_z;
15    
16     I_min IS_A second_moment_of_area;
17     I_min = I_y;
18    
19     y_min ALIASES S.y_min;
20     y_max ALIASES S.y_max;
21    
22     c IS_A distance;
23     (* c = MAX(abs(y_min),abs(y_max)) *)
24     c = abs(y_max) + 0.5*(abs(y_min) - abs(y_max) + abs(abs(y_min)-abs(y_max)));
25    
26     (* radius of gyration and comes from minimum moment of inertia *)
27     r IS_A distance;
28     r = sqrt(I_min / A);
29    
30     (* load eccentricity *)
31     e IS_A distance;
32    
33     L IS_A distance;
34    
35     sigma_max IS_A stress;
36     sigma_max = P/A * (1 + e * c / r^2 / cos( L_on_r * sqrt( P / 4 / E / A )));
37    
38     (* Young's modulus *)
39     E IS_A youngs_modulus;
40    
41     (* factor of safety *)
42     n IS_A factor;
43    
44     P = n * P_design;
45    
46     (* slenderness *)
47     L_on_r IS_A factor;
48     L_on_r = L / r;
49    
50     END columnbuckling;
51    
52     (*
53     Example of a column buckling problem: solving for the design load
54     given a particular column design and factor of safety.
55     *)
56     MODEL columnbuckling_test;
57    
58     r IS_A distance;
59     t IS_A distance;
60     S IS_A tubular_section(r,t);
61     C IS_A columnbuckling(S);
62    
63     e ALIASES C.e;
64     P ALIASES C.P;
65     L ALIASES C.L;
66     E ALIASES C.E;
67     A ALIASES C.A;
68     n ALIASES C.n;
69     L_on_r ALIASES C.L_on_r;
70     P_design ALIASES C.P_design;
71     sigma_max ALIASES C.sigma_max;
72    
73     METHODS
74     METHOD on_load;
75     FIX C.E; C.E := 210 {GPa};
76     FIX e; e := 3 {cm};
77     FIX r; r := 45 {mm};
78     FIX t; t := 4 {mm};
79     FIX P; P := 1 {tonnef};
80     FIX L; L := 4 {m};
81     FIX n; n := 2;
82     END on_load;
83     END columnbuckling_test;
84    
85    

john.pye@anu.edu.au
ViewVC Help
Powered by ViewVC 1.1.22