I: TỔNG QUAN ĐỀ TÀI: 3
1.1.Tổng quan. 3
1.2. Giới thiệu các phần mềm đã có 3
1.3. Nội dung của đề tài phần Tin Học: 4
II. LÝ THUYẾT TÍNH TOÁN: 4
1. Lý thuyết tính toán cấu kiện chịu uốn có tiết diện chữ nhật theo cường độ trên tiết diện thẳng góc. 4
1.1 Cấu kiện có tiết diện chữ nhật đặt cốt đơn. 4
1.2. Cấu kiện có tiết diện chữ nhật đặt cốt kép. 8
2.Cấu kiện chịu nén. 10
2.1. Cấu kiện chịu nén đúng tâm chữ nhật. 10
2.2. Cấu kiện chịu nén lệch tâm chữ nhật đặt cốt thép đối xứng. 10
3. Khái niệm về phương pháp phần tử hữu hạn: 13
1. Giới thiệu về phương pháp phần tử hữu hạn: 13
2. Trình tự phân tích bài toán theo phương pháp phần tử hữu hạn 14
3.Các bước thực hiện 15
III. PHÂN TÍCH VÀ THIẾT KẾ CHƯƠNG TRÌNH: 17
A. TỔNG QUAN VỀ UML: 17
1. Các biểu đồ trong UML: 18
2. Các phần tử trong mô hình: 19
3. Các mối quan hệ giữa các phần tử trong UML: 20
B, PHÂN TÍCH THIẾT KẾ: 21
1. Biểu đồ ngữ cảnh: 21
2. Những tình huống sử dụng (Biểu đồ Use Case ): 22
3. Biểu đồ lớp (Class Diagram ): 24
4. Biểu đồ tuần tự: 26
5. Biểu đồ cộng tác: 34
6. Biểu đồ trạng thái: 39
7. Biểu đồ hoạt động: 40
IV. TỔ CHỨC DỮ LIỆU: 43
1. Dữ liệu vào: 43
2. Dữ liệu trung gian và dữ liệu ra: 45
a. Dữ liệu trung gian: 45
b. Dữ liệu ra: 46
2. Các biến dùng trong chương trinh: 46
V. SƠ ĐỒ THUẬT TOÁN: 49
1. Thuật toán tổng quát của chương trình: 49
2. Thuật toán nhập dữ liệu: 50
3. Thuật toán xác định cột dầm để tính thép: 51
4. Thuật toán tính cốt thep đối xứng cho cột chịu nén lệch tâm: 53
5. Thuật toán tìm eng và s cho cột: 55
VI GIỚI THIỆU VỀ CHƯƠNG TRÌNH: 57
I.Giới thiệu. 57
II.Hướng dẫn sử dụng chương trình. 58
1. Cài đặt chương trình. 58
2. Các bước sử dụng chương trình. 58
VII. MÃ NGUỒN CHƯƠNG TRÌNH: 72
1. Chương trình con tính thép dầm chữ nhật chịu uốn: 72
1. Chương trình con tính thép đối xứng cho cột chịu nén uốn: 74
VIII. ĐÁNH GIÁ CHƯƠNG TRÌNH: 77
1. Nhận xét: 77
2. Hướng pháp triển: 77
77 trang |
Chia sẻ: huong.duong | Lượt xem: 1645 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Tính toán nội lực và cốt thép cấu kiện của khung bê tông cốt thép, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ử trong hệ toạ độ chung
- Lập [T]i ® [T]iT
- Tìm [P’ ]i = [T]iT * [P]i
- Tìm [K’]i = [T]iT * [K]i * [T]i
- Tìm [q’]i = [T]Ti * [q]i
- Lập [P’]i = [K’]i * [q’]i
Ma trận chuyển trục toạ độ [T]i
Cosa Sina 0 0 0 0
-Sina Cosa 0 0 0 0
0 0 1 0 0 0
0 0 0 Cosa Sina 0
0 0 0 -Sina Cosa 0
0 0 0 0 0 1
Từ ma trận [T] ta suy ra được ma trận [T]T.
Bước 8: Gộp các phần tử hữu hạn được phương trình cân bằng của toàn hệ trong hệ toạ độ chung.
[P]i = [K]i * [q]i
Bước 9: Khử suy biến.
Lúc này đưa điều kiện biên vào để khử suy biến ma trận [K] bằng cách bỏ hàng, bỏ cột tương ứng với số bậc tự do mà ở đó chuyển vị bằng 0.
Phương trình cân băng của toàn hệ sau khi khử suy biến:
[P*] = [K*] * [q*]
Bước 10: Giải hệ phương trình [P*] = [K*] * [q*]
Xác định ma trận chuyển vị nút của toàn hệ : [q*] = [K*] -1 * [P*]
Bước 11: Đưa kết quả chuyển vị về lại các phần tử, lúc này bài toán đã biết chuyển vị của các nút của các phần tử. Dựa vào độ cứng của phần tử sẽ xác định được nội lực của các phần tử.
III. PHÂN TÍCH VÀ THIẾT KẾ CHƯƠNG TRÌNH:
A. TỔNG QUAN VỀ UML:
Bước đầu tiên trong quá trình xây dựng một phần mềm nào đó là quá trình thiết kế chương trình hay còn gọi là quá trình phân tích bài toán và hệ thống. Quá trình phân tích nhìn chung là hệ quả của việc trả lời câu hỏi: “ Hệ thống cần phải làm gì?”. Quá trình phân tích bao gồm việc nghiên cứu lý thuyết có liên quan, tìm ra được chức năng của hệ thống và mối quan hệ giữa các phần tử trong và ngoài hệ thống.
UML là một ngôn ngữ mô hình hóa thống nhất có phần chính bao gồm các ký hiệu hình học được các phương pháp hướng đối tượng sử dụng và miêu tả các thiết kế của hệ thống. Nó là một ngôn ngữ để đặc tả trực quan hóa, xây dựng và làm tư liệu cho nhiều khía cạnh khác nhau của một hệ thống có nồng độ phần mềm cao.
Giai đoạn phân tích quan tâm đến quá trình trừu tượng hoa đầu tiên ( các lớp và các đối tượng) cũng như có chế hiện hữu trong phạm vi vấn đề. Sau khi nhà phân tích đã nhận biết được các lớp thành phần của mô hình cũng như mối quan hệ giữa chúng với nhau, các lớp cùng với các mối quan hệ đó sẽ được miêu tả bằng công cụ biểu đồ lớp ( class diagram) của UML. Sự cộng tác giữa các lớp nhằm thực hiện các Use case cũng sẽ được miêu tả nhờ vào các mô hình động ( dynamic models) của UML.
Do mô hình nhận được khi sử dụng UML để thiết kế hệ thống là hình thức hóa nên ta có thể sử dụng các công cụ phần mềm để chuyển nó sang ngôn ngữ lập trình tương ứng như Visual Basic, Visual C++, Java…Quá trình này còn có thể tiến hành theo chiều ngược lại theo nghĩa: từ mã nguồn tương ứng với ngôn ngữ lập trình cụ thể nào đó, ta có thể chuyển ngược lại thành các phần tử của mô hình. Việc chuyển từ mô hình sang mã nguồn các ngôn ngữ lập trình tương ứng gọi là kỹ thuật Forward, ngược lại việc chuyển từ mã nguồn thành các phần tử trong mô hình gọi là kỹ thuật Reserver.
UML tạo cơ sở để tự động hóa toàn bộ tiến trình phần mềm, rút ngắn thời gian xây dựng phần mềm đồng thời tăng chất lượng phần mềm.
Để có thể xây dựng nên những mô hình – những bản thiết kế phần mềm, người phát triển phần mềm ngoài việc nắm vững UML còn phải có kiến thức xây dựng mô hình đối tượng và kỹ năng về phân tích và thiết kế một hệ thống phần mềm.
UML gồm các thành phần sau đây:
1. Các biểu đồ trong UML:
Biểu đồ trong UML là một tập các ký hiệu hình học được tổ chức theo một trật tự nhất định nhằm biểu diễn hệ thống theo khía cạnh cụ thể. Biểu đồ dùng làm trực quan một hệ thống theo một quan điểm nào đó. Vậy tên biểu đồ là một thể hiện cho một hệ thống. Biểu đồ biểu diễn một cách nhìn thu gọn các phần tử làm nên hệ thống. Cùng một phần tử có thể xuất hiện trong một biểu đồ hay một số biểu đồ. Một mô hình hệ thống đặc trưng thường được biểu diễn bởi nhiều loại biểu đồ khác nhau, trong đó mỗi biểu đồ thường được tương ứng với một cách nhìn cụ thể về hệ thống.
Trong UML có các loại biểu đồ sau:
Biểu đô lớp ( Class diagram): Chứa các lớp, các giao diện, các cộng tác, các quan hệ phụ thuộc tổng quát hóa và liên kết.
Biểu đồ Use Case: gồm các actor và các use case cùng với những mối quan hệ tương tác giữa chúng để tạo nên mô hình hành vi hệ thống. Mỗi một use case ứng với một chức năng mà hệ thống cần cung cấp.
Biểu đồ trạng thái ( Statechart diagram): gồm một tập các trạng thái có thể đạt tới và các quá trình chuyển trạng thái của những đối tượng thuộc lớp khi có một sự kiện xảy ra.
Biểu đồ tuần tự ( sequence diagram): biểu diễn sự tác động qua lại giữa các đối tượng theo trình tự thời gian ta sử dụng biểu đồ tuần tự.
Biểu đồ cộng tác ( Collaboration diagram): cũng thể hiện sự tác động qua lại giữa các lớp, các đối tượng có liên quan trong kịch cảnh của hệ thống.
Biểu đồ hoạt động ( Active diagram): chỉ ra một trình tự lần lượt của các hoạt động.
Biểu đồ thành phần ( Component diagram ): chỉ ra cấu trúc vật lý của các dòng lệnh (code) theo khái niệm thành phần code.
Biểu đồ triển khai ( Deployment diagram ): chỉ ra kiến trúc vật lý của phần cứng cũng như phần mềm trong hệ thống.
2. Các phần tử trong mô hình:
Gồm:
Lớp ( class): là sự mô tả một tập các đối tượng có cùng thuộc tính, tác vụ, mối quan hệ và ngữ nghĩa, đồng thời chỉ ra cấu trúc dữ liệu và các hành vi ứng xử của một tập các đối tượng.
Đối tượng (Object): là khái niệm dùng để trừu tượng hóa một sự vật hay cái gì đó trong Thế giới thực, bao gồm cả trạng thái, các hành vi và định danh của một thực thể.
Trạng thái (State): Chỉ tình huống khi đối tượng thỏa mãn một số điều kiện, thực hiện một hành động hay chờ đợi một sự kiện nào đó xảy ra.
Tác nhân ( Actor): chỉ một người, một sự vật có tương tác với hệ thống.
Tình huống sử dụng ( use case ): là một chuỗi hành động bao gồm tất cả các biến thể của nó mà một hệ thống thực hiện sẽ đem lại kết quả có thể quan sát được là giá trị của một tác nhân.
Kịch bản: chỉ ra luồng các sự kiện trong trường hợp use case cụ thể.
Node: chỉ các đối tượng vật lý hay thiết bị có khả năng tính toán hoặc sử dụng các tài nguyên của hệ thống vào thời điểm thực thi.
Gói: dùng để nhóm một tập hợp các use case thông dụng chung lại với nhau.
Chú giải: là ký hiệu dùng để biểu diễn những chú thích hoặc những lời bình phẩm nhằm làm sáng tỏ các thông tin, ý nghĩa và vai trò của một phần tử trong mô hình.
3. Các mối quan hệ giữa các phần tử trong UML:
- Quan hệ phụ thuộc: trường hợp một lớp hoặc một thành phần có sự thay đổi thì ảnh hưởng tới lớp hoặc thành phần kia khi sử dụng nó. Ký hiệu là: --------------->
- Tổng quát hóa: mối quan hệ giữa một sự vật tổng quát và các thành phần chuyên biệt của chúng, nghĩa là các đối tượng của lớp con được sử dụng ở bất cứ nơi nào mà lớp cha xuất hiện, nhưng ngược lại thì không đúng.
Ký hiệu là:
- Quan hệ liên kết ( Association): các đối tượng của sự vật này được kết nối với các đối tượng của sự vật khác. Một lớp có quan hệ liên kết với một lớp khác thì có thể truyền thông điệp hoặc truy cập tới mọi thành phần dùng chung của lớp đó.
- Quan hệ tập hợp ( Aggregation): là một liên kết đơn giản giữa hai lớp biểu diễn mối quan hệ có cấu trúc tương đương, nghĩa là cả hai lớp về mặt khái niệm đều cùng một mức, không lớp nào quan trọng hơn lớp nào. Ký hiệu là:
B, PHÂN TÍCH THIẾT KẾ:
Trên cơ sở một vài kiến thức nho nhỏ về UML, tiến hành phân tích các yêu cầu của bài toán đặt ra sau đây:
Hệ thống ( hay còn gọi là Chương trình) tính toán nội lực và cốt thép khung BTCT là hệ thống đáp ứng được mọi nhu cầu của người làm kết cấu xung quanh vấn đề tính toán nội lực, cốt thép từ việc nhập dữ liệu, phân tích dữ liệu cũng như nội lực và đưa ra kết quả mong muốn về nội lực và cốt thép…. Ngoài ra, chương trình còn có chức năng trợ giúp (help) cho những người lần đầu tiếp xúc với hệ thống.
Ta xem xét các yêu cầu của hệ thống xung thông qua các biểu đồ UML sau đây:
1. Biểu đồ ngữ cảnh:
Hệ thống mà ta cần xây dựng tác động không ngừng với môi trường của nó. Trong giai đoạn đấu tiên của sự phân tích, có thể cho rằng hệ thống được xem xét như một hộp đen phản ứng lại các yêu cầu và những thông điệp từ môi trường. Môi trường gồm vài tác nhân. Mỗi tác nhân tương tác với hệ thống với mục đích khác nhau để trao đổi một tập hợp các thông điệp khác nhau.
Biểu đồ mức ngữ cảnh được thể hiện dưới đây cho thấy tất cả các nhân tố có tương tác với hệ thống. Hệ thống tính toán khung BTCT nói riêng cũng như một hệ thống phân tích kết cấu nói chung nhận dạng duy nhất một tác nhân: đó là người dùng hệ thống. Người dùng là tác nhân duy nhất làm việc trực tiếp với hệ thống thông qua giao diện người dùng để đạt tới mục đích của mình.
Hệ thống tính toán khung BTCT là một hệ thống trợ giúp người làm kết cấu trong quá trình tính toán. Đây là bài toán đặc thù của chuyên ngành sản xuất Xây dựng cho nên, để tương tác được với hệ thống này thì chỉ có duy nhất người sử dụng hệ thống, là người làm kết cấu hoặc kiểm tra, thẩm định kết cấu – là người phải hiểu rõ thấu đáo chuyên ngành của mình, biết được rõ bản chất của vấn đề cũng như lý thuyết có liên quan đến kết cấu nói chung và khung BTCT.
Khi công việc của người làm kết cấu đòi hỏi việc tính toán khung BTCT thì việc tiếp xúc, làm việc với hệ thống là một điều thuận lợi, giúp cho quá trình tính toán kết cấu nhanh hơn. Người làm kết cấu với tư cách là người tiếp xúc trực tiếp với hệ thống cần có những dữ liệu liên quan cần thiết cho việc giải quyết bài toán. Hệ thống yêu cầu nhập dữ liệu để thực hiện quá trình tính toán buộc người dùng phải nhập đầy đủ dữ liệu.
Công việc tính toán sẽ được thực hiện nếu người dùng có yêu cầu phân tích kết quả (phân tích nội lực). Sau khi nhận lệnh, hệ thống sẽ làm nhiệm vụ tính toán theo thuật toán đã được lập trình sẵn trong hệ thống và hiển thị kết quả tìm được theo yêu cầu cụ thể của người dùng, ví dụ như hiển thị chuyển vị, nội lực và kết quả tính thép…
Một thực tế là thông thường người làm kết cấu lại không phải là người viết lên chương trình tính toán này nên nếu những người dùng lần đầu tiên tiếp xúc với chương trình hoặc sử dụng chương trình chưa thành thạo thì người dùng cần có hướng dẫn sử dụng chương trình để tránh khỏi những thao tác dẫn đến sai kết quả. Việc tính toán kết cấu mà cho kết quả sai thì dẫn đến hậu quả rất lớn. Do vậy, người dùng sẽ có yêu cầu trợ giúp đòi hỏi hệ thống đáp ứng yêu cầu của mình. Căn cứ vào vấn đề mà người dùng đòi hỏi trợ giúp, hệ thống sẽ hiển thị sự trợ giúp tới người dùng.
2. Những tình huống sử dụng (Biểu đồ Use Case ):
Tình huống sử dụng miêu tả những hoạt động từ quan điểm của người sử dụng. Mỗi tình huống sử dụng là một cách khác nhau để sử dụng hệ thống, và mỗi tình huống sử dụng khác nhau có kết quả khác nhau khi hoàn thành. Hình vẽ dưới đây là biểu đồ Use Case cho thấy các chức năng chính của hệ thống cần xây dựng.
Hình 2.2: Biểu đồ Use Case của hệ thống.
Nhập dữ liệu vào cơ sở dữ liệu: Gồm có thao tác với tệp, định nghĩa vật liệu, tiết diện, vẽ sơ đồ kết cấu, sửa chữa... Người dùng nhập tất cả những dữ liệu có liên quan đến việc tính toán nội lực và thép, ví dụ: dữ liệu về khung, dữ liệu về vật liệu, tiết diện... trong quá trình nhập dữ liệu, toàn bộ dữ liệu sẽ được hiển thị trực quan giúp người sủ dụng kiểm soát được quá trình làm việc. Chương trình sẽ hiển thị dữ liệu ở 2 dạng: PictureBox (thể hiện sơ đồ kết cấu, ngoại lực... ) và các FORM (thể hiện các thông tin khác)
Tính toán: Hệ thống gồm các modun tính toán làm nhiệm vụ tính toán các đại lượng cần thiết như nội lực, chuyển vị, tính thép…khi người dùng có yêu cầu.
Đưa ra kết quả: Hệ thống phải hiển thị được dữ liệu đúng như người dùng yêu cầu.
Hiển thị trợ giúp: Hệ thống phải hiển thị được phần có liên quan đến những thắc mắc của người dùng trong phần trợ giúp của hệ thống.
Hiển thị dữ liệu đưa vào: Hệ thống phải hiển thị dữ liệu mà người dùng đã nhập vào trước đó, việc này cần thiết khi người dùng kiểm tra lại dữ liệu đã nhập.
3. Biểu đồ lớp (Class Diagram ):
Biểu đồ lớp nói lên quan hệ giữa các lớp. Quan hệ giữa các lớp có thể là quan hệ nối kết hoặc quan hệ phụ thuộc,chuyên biệt hóa hay đóng gói.
Các mối quan hệ đó đều được thể hiện đi kèm với cấu trúc bên trong của các lớp theo khái niệm thuộc tính và thủ tục.
a. FORM:
b. Kết qủa:
c. Module:
4. Biểu đồ tuần tự:
Biểu đồ tuần tự mô tả những gì sẽ xảy ra khi người làm kết cấu làm việc với hệ thống. Biểu đồ này miêu tả đầy đủ các khả năng sẽ xảy ra trong quá trình làm việc của người dùng. Trên thực tế, có thể sẽ không diễn ra hết các quá trình như dưới đây.
Người dùng nhập vào dữ liệu khi làm việc với hệ thống. Hệ thống sẽ lưu trữ những thông tin này vào các biến của hệ thống. Người dùng có thể chạy chương trình ngay khi đã nhập xong dữ liệu của bài toán hoặc có thể chạy chương trình sau đó bằng cách lựa chọn chức năng lưu tệp của chương trình. Nếu người dùng chạy chương trình ngay thì một yêu cầu đặt ra là phải lưu tệp. Do vậy, sau khi lưu tệp, các chức năng tính toán phân tích cũng như hiển thị kết quả mới được kích hoạt. Người dùng có thể lưu tệp rồi thoát khỏi ứng dụng nếu cần.
Sau khi chạy chương trình, người dùng yêu cầu hiển thị kết quả, hệ thống sẽ hiển thị kết quả theo đúng mong muốn của người dùng thông qua menu yêu cầu.
Biểu đồ tuần tự khi người dùng thao tác với tệp.
Biểu đồ tuần tự khi người dùng thao tac hiển thị.
Biểu đồ tuần tự khi người dùng thao tac định nghĩa vật liệu..
Biểu đồ tuần tự khi người dùng thao tac định nghĩa tiết diện..
Biểu đồ tuần tự khi người dùng thao tac định nghĩa tải trọng.
Biểu đồ tuần tự khi người dùng thao tac gán tiết diện..
Biểu đồ tuần tự khi người dùng thao tac xem kết quả.
5. Biểu đồ cộng tác:
Như đã trình bày ở trên, biểu đồ cộng tác cũng giống như biểu đồ tuần tự, thể hiện sự tác động qua lại giữa các lớp, các đối tượng có liên qua trong kịch cảnh hệ thống. Tuy nhiên, biểu đồ cộng tác không thể hiện sự cộng tác giữa các đối tượng theo trình tự thời gian mà tập trung thể hiện sự tương tác và mối quan hệ của từng cặp đối tượng trong kịch bản và ưu điểm của nó là có thể chỉ ra các chi tiết về các lệnh gọi hàm, thủ tục.
Với công cụ hỗ trợ cho ngôn ngữ UML, phần mềm Rational Rose cung cấp cho người dùng một biểu đồ cộng tác từ biểu đồ tuần tự với phím F5. Do vậy mà ta có biểu đồ cộng tác sau đây:
Biểu đồ cộng tác của hệ thống khi người dùng có yêu cầu về tệp.
Biểu đồ cộng tác của hệ thống khi người dùng có yêu cầu hiển thị.
Biểu đồ cộng tác của hệ thống khi người dùng có yêu cầu định nghĩa vật liêu.
Biểu đồ cộng tác của hệ thống khi người dùng có yêu cầu định nghĩa tiết diện.
Biểu đồ cộng tác của hệ thống khi người dùng có yêu cầu định nghĩa tải trọng.
Biểu đồ cộng tác của hệ thống khi người dùng có yêu cầu gán tiết diện.
Biểu đồ cộng tác của hệ thống khi người dùng có yêu cầu xem kết quả.
Biểu đồ cộng tác của hệ thống khi người dùng có yêu cầu trợ giúp.
6. Biểu đồ trạng thái:
Biểu đồ trạng thái mô tả trạng thái của các đối tượng trong hệ thống trong quá trình hoạt động. Như đã nêu ở trên, hệ thống gồm 19 đối tượng trong đó gồm có 9 đối tượng form dùng để nhập dữ liệu và hiển thị kêt quả, 4 đối tượng dùng để chứa dữ liệu vào ra chương trình và 6 đối tượng Modun chứa các mô đun tính toán nội lực, thép và vẽ.
Xét đối tượng khung, đại diện cho các đối tượng lưu dữ liệu do người dùng nhập vào.
Hình 2.6: Biểu đồ trạng thái của đối tượng Khung.
Ban đầu khi ứng dụng được khởi động, đối tượng ở trạng thái rỗng vì người dùng chưa nhập dữ liệu liên quan. Sau khi người dùng nhập dữ liệu hoặc gọi tệp đã có sẵn trên đĩa, đối tượng chuyển sạng trạng thái chứa dữ liệu. Lúc này các trường của đối tượng đã mang các giá trị cụ thể và phục vụ cho quá trình chạy chương trình. Và trạng thái này sẽ duy trì cho đến khi người dùng kết thúc ứng dụng. Trong quá trình thao tác với hệ thống, người dùng có thể tạo mới một tệp khác ứng với một trường hợp khác thì đối tượng lại quay trở về trạng thái rỗng như lúc ứng dụng được khởi động và lặp lại những trạng thái tất yếu của nó.
Ta lại xét đối tượng kết quả của chương trình.
Từ khi ứng dụng được khởi động cho đến khi người dùng nhập dữ liệu cần thiết cho bài toán thì Nội lực và cốt thép vẫn ở trạng thái rỗng. Trạng thái của đối tượng này chỉ thay đổi, nghĩa là sang trạng thái Chứa dữ liệu khi người dùng có yêu cầu hệ thống phân tích nội lực và tính thép. Khi ứng dụng kết thúc hoặc người dùng tạo tệp mới thì đối tượng này cũng trở về trạng thái rỗng.
7. Biểu đồ hoạt động:
Biểu đồ hoạt động mô tả các hoạt động của hệ thống khi người dùng làm việc với hệ thống.
Khi ứng dụng được khởi động thì form chính của chương trình sẽ được hiển thị tới người dùng. Đây là giao diện chính mà hệ thống sẽ làm việc với người dùng trong suốt quá trình hệ thống làm việc. Người dùng sẽ thực hiện các thao tác cũng như yêu cầu của mình thông qua các menu thuộc form chính này.
Khi form chính được khởi động, người dùng có thể tiến hành các thao tác sau đây:
- Nhập dữ liệu: khi người dùng muốn nhập dữ liệu vào cho bài toán tính thì người dùng kích hoạt menu. Đối với bài toán tính toán nội lực và cốt thép trong khung BTCT thì phần nhập dữ liệu dưới dạng hình vẽ như trong SAP hay ETABS rất quan trọng vì nó thể hiện trực quan cho người dùng thấy được phần lớn công việc, người dùng có thể vẽ thanh, nút... Sau khi nhập xong hình vẽ hay còn gọi là sơ đồ hình học của khung người sử dụng có thể tiến hành khai váo các dữ liệu khác của khung. Căn cứ vào loại dữ liệu (Tải trọng tập trung, tải trọng vào nút, tiết diện....) mà hệ thống sẽ hiển thị form nhập dữ liệu tương ứng. Trong quá trình nhập dữ liệu này, hệ thống luôn kiểm tra sự hợp lệ của dữ liệu và sẽ có thông báo tới người dùng trong trường hợp họ nhập sai kiểu dữ liệu. Sau khi form nhập dữ liệu được hiển thị, người dùng có hai lựa chọn: nhập dữ liệu và huỷ bỏ. Khi dữ liệu được nhập đầy đủ và đúng kiểu dữ liệu thì người dùng mới có thể lựa chọn nhập dữ liệu, nhưng lựa chọn Huỷ bỏ có thể lựa chọn bất kỳ lúc nào và việc nhập cũng như việc lưu dữ liệu kết thúc. Khi đó, người dùng lại quay trở về với form chính của chương trình.
-Mở tệp có sẵn: Người dùng có thể không nhập dữ liệu thông qua chức năng nhập dữ liệu của chương trình mà gọi một tệp có sẵn, trong đó đã lưu đầy đủ các thông tin cần thiết. Khi đó, chương trình sẽ hiển thị hộp thoại mở tệp để người dùng có thể lựa chọn 1 tệp có sẵn trên đĩa.Với hộp thoại này, người dùng có thể chọn để mở một tệp có sẵn hoặc cũng có thể huỷ bỏ việc mở tệp. Nếu công việc bị huỷ bỏ thì người dùng sẽ quay trở về với form chính của chương trình mà chưa có dữ liệu nào được nhập. Nếu người dùng mở 1 tệp có sẵn thì biến của chương trình sẽ được gán bởi các giá trị lưu trong tệp đó.
-Gọi mới: Người dùng muốn tạo một tệp mới cho từng bài toán riêng biệt thì được hệ thống hỗ trợ bởi chức năng gọi mới. Khi chức năng này được kích hoạt thì hệ thống sẽ kiểm tra xem trước đó người dùng đã nhập vào dữ liệu chưa. Nếu trước đó, người dùng chưa nhập dữ liệu vào thì chương trình sẽ hiển thị form chính như lúc người dùng khởi động chương trình, nghĩa là chưa có biến nào được gán giá trị. Nếu trước đó, người dùng đã nhập dữ liệu( hệ thống kiểm tra biến mang giá trị) thì một thông báo sẽ được hiển thị hỏi người dùng có muốn ghi lại dữ liệu không. Nếu lựa chọn là không thì form chính được gọi và các biến của hệ thống được giải phóng. Nếu lựa chọn là có thì hộp thoại ghi tệp xuất hiện và người dùng có thể ghi dữ liệu hiện hành vào một tệp trên đĩa.
Khi dữ liệu của chương trình chưa được nhập thì các chức năng như phân tích nội lực và hiển thị kết quả chưa được kích hoạt. Các chức năng này chỉ được hiển thị khi người dùng đã nhập đầy đủ dữ liệu vào chương trình. Khi người dùng nhập dữ liệu vào và kích hoạt chức năng phân tích nội lực. Hệ thống sẽ kiểm tra xem các biến đã được lưu ra tệp chưa, nếu đã được lưu thì hệ thống thực hiện chức năng tính toán theo thuật toán đã được lập trình sẵn. Nếu không, hệ thống yêu cầu người dùng phải lưu lại tệp chương trình rồi mới thực hiện quá trình tính toán.
Khi quá trình tính toán hoàn thành thì các chức năng xem kết quả mới được hiển thị. Khi người dùng gọi chức năng xem kết quả, tuỳ vào kết quả hiển thị mà hệ thống sẽ đưa ra form hiển thị. Người dùng có thể đóng form xem kết quả để trở về chương trình.
Cuối cùng là kết thúc ứng dụng. Người dùng muốn kết thúc ứng dụng sẽ được hộp thoại xác nhận có muốn kết thúc ứng dụng hay không. Nếu lựa chọn là có thì ứng dụng được đóng lại, nếu không thì trở về form chính của chương trình ở trạng thái trước đó.
IV. TỔ CHỨC DỮ LIỆU:
Với yêu cầu bài toán đặt ra ở trên và phương hướng giải quyết bài toán, cách thiết kế chương trình đã nêu chọn ngôn ngữ lập trình Visual Basic 6.0 (VB6.0) – phiên bản hiệu quả nhất trong bộ các ngôn ngữ lập trình Visual Studio, dùng để phát triển những ứng dụng trên nền Windows 32bits làm công cụ thể hiện chương trình.
Trong khi các ngôn ngữ lập trình khác như Visual C++ và Visual J++ là ngôn ngữ lập trình hướng đối tượng thì VB6.0 là ngôn ngữ lập trình có cấu trúc. Với ngôn ngữ VB6.0 ta sẽ dễ dàng pháp triển ứng dụng quản lý, hầu hết các giao diện đều trực quan, dễ thiết kế, chúng cho phép thiết kế các Form hay các Control một các tiện lợi. Ngoài ra, VB6.0 được Microsoft hỗ trợ mạnh trong các sản phẩm của họ như Micrsoft Excel, Microsoft Access…
Trong chương trình sử dụng các kiểu dữ liệu phức tạp đã nêu ở trên nên sử dụng kiểu bản ghi Record để mô tả các số liệu.
1. Dữ liệu vào:
Là tất cả những dữ liệu cần thiết mà người dùng cần định nghĩa và nhập vào cho chương trình hiểu phục vụ cho việc tính toán nội lực và cốt thép trong từng cấu kiện Bê tông cốt thép như: vật liệu sẽ sử dụng, laọi thép, loại bê tông, tiết diện dầm cột... Mỗi dữ liệu nhập vào là một bản ghi gồm nhiều trường như: Vật liệu bao gồm có tên, môdun đàn hồi, trọng lương riêng, cường độ... Những kiểu bản ghi đó được thể hiện bên dưới với đầy đủ các trường kèm theo dạng dữ liệu( kiểu số nguyên, kiểu số thực, kiểu xâu ký tự hay là một bản ghi khác. Các kiểu dữ liệu được trình bày bằng ngôn ngữ sẽ dùng để thiết kế chương trình là: VB 6.0
Public Type Vatlieu
Ten As String 'Ten vat lieu
e As Double 'Modudan hoi cua vat lieu
M As Double 'Trong luong rieng cua vat lieu
Rn As Double 'Cuong do chiu nen cua vat lieu
Rk As Double 'Cuong do chiu keo cua vat lieu
End Type
Public Type Thep
Ran As Double 'Cuong do chiu nen cua thep
Rak As Double 'Cuong do chiu keo cua thep
Et As Double 'Modul dan hoi cua thep
End Type
Public Type Tietdien
Ten As String 'Ten tiet dien
Hinhdang As String 'Hinh dang tiet dien
Vatlieu As String 'vat lieu lam tiet dien
EF As Double 'Do cung keo nen
EJ As Double 'Do cung chon uon
H As Double 'Kich thuoc tiet dien
L As Double 'Kich thuoc tiet dien
DB As Double 'Kich thuoc tiet dien
HB As Double 'Kich thuoc tiet dien
End Type
Public Type TD 'Tiet dien dung de tinh thep
Ten As String 'Ten
Rn As Double 'Cuong do chiu nen cua BT
Rk As Double 'Cuong do chiu keo cu BT
Eb As Double 'Modu dan hoi cua BT
Ran As Double 'Cuong do chiu nen cua Thep
Rak As Double 'Cuong do chiu keo cua Thep
Et As Double 'Modun dan hoi cua Thep
B As Double 'Be rong tiet dien
H As Double 'Chieu cao tiet dien
abv As Double 'Lop bao ve
End Type
Public Type TaiHT
TS As Double 'Ty so b/l
GT As Double 'Gia tri tai
End Type
Public Type TaiTT
XF As Double 'Tai theo phuong X
YF As Double 'Tai theo phuong Y
ZM As Double 'Moment theo truc Z
End Type
Public Type TaiPB
VG As Double 'Tai vuong goc
DT As Double 'Tai doc thanh
End Type
Public Type TAI
Ten As String 'Ten tai
Ktai As String 'Kieu tai
hs As Double 'He so cua tai
TTT() As TaiTT 'Mang tai tap trung
TPBD() As TaiPB 'Mang tai phan bo deu
THT() As TaiHT 'Mang tai phan bo hinh thang
End Type
Public Type TH 'To hop (Dang to hop)
Ten As String 'Ten cua to hop
KieuTH As String 'Kieu cua to hop
Stth As Long 'So tai trong to hop
sht() As String 'Mang ten cac tai trong to hop
hs() As Double 'Mang he so cac tai to hop
End Type
2. Dữ liệu trung gian và dữ liệu ra:
a. Dữ liệu trung gian:
Là những bản ghi chứa các biến dữ liệu trung gian được sử dụng trong quá trình tính toán để đưa ra kết quả cuối cùng của bài toán. Người sử dụng chương trình hoàn toàn không quan tâm đến những dữ liệu này vì nó không phải là kết quả mà người sử dụng cần đến. Những biến này được sinh ra, thay đổi, xóa đi trong quá trình chương trình thi hành tùy theo dữ liệu về khung, về vật liệu, tiết diện... mà người sử dụng đưa vào chương trình.
Ví dụ: Ma trận (6,6) hay ma trận (6,1) là những ma trận chứa thông tin về khung để giải các hệ phương trình nhằm mục đích cuối cùng là tìm ra nội lực trong khung.
Sau đây là các kiểu dữ liệu trung gian chính sẽ sử dụng trong chương trình.
Public Type MT66 'Ma tran (6,6)
MT(1 To 6, 1 To 6) As Double
End Type
Public Type MT61 'Ma tran(6,1)
MT(1 To 6) As Double
End Type
b. Dữ liệu ra:
Là các bản ghi lưu dữ biến kết quả mà người dùng cần đến, là mục đích mà chương trình tạo ra. Dữ liệu ra là nội lực trong các dầm hay cột của khung, là kết quả tổ hợp nội lực từ các trường hợp tải mà người sử sụng đưa vào và là diện tích cốt thép trong từng cấu kiện. Người sử dụng sẽ
Các file đính kèm theo tài liệu này:
- DAN088.doc