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

Contents of /trunk/models/johnpye/beam4.a4c

Parent Directory Parent Directory | Revision Log Revision Log


Revision 844 - (show annotations) (download) (as text)
Mon Sep 11 08:31:21 2006 UTC (17 years, 10 months ago) by johnpye
File MIME type: text/x-ascend
File size: 1640 byte(s)
Bumped version to 0.9.5.98.
Added support for 'setSymbolValue' from C++ interface, and allow symbol variables to be edited via the PyGTK GUI.
Added some limited data about structural analysis of beams in johnpye/aiscbeams.a4c.
Updated johnpye/beam4.a4c to use this data.
Added some currency conversions to measure.a4l.
Added some units related to Mechanics of Solids to atoms.a4l.
1 REQUIRE "johnpye/beam.a4c";
2 REQUIRE "johnpye/aiscbeams.a4c";
3
4 (*
5 Model of a beam with four supports and one central load.
6
7 Uses superposition of deflections to overcome force indeterminancy.
8 *)
9 MODEL beam4;
10 n IS_A integer_constant;
11 n :== 3; (* five superpositions for the four supports and the applied load *)
12
13 E IS_A youngs_modulus;
14 I IS_A second_moment_of_area;
15 L IS_A distance;
16 c IS_A distance; (* max distance from neutral axis *)
17 Ag IS_A area;
18
19 aisc IS_A aiscbeams;
20
21 designation IS_A symbol;
22
23 S IS_A beam_superposition(n,E,I,L);
24
25 P ALIASES S.B[2].P;
26 a ALIASES S.B[2 ].a;
27 x2 ALIASES S.B[1].a;
28 x3 ALIASES S.B[3].a;
29
30 v ALIASES S.v[2];
31
32 R1 ALIASES S.R1;
33 R2 ALIASES S.B[1].P;
34 R3 ALIASES S.B[3].P;
35 R4 ALIASES S.R2;
36
37 M IS_A moment;
38 M + R3*(S.B[3].a - a) + R4*(L-a) = 0;
39
40 sigma_max IS_A stress;
41 sigma_max = M*c/I;
42 tau_max IS_A stress;
43 tau_max = sigma_max / 2; (* no shear here at point of max bending *)
44
45 METHODS
46 METHOD specify;
47 FIX E,I,L,c,Ag;
48 FIX S.B[1,3].a;
49 FIX P, a;
50 FIX S.v[1,3];
51 END specify;
52
53 METHOD bound_self;
54 L.upper_bound := 500 {m};
55 L.lower_bound := 0 {m};
56 RUN S.bound_self;
57 END bound_self;
58
59 METHOD values;
60 (* beam properties *)
61 E := 200 {GPa};
62 designation := '150UB18.0';
63 I := aisc.Ix[designation];
64 c := aisc.d[designation] / 2;
65 Ag := aisc.Ag[designation];
66
67 L := 9 {m};
68
69 (* load *)
70 P := 10 {kN};
71 a := 4.5 {m};
72
73 (* locations of supports *)
74 S.B[1].a := 3 {m};
75 S.B[3].a := 6 {m};
76
77 (* deflections at supports *)
78 FOR i IN [1,3] DO
79 S.v[i] := 0 {m};
80 END FOR;
81
82 END values;
83
84 METHOD on_load;
85 RUN reset; RUN bound_self;
86 RUN values;
87 END on_load;
88
89 END beam4;

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