ĐỀ tài nckh cẤp trƯỜ - khcn. · pdf filetrong thập kỷ qua, cuộc...

48
TRƯỜNG ĐẠI HC HÀNG HI VIT NAM KHOA CÔNG NGHTHÔNG TIN THUYT MINH ĐỀ TÀI NCKH CP TRƯỜNG ĐỀ TÀI NG DNG GRID COMPUTING KHAI THÁC NGUN TÀI NGUYÊN NHÀN RI TRÊN HTHNG MNG MÁY TÍNH Chnhiệm đề tài: NGUYN DUY TRƯỜNG GIANG Thành viên tham gia: TRẦN VĂN TUYN Hi Phòng, tháng 4/2016

Upload: nguyenlien

Post on 06-Feb-2018

216 views

Category:

Documents


0 download

TRANSCRIPT

TRƯỜNG ĐẠI HỌC HÀNG HẢI VIỆT NAM

KHOA CÔNG NGHỆ THÔNG TIN

THUYẾT MINH

ĐỀ TÀI NCKH CẤP TRƯỜNG

ĐỀ TÀI

ỨNG DỤNG GRID COMPUTING KHAI THÁC NGUỒN TÀI

NGUYÊN NHÀN RỖI TRÊN HỆ THỐNG MẠNG MÁY TÍNH

Chủ nhiệm đề tài: NGUYỄN DUY TRƯỜNG GIANG

Thành viên tham gia: TRẦN VĂN TUYỀN

Hải Phòng, tháng 4/2016

Đề tài nghiên cứu khoa học

i

MỤC LỤC

MỞ ĐẦU ............................................................................................................... 1

1. Tính cấp thiết của vấn đề nghiên cứu ............................................................ 1

2. Các thách thức đối với lĩnh vực nghiên cứu .................................................. 3

3. Mục tiêu, đối tượng, phạm vi nghiên cứu ...................................................... 3

4. Phương pháp nghiên cứu, kết cấu của công trình nghiên cứu ....................... 4

5. Kết quả đạt được của đề tài ............................................................................ 4

CHƯƠNG I: CƠ SỞ LÝ THUYẾT ...................................................................... 5

1.1. Một số khái niệm cơ bản ............................................................................. 5

1.2. Các tính năng của tính toán lưới ................................................................. 6

1.3. Mô hình, nền tảng của tính toán lưới .......................................................... 7

1.4. Nền tảng của tính toán lưới ......................................................................... 7

1.4.1. Tính toán lưới là gì và hoạt động như thế nào? .................................... 7

1.4.2. Mốt số thành phần cơ trong mô hình tính toán lưới ............................. 9

1.4.3. Các lợi ích của tính toán lưới .............................................................. 10

CHƯƠNG II: PHÂN TÍCH VÀ XÂY DỰNG HỆ THỐNG .............................. 11

2.1. Tổng quan về hệ thống được xây dựng .................................................... 11

2.2. Cơ sở dữ liệu được sử dụng trong hệ thống .............................................. 13

CHƯƠNG III: TRIỂN KHAI HỆ THỐNG ........................................................ 15

3.1. Chương trình Anthill ................................................................................. 15

3.2. Yêu cầu cài đặt thệ thống .......................................................................... 15

3.3. Cài đặt và chạy phần mềm trên máy chủ .................................................. 15

3.4. Cài đặt và chạy phần mềm trên máy trạm ................................................ 20

3.5. Thông tin chạy chương trình ..................................................................... 26

Đề tài nghiên cứu khoa học

ii

KẾT LUẬN ......................................................................................................... 27

TÀI LIỆU THAM KHẢO ................................................................................... 28

PHỤ LỤC ............................................................................................................ 29

1. Chương trình đơn giản để test trên ANTHILL .......................................... 29

2. Chương trình chạy trên ngôn ngữ FlexPde ................................................ 29

3. Chương trình chạy trên ngôn ngữ ANSYS ................................................ 34

4. Chương trình sinh tập mẫu để chạy trên ANSYS...................................... 42

Đề tài nghiên cứu khoa học

iii

DANH SÁCH HÌNH ẢNH

Hình 1.1. Cấu trúc của hệ thống tính toán lưới ...................................................... 8

Hình 1.2. Mô hình tính toán lưới dựa trên Internet ................................................ 8

Hình 1.3. Minh họa một hệ thống điện toán mạng lưới ......................................... 9

Hình 2.1. Giao diện chính của chương trình AntHill ............................................. 12

Hình 2.2. Thời gian thực hiện của hệ thống giải một bài toán cụ thể .................... 13

Hình 2.3. Cơ sở dữ liệu của hệ thống ..................................................................... 13

Hình 2.4. Một số bảng dùng trong hệ thống .......................................................... 14

Hình 3.1. Giao diện server khởi tạo thành công .................................................... 16

Hình 3.2. Giao diện AntHill chạy thành công ........................................................ 16

Hình 3.3. Giao diện đăng nhập vào phần mềm trên máy chủ ................................ 17

Hình 3.4. Giao diện đăng ký một tài khoản mới vào phần mềm trên máy chủ ..... 17

Hình 3.5. Giao diện tải chương trình lên máy chủ ................................................. 17

Hình 3.6. Giao diện tải thành công chương trình ................................................... 18

Hình 3.7. Giao diện cập nhật, sửa, xóa .................................................................. 18

Hình 3.8. Kết quả giải quyết một nhiệm vụ ........................................................... 19

Hình 3.9. Thời gian thực hiện trung bình của CPU ............................................... 19

Hình 3.10. Thời gian thực hiện trung bình của mạng ............................................ 20

Hình 3.11. Thời gian trung bình trên tổng thời gian thực hiện .............................. 20

Hình 3.12. Giao diện tải chương trình trên máy chủ ............................................. 21

Hình 3.13. Giao diện bắt đầu cài đặt phần mềm trên máy trạm ............................ 21

Hình 3.14. Giao diện về các nội dung sẽ cài đặt .................................................... 22

Hình 3.15. Giao diện thiết lập đường dẫn trên máy trạm ...................................... 22

Hình 3.16. Lựa chọn vị trí xuất hiện của chương trình .......................................... 23

Hình 3.17. Lựa chọn xuất hiện trên màn hình ........................................................ 23

Hình 3.18. Tiến hành cài đặt .................................................................................. 24

Hình 3.19. Cài đặt hệ thống ................................................................................... 24

Hình 3.20. Kết thúc cài đặt phần mềm trên máy trạm ........................................... 25

Hình 3.21. Cấu hình máy trạm ............................................................................... 25

Hình 3.22. Log file .................................................................................................. 26

Đề tài nghiên cứu khoa học

iv

DANH SÁCH THUẬT NGỮ, CHỮ VIẾT TẮT

Chữ viết tắt Trang

CERN - tổ chức Châu âu về nghiên cứu hạt nhân ................................................. 2

ESA - cơ quan vũ trụ Châu âu ................................................................................. 2

VO - Virtual Organization....................................................................................... 7

ĐTML - Điện toán mạng lưới ................................................................................. 7

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 1

MỞ ĐẦU

1. Tính cấp thiết của vấn đề nghiên cứu

Trong vài năm trở lại đây tính toán phân tán đã phát triển mạnh mẽ, mở ra

các giải pháp mới cho các ứng dụng đòi hỏi khả năng tính toán lớn. Tính toán

phân tán có thể được sử dụng cho các bài toán nghiên cứu về cơ học, vật lý, điện

tử… và xuất phát từ nhu cầu thực tế của con người.

Các tiến bộ liên tục trong nghiên cứu khoa học tự giải thích về nhu cầu vô

cùng to lớn đối với sức mạnh tính toán. Mặt khác, một trong những kết quả của

tiến bộ khoa học là sự sẵn có của nhiều hơn và mạnh hơn các nền tảng máy tính.

Ngày nay, hướng nghiên cứu về tính toán phân tán đóng một vai trò quan trọng

trong việc giải các bài toán khoa học kỹ thuật đòi hỏi thời gian tính toán lớn.

Thực hiện được điều này sẽ giảm đáng kể các chi phí để trang bị các siêu máy

tính phục vụ công việc tính toán. Việc tính toán phân tán cũng giải quyết được

các hoạt động khoa học đối với các chủ thể ở xa thông qua hệ thống mạng máy

tính.

Với tính toán phân tán, hạ tầng công nghệ thông tin là vấn đề cốt lõi của

hệ thống. Trong thập kỷ qua, cuộc cách mạng Internet dẫn đến sự bùng nổ về

các ứng dụng web. Dựa trên nền web có thể xây dựng được ứng dụng xử lý phân

tán. Do đó, việc tận dụng nền web mở ra những quan điểm mới trong quá trình

tính toán phân tán để ứng dụng giải quyết các bài toán khoa học, đây là một cách

tiếp cận tự nhiên nhất để theo đuổi một mục tiêu tính toán phân tán.

Công nghệ tính toán phân tán cho phép sử dụng mạng máy tính như một

công cụ tính toán, phân nhóm hoặc kết nối một loạt các tài nguyên có khả năng

phân phối trên một khu vực địa lý rộng lớn, bao gồm cả siêu máy tính, hệ thống

lưu trữ, nguồn dữ liệu, các thiết bị phần cứng, và sử dụng chúng như là một tài

nguyên thống nhất. Mở đầu cho quá trình này là dự án liên kết các trang web với

nhau và bây giờ đã phát triển vượt xa mục đích ban đầu của nó, mở ra một kịch

bản mới cho việc hợp tác, khai thác dữ liệu, giải các bài toán khoa học lớn và

tính toán hiệu năng cao sử dụng các siêu dữ liệu.

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 2

Các ứng dụng tính toán phân tán trực tuyến cho phép họ chia sẻ tài

nguyên từ xa, thay đổi và sử dụng chúng một cách hiệu quả nhất. Trong bối

cảnh này, một mạng lưới có thể được xem như là một môi trường tính toán toàn

cầu, nơi mà hệ thống phân tán có thể được tạo ra và thực thi các yêu cầu. Tính

linh hoạt của lưới làm cho hệ thống này linh động và cấu hình. Thông qua mạng

lưới, các nhà nghiên cứu có thể nhanh chóng thay đổi các yêu cầu của mình

nhằm thích ứng với nhu cầu giải quyết cụ thể theo từng thời điểm cũng như tận

dụng hợp lý những thay đổi của hệ thống, cơ sở hạ tầng và nguồn lực.

Khai thác dữ liệu trên hệ thống cũng quan trọng đặt biệt là khi xử lý lượng

lớn dữ liệu thì việc khai thác từ các trang web từ xa là hết sức cần thiết. Một số

lĩnh vực nghiên cứu, chẳng hạn như phân tích khí hậu và nghiên cứu sinh học,

yêu cầu lưu trữ và truy cập dữ liệu lên đến terabyte hoặc petabyte. Trong những

trường hợp này, dữ liệu có thể phân bố trên một số trang web và sau đó khai

thác để đưa đến một kết quả thống nhất. Đôi khi hệ thống cũng phải tạo ra các

bản sao nhằm cải thiện hiệu suất xử lý và tăng cường độ tin cậy. Dịch vụ quản lý

dữ liệu phân tán và sao lưu cũng hết sức quan trọng trong tính toán lưới.

Tính toán với hiệu năng cao đòi hỏi một lượng lớn sức mạnh tính toán

trong một thời gian dài. Ví dụ trong các bài toán cơ học về dầm, cầu hay đường

ống muốn thử nghiệm nhiều lần và việc chia lưới nhỏ đòi hỏi một thời gian rất

lớn để tính toán. Giải quyết vấn đề này trong tính toán phân tán thông qua việc

mô phỏng bài toán phù hợp, xây dựng tập các tham số đầu vào khác nhau thì

việc giải quyết sẽ được thực hiện trong một khoảng thời gian hợp lý. Tính toán

phân tán sẽ khai thác các máy tính nhàn rỗi trong mạng để giái quyết vấn đề này.

Tính toán lưới đã được các công ty và các trung tâm lớn nghiên cứu và

ứng dụng như IBM, Microsoft, Google, tổ chức Châu âu về nghiên cứu hạt nhân

(CERN), cơ quan vũ trụ Châu âu (ESA). Một số ứng dụng cụ thể của tính toán

phân tán như lưu trữ GEN và giải quyết các bài toán liên quan đến GEN của con

người nói riêng cũng như động vật nói chung, tìm kiếm phân tán,....

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 3

Hiện nay tại các phòng LAB, các phòng thực hành ở các đơn vị nghiên

cứu khoa học hoặc các trường đại học đang bị sử dụng lãng phí: các máy tính

trong các hệ thống này thường chỉ hoạt động khoảng 15% công suất, ngay cả các

máy chủ cũng hoạt động với 30% công suất. Việc tận dụng hiệu quả các nguồn

tài nguyên này có thể mang lại một sức mạnh tính toán khổng lồ. Mục tiêu của

đề tài này là nghiên cứu tính toán phân tán và xây dựng một hệ thống giải các

bài toán khoa học đòi hỏi thời gian tính toán lớn nhằm tận dụng nguồn tài

nguyên nhàn rỗi này.

2. Các thách thức đối với lĩnh vực nghiên cứu

Các thách thức mà công nghệ tính toán phân tán đang phải giải quyết bao gồm:

- Các tài nguyên hết sức đa dạng, không đồng nhất. Tài nguyên ở đây bao gồm

các tài nguyên về phần cứng, phần mềm, hệ thóng mạng... Các tài nguyên này

có thể được thiết kế khác nhau về giao diện, kiến trúc.. Việc tạo ra một ứng dụng

cho phép khai thác, sử dụng hiệu quả là không dễ dàng và đây là thách thức vô

cùng lớn đối với hệ thống tính toán phân tán.

- Các tài nguyên không chỉ thuộc về một tổ chức mà thuộc về rất nhiều tổ chức

tham gia. Các tổ chức phải tuân thủ một số quy định chung khi tham gia vào hệ

thống còn nhìn chung là hoạt động độc lập tức là các tài nguyên này đều có

quyền tự trị. Các tổ chức khác nhau thường có chính sách sử dụng hay cho thuê

tài nguyên của họ khác nhau và do vậy cũng gây khó khăn cho việc quản lý.

- Các tài nguyên phân tán rộng khắp về mặt địa lý do vậy cần có các cơ chế quản

lý phân tán.

- Đảm bảo an toàn thông tin cho một môi trường phức tạp như môi trường phân

tán là rất khó khăn trong khi đây là một trong những điểm ưu tiên hàng đầu.

3. Mục tiêu, đối tượng, phạm vi nghiên cứu

Mục tiêu của đề tài là ứng dụng xử lý phân tán để xây dựng một hệ thống giải

quyết các bài toán với tập mẫu lớn thỏa mãn các nội dung:

- Có sự kết hợp, chia sẻ các tài nguyên không được quản lý tập trung: thúc đẩy

việc khai thác hiệu quả các tài nguyên nhàn rỗi. Ngoài ra tính toán phân tán

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 4

cũng giúp cân bằng sử dụng tài nguyên tốt hơn. Với hệ thống phân tán việc thêm

hoặc bớt tài nguyên được thực hiện một cách dễ dàng.

- Sử dụng các giao diện và giao thức chuẩn, mang tính mở, đa dụng: Có khả

năng tùy biến tốt với người dùng. Hệ thống cho phép người dùng mở rộng hệ

thống tính toán dễ dàng và có thể giải quyết được số lượng nhiều bài toán khác

nhau.

- Đáp ứng yêu cầu cao về chất lượng dịch vụ: Cho phép xử lý song song nhằm

sử dụng tối đa nguồn lực của các bộ vi xử lý. Đơn giản hóa các thao tác để có

thể chia sẻ trên một cộng đồng lớn. Cho phép chia sẻ hiểu quả khả năng xử lý và

dữ liệu đảm bảo độ tin cậy tối đa.

4. Phương pháp nghiên cứu, kết cấu của công trình nghiên cứu

Phương pháp nghiên cứu của đề tài là kết hợp lý thuyết với thực tiễn. Kết cấu

của đề tài là tìm hiểu, nghiên cứu về tính toán phân tán. Phân tích các bài toán

có thể xử lý dựa trên tập mẫu lớn. Xây dựng chương trình kiểm thử và đưa ra

các kết luận.

5. Kết quả đạt được của đề tài

- Nghiên cứu về tính toán phân tán trên cơ sở đó đưa ra mô hình giải quyết vấn

đề: giải các bài toán với tập mẫu lớn trên hệ thống máy tính nhàn rỗi.

- Nghiên cứu cách thức hoạt động của các chương trình trên ngôn ngữ lập trình.

- Xây dựng cơ sở dữ liệu để lưu trữ các thông tin trên máy chủ.

- Xây dựng chương trình xử lý việc phân tán trên máy chủ.

- Xây dựng phần mềm chạy trên máy trạm.

- Đưa ra những đánh giá về hiệu năng sử dụng hệ thống.

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 5

CHƯƠNG I: CƠ SỞ LÝ THUYẾT

Hiện nay tính toán phân tán được ứng dụng rộng rãi trong lĩnh vực công

nghệ thông tin. Với đề tài này tác giả tìm hiểu về kiến trúc của hệ thống tính

toán phân tán từ đó đưa ra mô hình giải quyết bài toán khoa học với tập mẫu lớn

thông qua hệ thống mạng máy tính nhằm tăng tốc độ giải quyết bài toán và tận

dung được nguồn tài nguyên nhàn rỗi.

1.1. Một số khái niệm cơ bản

Thời gian gần đây, mô hình tính toán lưới được nghiên cứu để giải nhiều

bài toán đòi hỏi tính toán phức tạp với thời gian lớn. Mục tiêu là nhằm kết hợp

sức mạnh tính toán, nguồn tài nguyên của các máy tính cơ bản phân tán ở những

nơi khác nhau, tạo ra một hạ tầng tính toán tổng hợp thậm còn có thể mạnh hơn

các siêu máy tính được đầu tư với một nguồn tiền lớn.

Định nghĩa về tính toán lưới của Carl Kesselman và Ian Foster: “A

computational grid is a hardware and software infrastructure that provides

dependable, consistent, pervasive, and inexpensive access to high-end

computational capabilities”. [1]

Nhà khoa học Ian Foster đưa ra ba đặc điểm của một lưới thực sự :

- Khai thác và sử dụng tài nguyên phân tán.

- Hệ thống phát triển dựa trên các các giao thức chuẩn.

- Hệ thống hoạt động và cho chất lượng dịch vụ tốt hơn so với việc hoạt động

trên môi trường đơn lẻ. [1]

Các khái niệm “tính toán lưới” với “tính toán ngang hàng” có điểm chung

nhưng cũng có những điểm khác nhau. Điểm chung là cả hai cùng hoạt động

nhằm khai thác tài nguyên trên hệ thống mạng máy tính, việc xây dựng với mỗi

mô hình có những điểm mạnh, điểm yếu riêng. Tính toán lưới thường phục vụ

cộng đồng người dùng với quy mô nhỏ hơn nhằm giải các bài toán tính toán trên

tập mẫu lớn trong một lĩnh vực nghiên cứu nào đó. Tính toán lưới hỗ trợ khả

năng tích hợp tài nguyên tốt hơn, đa dạng hơn tính toán ngang hàng. Ngược lại,

các hệ thống tính toán ngang hàng thường được xây dựng dựa trên nền kiến trúc

linh hoạt hơn, các hệ thống ngang hàng thường phục vụ cho một cộng đồng

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 6

người dùng lớn hơn, có thể lên đến hàng triệu người, hệ thống này chủ yếu hỗ

trợ việc chia sẻ tài nguyên, chia sẻ chu kỳ tính toán hoặc chia sẻ tệp.

1.2. Các tính năng của tính toán lưới

Các bài toán trong các lĩnh vực khoa học khác nhau sử dụng tính toán lưới

nhằm khai thác các năng lực nhàn rỗi trong hệ thống mạng máy tính (CPU, bộ

nhớ), đây như một hệ thống máy tính ảo với môi trường liên lạc phân tán cho

phép tính toán trên những phạm vi địa lý khác nhau, điều này làm cho tính toán

lưới tách biệt với mô hình cụm tính toán.

Tính toán lưới cho phép giải quyết những bài toán với tập mẫu lớn đòi hỏi

nhiều thời gian tính toán như các bài toán trong cơ học như dầm, cầu, đường ống

đòi hỏi việc chia lưới lớn, mô hình hoá tài chính, dự đoán khí hậu thời tiết, mô

phỏng động đất. Tính toán lưới giúp các tổ chức, doanh nghiệp khai thác tối ưu

tài nguyên của đơn vị mình. Ngoài ra tính toán lưới cũng có thể tạo ra các dịch

vụ tính toán mang tính thương mại theo nhu cầu cho các khách hàng, đôi khi

khách hàng chỉ phải trả những gì họ đã sử dụng giống như điện và phí vận hành.

Việc thiết kế các hệ thống tính toán lưới thường cho phép tính toán hiệu

quả và cung cấp một môi trường làm việc với nhiều người dùng khác nhau. Tiếp

đến là khả năng khai thác tốt hơn nguồn tài nguyên cũng như năng lực tính toán

còn nhàn rỗi nhằm phục vụ cho những bài toán khoa học lớn có nhu cầu tính

toán không ngừng nghỉ.

Việc hỗ trợ môi trường làm việc đa người dùng trên các phạm vi địa lý

khác nhau cho phép khai thác hệ thống hiệu quả hơn, tiết kiệm chi phí, tiện lợi

hơn trên các hệ thống xử lý tập trụng.

Các hệ thống tính toán lưới được bố trí ở những phạm vi địa lý khác nhau nhằm

ảo hoá các tài nguyên tính toán.

Tính toán lưới giúp các công ty tận dụng tài nguyên trong một phòng hoặc

một số đơn vị công nghệ của mình kết nối các máy tính để bàn, các cụm và thiết

bị. Việc thực hiện tính toán lưới có thể thực hiện trong một phạm vi nhỏ là một

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 7

phòng máy hoặc cũng có thể mở rộng ra trên hệ thống các phòng máy kết nối

với nhau.

1.3. Mô hình, nền tảng của tính toán lưới

Mô hình khái niệm: tính toán lưới là thực hiện một nhiệm vụ giải quyết

bài toán có nhu cầu tính toán lớn mang tính chất nền tảng. Đúng nghĩa hơn là ở

mức khái niệm chứ không như là một tài nguyên vật lý.

Mô hình tổ chức ảo(Virtual Organization – VO): cung cấp một tập riêng

rẽ các chính sách quản lý như là quản lý cục bộ, quản lý tài nguyên bên ngoài.

Mô hình tính toán lưới được chuẩn hóa để thực thi các ứng dụng nhằm tận dụng

tài nguyên tốt nhất.

Tận dụng tốt nguồn tài nguyên sẵn có: cho phép khai thác tài nguyên trở

nên dễ dàng hơn. Khi thực hiện việc này sẽ phát sinh chi phí cho các phần mềm

trung gian cũng như thời gian trễ. Cần phải đánh giá tốt chi phí, thời gian trễ, để

đánh giá hiệu năng tính toán của hệ thống.

Để triển khai một hệ thống tính toán lưới cũng có thể sử dụng W3C thông

qua các ngôn ngữ hỗ trợ khai thác tài nguyên trên web. Sử dụng các giao thức

internet cho phép triển khai các hệ thống lưới để giải các bài toán khoa học với

tập mẫu lớn và trong đề tài này tác giả đi sâu vào sự hỗ trợ này.

1.4. Nền tảng của tính toán lưới

Tính toán lưới sử dụng hệ thống mạng máy tính để triển khai nhằm đem

lại một sức mạng như những siêu máy tính để phục vụ người dùng.

1.4.1. Tính toán lưới là gì và hoạt động như thế nào?

Grid là hệ thống xử lý phân tán, cho phép linh hoạt chia sẻ và tập hợp các

nguồn tài nguyên độc lập và rải rác về địa lý, tùy theo khả năng sẵn có, công

suất, hoạt động, chi phí và yêu cầu về chất lượng dịch vụ của người sử dụng.

Điện toán mạng lưới(ĐTML) có nghĩa là tất cả hoặc một phần của một

nhóm máy tính, máy chủ và thiết bị lưu trữ trong một mạng máy tính được “ảo

hóa” thành một cỗ máy tính lớn. Chúng cho phép gia tăng về tốc độ, đẩy mạnh

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 8

quá trình tính toán mật độ cao với chi phí không tăng lên đáng kể do hệ thống sử

dụng lại hạ tầng đang có, khai thác hiệu quả nhằm huy động sức mạnh tính toán

và tối ưu khả năng tính toán.

Hình 1.1. Cấu trúc của hệ thống tính toán lưới

Hệ thống ĐTML dựa trên một tập các chuẩn giao thức. Hệ thống có thể

hoạt động trên hệ thống mạng LAN hay rộng hơn là trên mạng Internet.

Hình 1.2. Mô hình tính toán lưới dựa trên Internet

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 9

Chẳng hạn, một ai đó có chiếc máy tính cá nhân nhàn rỗi có thể kết nối

vào hệ thống ĐTML để góp thêm sức mạnh tính toán cho hệ thống. Khi người

này muốn thực hiện một ứng dụng cần thêm sức mạnh xử lý thì hệ thống sẽ tự

động phân bố đến các máy tính đang có nguồn lực rảnh rỗi trong hệ thống để xử

lý, tính toán.

Hình 1.3. Minh họa một hệ thống điện toán mạng lưới

Xây dựng một hệ thống tính toán lưới có thể bắt đầu từ quy mô nhỏ, sau

đó có thể dần dần mở rộng lưới tùy theo nhu cầu của mình.

1.4.2. Mốt số thành phần cơ trong mô hình tính toán lưới

Hệ thống tính toán mạng lưới được phân chia thành 3 lớp:

Lớp ứng dụng: lớp này rất phong phú, có thể là các hệ thống mô phỏng, các

ứng dụng tính toán khoa học.

Lớp cơ sở hạ tầng: gồm các máy tính trong hệ thống mạng, các máy tính trong

mạng, các tài nguyên, hạ tầng mạng.

Lớp giữa: lớp này cung cấp các giao thức được chuẩn hóa cho các lớp còn lại

nhằm tạo ra việc truy cập dễ dàng, thuận tiện.

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 10

1.4.3. Các lợi ích của tính toán lưới

Lợi ích của ĐTML là rất lớn. Hệ thống giúp tận dụng, phân bổ tốt tài

nguyên. Rút ngắn thời gian giải quyết các bài toán khoa học phức tạp. Tận dụng

và tiết kiệm nguồn lực về con người cũng như hạ tầng sẵn có.

Một số lợi ích của tính toán mạng lưới:

1) Không cần phải mua các siêu máy tính với chi phí lớn có thể tận dụng hệ

thống mạng máy tính hiện có để khai thác phục vụ tính toán lớn.

2) Khai thác tối đa nguồn lực máy tính nhàn rỗi tại các phòng Lab, phòng

thực hành để giải các bài toán khoa học đòi hỏi thời gian tính toán lớn.

3) Việc mở rộng hoặc thu hẹp quy mô của hệ thống tính toán lưới khá dễ

dàng, chỉ cần những thao tác rất đơn giản và nhanh gọn.

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 11

CHƯƠNG II: PHÂN TÍCH VÀ XÂY DỰNG HỆ THỐNG

2.1. Tổng quan về hệ thống được xây dựng

Điển hình của tính toán phân tán là các hệ thống tính toán tình nguyện đã

phát triển và khẳng định chỗ đứng của mình trong khoa học máy tính bằng

những dự án tiêu biểu như: SETI@Home[2], ClimatePrediction[3],

Einstein@Home[4] ... Tính toán tình nguyện cho phép các cá nhân, tổ chức có

thể dễ dàng tham gia và đóng góp công sức vào các hoạt động khoa học mang

tính cộng đồng. Đó cũng là một cách để các tổ chức quảng bá, phổ biến các hoạt

động khoa học ra cộng đồng.

Hiện tại các hệ thống tính toán phân tán cũng như tính toán tình nguyện

chưa đầu tư nghiên cứu nhiều vào việc giải quyết các bài toán lớn trong cơ học.

Khi giải quyết một bài toán ứng dụng với tập mẫu huấn luyện lớn và chỉ chạy

trên máy đơn, để đạt được kết quả mong đợi thời gian xử lý là vấn đề hết sức

quan tâm.

Với mong muốn áp dụng công nghệ tính toán phân tán để giải quyết các

bài toán ứng dụng với độ phức tạp về mặt thời gian là rất lớn. Tác giả đã đi sâu

nghiên cứu và tìm hiểu các công nghệ tính toán phân tán, từ đó khai thác những

ưu điểm sẵn có, tìm ra những nhược điểm cần cải tiến và khắc phục, nhằm thiết

lập nên một hệ thống tính toán phân tán đáp ứng được các nhu cầu thực tế đang

đặt ra.

Về mặt dữ liệu: Dữ liệu là tập mẫu đầu vào để giải bài toán sau khi được

tải lên máy chủ sẽ được chia nhỏ để khi có máy khách yêu cầu máy chủ sẽ gửi

chương trình kèm theo dữ liệu cho máy khách xử lý. Sau khi máy khách xử lý

xong dữ liệu sẽ được đẩy lên máy chủ để đồng bộ và bắt đầu một tiến trình mới.

Người sử dụng chỉ cần chuyển dữ liệu về khuôn dạng đã được quy định sẵn, dữ

liệu có thể đã được chuẩn hóa sẵn hoặc chương trình sẽ tự động chuẩn hóa.

Về mặt chương trình: Để giảm thiểu lượng truyền tải dữ liệu qua mạng

chương trình chạy trên hệ thống được thiết kế riêng biệt cho máy chủ và máy

khách. Chương trình trên máy chủ cho phép phân tán và đồng bộ dữ liệu.

Chương trình trên máy khách được sử dụng để huấn luyện cho tập mẫu tương

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 12

ứng. Sau khi hoàn thiện dữ liệu và chương trình cần được nén lại theo dạng

chuẩn zip để giảm kích thước nhằm tăng tốc độ khi nạp dữ liệu và chương trình

lên máy chủ.

Công nghệ để xây dựng hệ thống dựa trên nền tảng của hệ thống phân tán:

- Thực hiện cơ chế tập trung tính toán phân tán với giao diện người dùng dựa

trên web. Hệ thống thiết kế trên ngôn ngữ Python dưới dạng nền tảng. Hệ thống

trao đổi dữ liệu qua giao thức HTTP/HTTPS với định dạng XML.

Hình 2.1. Giao diện chính của chương trình AntHill

- Các máy khách tải từ trang đăng nhập người dùng gói cài đặt, cái mà đã được

cấu hình trên máy chủ. Sau đó máy skhách cài đặt phần này với việc đăng ký nút

mới tự động. Để giải một bài toán người nghiên cứu cần vào trang chủ để nạp

chương trình và dữ liệu với các tham số phù hợp. Như vậy sẽ hạn chế được sự

phụ thuộc vào ngôn ngữ lập trình và phần cứng cũng như hệ thống hàm API.

Gói chương trình này người dùng có thể tự thiết kế theo định dạng đã được lập

sẵn. Các tính toán được thống kê thông qua đồ thị.

- Máy khách thực hiện đa xử lý cho phép tối ưu hoá các bộ xử lý đang có. Việc

trao đổi dữ liệu giữa máy chủ đã được giảm thiểu tối đa nhằm tối ưu hiệu năng

trong hệ thống. Mã nguồn của chương trình được viết ngắn gọn, dễ kiểm soát và

phát triển.

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 13

Hình 2.2. Thời gian thực hiện của hệ thống giải một bài toán cụ thể

2.2. Cơ sở dữ liệu được sử dụng trong hệ thống

Cơ sở dữ liệu của hệ thống

Hình 2.3. Cơ sở dữ liệu của hệ thống

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 14

Một số bảng quan trọng sử dụng trong hệ thống

Bảng Node

Bảng Unit

Bảng Task

Hình 2.4. Một số bảng dùng trong hệ thống

Hệ thống được xây dựng trên nền tảng python-django. [5]

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 15

CHƯƠNG III: TRIỂN KHAI HỆ THỐNG

3.1. Chương trình Anthill

Anthill là một công cụ cho phép chạy phân tán trên thệ thống mạng LAN, WAN

or internet. Với chương trình này tác giả xin giới thiệu một hướng tiếp cận xử lý

các bài toán khoa học với tập mẫu lớn trên hệ thống mạng máy tính.

3.2. Yêu cầu cài đặt thệ thống

- Chương trình trên máy trạm có thể cài đặt trên: WinXP, winServer, window 7,

window 8

- Các phần mềm cần cài đặt trên server:

+ Python

+ Apache

+ Mysql, MySqldb

+ Django

+ Trình duyệt web:

FireFox, IE, Google Chrome, Opera

Độ phân giải tốt nhất: 1024x768

- Phần mềm cần cài đặt trên máy trạm:

+ Python

+ PyWin

+ Numpy

3.3. Cài đặt và chạy phần mềm trên máy chủ

Bước 1:

Chuẩn bị chương trình và các gói phần mềm cần thiết. Cài đặt lên server các

phần mềm như Python, Apache, Mysql, Mysqldb, Django.

Bước 2:

Cài đặt Database từ dòng lệnh của DOS

- Vào thư mục Hill

- Thay đổi cấu hình phù hợp trong file: setting.py

- Tạo cơ sở dữ liệu với tên là HILL trong Mysql

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 16

- Thực hiện lệnh: python manage.py syncdb

Bước 3:

Chạy chương trình HILL từ dòng lệnh của DOS

- Vào thư mục Hill

- Chạy lệnh: python manage.py runserver [add:post]

Hình 3.1. Giao diện server khởi tạo thành công

- Sử dụng trình duyệt web truy cập theo cú pháp: [add: post], nếu thành công

màn hình xuất hiện như sau:

Hình 3.2. Giao diện AntHill chạy thành công

Nếu đã có sẵn tài khoản chương trình trên máy chủ thì tiến hành đăng nhập qua

giao diện sau:

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 17

Hình 3.3. Giao diện đăng nhập vào phần mềm trên máy chủ

Nếu chưa có sẵn tài khoản người dùng có thể đăng ký một tài khoản mới

Hình 3.4. Giao diện đăng ký một tài khoản mới vào phần mềm trên máy chủ

Tải một bài toán lên mạng để chạy cần tải 2 file, thứ nhất là file chương trình,

thứ hai là file tham số đầu vào:

Hình 3.5. Giao diện tải chương trình lên máy chủ

Tải chương trình và tham số đầu vào:

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 18

Nhập tên nhiệm vụ -> click nút Choose tại mục Program để chọn chương trình,

click nút Choose tại mục parameter để chọn file tham số -> click nút Add để

hoàn tất quá trình, chương trình sẽ tải các file vừa chọn lên server.

Hình 3.6. Giao diện tải thành công chương trình

Cập nhật, sửa, xóa một nhiệm vụ xử lý:

Hình 3.7. Giao diện cập nhật, sửa, xóa

Updat

e

Edit Dele

te

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 19

Một số kết quả xử lý trên máy chủ:

Hình 3.8. Kết quả giải quyết một nhiệm vụ

Hình 3.9. Thời gian thực hiện trung bình của CPU

Results

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 20

Hình 3.10. Thời gian thực hiện trung bình của mạng

Hình 3.11. Thời gian trung bình trên tổng thời gian thực hiện

3.4. Cài đặt và chạy phần mềm trên máy trạm

Bước 1: Tải chương trình từ máy chủ có tên là Ant

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 21

Hình 3.12. Giao diện tải chương trình trên máy chủ

Bước 2: Cài đặt chương trình trên máy trạm Ant:

- Chạy file AntSetup.exe, khi màn hình xuất hiện nhấn nút Next để tiếp tục.

Hình 3.13. Giao diện bắt đầu cài đặt phần mềm trên máy trạm

Sau đó sẽ xuất hiện màn hình về các nội dung sẽ cài đặt, tiếp tục nhấn nút next.

Click here to

download

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 22

Hình 3.14. Giao diện về các nội dung sẽ cài đặt

Tiếp đến chương trình yêu cầu lựa chọn vị trí cài đặt phần mềm trên máy trạm,

chọn nút Browse để chỉ ra đường dẫn phù hợp và tiếp tục.

Hình 3.15. Giao diện thiết lập đường dẫn trên máy trạm

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 23

Đặt tên chương trình và lựa chọn vị trí xuất hiện:

Hình 3.16. Lựa chọn vị trí xuất hiện của chương trình

Lựa chọn thêm vị trí xuất hiện của phần mềm:

Hình 3.17. Lựa chọn xuất hiện trên màn hình

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 24

Bước cuối cùng là nhấn Install để tiến hành cài đặt

Hình 3.18. Tiến hành cài đặt

Hình 3.19. Cài đặt hệ thống

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 25

Khi kết thúc có thể lựa chọn chạy chương trình ngay lập tức hoặc không và nhấn

nút Finish để kết thúc quá trình cài đặt.

Hình 3.20. Kết thúc cài đặt phần mềm trên máy trạm

Tiến hành cấu hình cho máy trạm nến cần thiết

Hình 3.21. Cấu hình máy trạm

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 26

3.5. Thông tin chạy chương trình

Chương trình có hệ thống log file cả trên máy chủ lẫn máy trạm

Hình 3.22. Log file

Chúng ta có thể theo dõi quá trình hoạt động của máy chủ cũng như máy trạm

qua file log để đưa ra các quyết định phù hợp điều chỉnh quá trình giải quyết các

bài toán đang giải quyết trên hệ thống.

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 27

KẾT LUẬN

Qua quá trình thực hiện đề tài tác giả đã tìm hiểu về tính toán phân tán, sử

dụng lý thuyết tính toán phân tán xây dựng thành công ứng dụng cho phép giải

các bài toán khoa học đòi hỏi thời gian tính toán lớn.

Hệ thống chạy trên nền web, dễ dàng cài đặt, thiết lập các thông số và sử

dụng. Hệ thống cho phép giải các bài toán khoa học có thể phát triển trên ngôn

ngữ python, flexpde, ansys,....

Hệ thống cũng được tối ưu để việc gửi nhận dữ liệu đạt hiểu quả, chiếm

dụng ít đường truyền mạng, khai thác tối ưu các tài nguyên nhàn rỗi trong các

phòng thực hành hoặc phòng LAB.

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 28

TÀI LIỆU THAM KHẢO

[1]. What is the Grid? A three points checklist. Ian Foster. http://www-

fp.mcs.anl.gov/~foster/Articles/WhatIsTheGrid.pdf

[2]. Seti@home URL: http://setiathome.berkeley.edu

[3]. ClimatePrediction URL: http://climateprediction.net.

[4]. Einstein@Home URL: http://boinc.berkeley.edu/wiki/Einstein@Home.

[5]. Python – django: https://pypi.python.org/pypi/Django

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 29

PHỤ LỤC

1. Chương trình đơn giản để test trên ANTHILL

import sys, math

def check(number):

i = 2

root = math.ceil(math.sqrt(number))

while i <= root:

if not (number % i):

return False

i += 1

return True

f=open('output.txt','w'); #open file to write data

f.write('%s'%check(float(sys.argv[1]))) #Write data to file

f.close() #Close file

2. Chương trình chạy trên ngôn ngữ FlexPde

import os, re, sys

bin = 'C:/FlexPDE5/FlexPDE5.exe'

root = os.path.dirname(os.path.realpath(__file__))

root = root.replace('\\', '/')

source1 = root + '/layerCoating.pde'

source2 = root + '/layerReal.pde'

target = root + '/tmp.pde'

output = root + '/out.txt'

params = sys.argv[1]

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 30

params=params.split(' ')

file_output=sys.argv[2]

#####COATING ##################################

fs = open(source1)

s = fs.read()

fs.close()

s = s.replace('{placeholder_e}', 'E1=%s' % params[0])

s = s.replace('{placeholder_h}','h=%s' % params[1])

s = s.replace('{placeholder_output}',output)

f = open(target, 'w')

f.write(s)

f.close()

os.system('%s -R -X -S %s' % (bin, target))

r = open(output).read()

sx1 = r.split('\n')[-2].split('=')[1]

#####REAL #####################################

fs = open(source2)

s = fs.read()

fs.close()

s = s.replace('{placeholder_e}', 'E1=%s' % params[0])

s = s.replace('{placeholder_h}','h=%s' % params[1])

s = s.replace('{placeholder_output}',output)

f = open(target, 'w')

f.write(s)

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 31

f.close()

os.system('%s -R -X -S %s' % (bin, target))

r = open(output).read()

sx2 = r.split('\n')[-2].split('=')[1]

#################################################

result = "%s %s %s %f" %(' '.join(params), sx1, sx2, float(sx1) - float(sx2))

open(file_output, 'w').write(result)

File dữ liệu mẫu tương ứng để chạy params.txt

99.696969697 0.0909090909091

99.696969697 0.0919191919192

99.696969697 0.0929292929293

99.696969697 0.0939393939394

99.696969697 0.0949494949495

99.696969697 0.0959595959596

99.696969697 0.0969696969697

99.696969697 0.0979797979798

99.696969697 0.0989898989899

99.696969697 0.1

101.818181818 0.0

101.818181818 0.0010101010101

101.818181818 0.0020202020202

101.818181818 0.0030303030303

101.818181818 0.0040404040404

101.818181818 0.00505050505051

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 32

101.818181818 0.00606060606061

101.818181818 0.00707070707071

101.818181818 0.00808080808081

101.818181818 0.00909090909091

101.818181818 0.010101010101

101.818181818 0.0111111111111

101.818181818 0.0121212121212

101.818181818 0.0131313131313

101.818181818 0.0141414141414

101.818181818 0.0151515151515

101.818181818 0.0161616161616

101.818181818 0.0171717171717

101.818181818 0.0181818181818

101.818181818 0.0191919191919

101.818181818 0.020202020202

101.818181818 0.0212121212121

101.818181818 0.0222222222222

101.818181818 0.0232323232323

101.818181818 0.0242424242424

101.818181818 0.0252525252525

101.818181818 0.0262626262626

101.818181818 0.0272727272727

101.818181818 0.0282828282828

101.818181818 0.0292929292929

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 33

101.818181818 0.030303030303

101.818181818 0.0313131313131

101.818181818 0.0323232323232

101.818181818 0.0333333333333

101.818181818 0.0343434343434

101.818181818 0.0353535353535

101.818181818 0.0363636363636

101.818181818 0.0373737373737

101.818181818 0.0383838383838

101.818181818 0.0393939393939

101.818181818 0.040404040404

101.818181818 0.0414141414141

101.818181818 0.0424242424242

101.818181818 0.0434343434343

101.818181818 0.0444444444444

101.818181818 0.0454545454545

101.818181818 0.0464646464646

101.818181818 0.0474747474747

101.818181818 0.0484848484848

101.818181818 0.0494949494949

101.818181818 0.0505050505051

101.818181818 0.0515151515152

101.818181818 0.0525252525253

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 34

Trong file này có 10000 tập mẫu dữ liệu để chạy, ở đây tác giả chỉ trích ra một

phần nhỏ mang tính chất minh họa.

3. Chương trình chạy trên ngôn ngữ ANSYS

File start.py

import numpy, math, sys, os

from lib.ansys import run_ansys

from lib.fourier import rfft

from lib.db import DB

params = sys.argv[1]

file_output=sys.argv[2]

if not len(params):

exit()

f=open(file_output,'w')

stored=params

root = os.path.dirname(os.path.realpath(__file__))

params=params.split(' ')

params = [x.split('=') for x in params]

result = run_ansys(root,'layer', params).replace('\n',';')

if result.strip() != '':

f.write(stored+' ### ')

f.write(result)

f.close()

File Ansys.py

import os

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 35

import shutil

def run_ansys(root,input_file, parameters = {}, dry_run = False):

bin = '"C:/Program Files/ANSYS Inc/v130/ansys/bin/INTEL/ansys130.exe"'

root =root.replace("\\", "/")+'/'

ansys= bin + ' -p ansys -np 4 -dir ' + root + 'workdir '

ansys+= '-i ' + root + 'script/'+input_file+'.dat '

ansys+= '-o ' + root + 'workdir/output.txt '

result = ''

for k in parameters:

result+="-%s %s " % (k[0],k[1])

call = ansys+' -b '+result

if not dry_run:

try:

os.remove(root + 'workdir/file.lock')

except :

pass

if not dry_run:

os.system(call)

return open(root + 'workdir/data.dat').read()

Chương trình thực thi trên Ansys

/UNITS,SI

!****TITLE&CONSTANTS ****************************************

/title, Crack in coated layer

!****PARAMETERS **********************************************

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 36

!constants

WIDTH=2

FORCE=10e6

TimeStep=5e-5

TimeForce=5e-5

TimeTicks=7500e-5

Damping=8e-5

! comment out following lines in batch mode

!LHEIGHT=0.01

!HEIGHT=0.8

!CCENTER=0.1

!AAA=0.09

!ACTUATOR=0.9

!SENSOR_OFFSET=0.1

ex1=70e9

nu1=.34

dens1=2700

ex2=210e9

nu2=.28

dens2=7700

! Variables

DEPTH=CCENTER - AAA

SIZE=2*AAA

A=AAA

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 37

TIPX=SIZE/100

TIPY=SIZE/10

SENSOR=ACTUATOR+SENSOR_OFFSET

CENTER=WIDTH/2

RANGE=WIDTH/4

!****MATERIAL PROPERTIES ************************************

/prep7

ET,1,PLANE183

ET,2,PLANE183

MPTEMP,1,1

MPDATA,EX,1,,21e9

MPDATA,PRXY,1,,nu1

mp,dens,1,dens1

MPTEMP,2,2

MPDATA,EX,2,,ex1

MPDATA,PRXY,2,,nu2

mp,dens,2,dens2

MP,DAMP,1,Damping

MP,DAMP,2,Damping

!***GEOMETRY *************************************************

!keypoints

k,1,-CENTER, LHEIGHT

k,2,-CENTER+ACTUATOR, LHEIGHT

k,3,-CENTER+SENSOR, LHEIGHT

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 38

k,4,CENTER, LHEIGHT

k,5,CENTER, 0

k,6, A, 0

k,7,-A, 0

k,8,-CENTER, 0

k,11,-CENTER, -HEIGHT

k,12,-A, -HEIGHT

k,13,A, -HEIGHT

k,14,CENTER, -HEIGHT

k,21,-A, -DEPTH

k,22,0, -DEPTH

k,23,A, -DEPTH

k,24,A, -DEPTH-SIZE

k,25,0, -DEPTH-SIZE

k,26,-A, -DEPTH-SIZE

k,31,-TIPX, -DEPTH-TIPY

k,32,TIPX, -DEPTH-TIPY

k,33,TIPX, -DEPTH-SIZE+TIPY

k,34,-TIPX, -DEPTH-SIZE+TIPY

!lines

lstr,1,2

lstr,2,3

lstr,3,4

lstr,4,5

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 39

lstr,5,6

lstr,6,7

lstr,7,8

lstr,8,1

lstr,8,11

lstr,11,12

lstr,12,13

lstr,13,14

lstr,14,5

lstr,21,22

lstr,22,23

lstr,23,24

lstr,24,25

lstr,25,26

lstr,26,21

lstr,7,21

lstr,6,23

lstr,24,13

lstr,26,12

lstr,31,22

lstr,22,32

lstr,32,33

lstr,33,25

lstr,25,34

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 40

lstr,34,31

AL,1,2,3,4,5,6,7,8

AL,20,19,23,10,9,7

AL,12,13,5,21,16,22

AL,18,17,22,11,23

AL,6,21,15,14,20

AL,26,27,17,16,15,25

AL,14,24,29,28,18,19

!***LOADS *****************************************************

lsel,s,,,4

lsel,a,,,8

lsel,a,,,9

lsel,a,,,13

SFL,all,PRES,-FORCE

lsel,all

DL,10,,UY,0

DL,11,,UY,0

DL,12,,UY,0

!***MESHING ***************************************************

MSHAPE,0,2D

asel,all

aatt,1

asel,s,area,,1

aatt,2

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 41

asel,all

AMESH,ALL

!***SOLUTION***************************************************

/SOLU

ANTYPE,4

TRNOPT,REDUC

M,ALL,ALL

DELTIM,TimeStep

!step by step problem definition

TIME,0.000

FK,2,FY,-FORCE*10

LSWRITE,1

TIME,TimeForce

FKDELE,2,ALL

LSWRITE,2

TIME,TimeTicks

LSWRITE,3

LSSOLVE,1,3,1

FINISH

!***POSTPROCESSING********************************************

/POST26

FILE,'file','rdsp','.'

KSEL,S,,,2

NSLK,S

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 42

NSOL,2,ndnext(0),U,Y,S1

STORE,MERGE

KSEL,S,,,3

NSLK,S

NSOL,3,ndnext(0),U,Y,S2

STORE,MERGE

!***EXPORTING************************************************

*GET,size,VARI,,NSETS

*dim,A1,array,size

*dim,A2,array,size

*dim,A3,array,size

VGET,A1(1),1

VGET,A2(1),2

VGET,A3(1),3

*CFOPEN,data,dat

*VWRITE,A1(1),A2(1),A3(1) ! Write array in given format to file ".dat"

(f12.6,f20.8,f20.8)

*CFCLOSE

4. Chương trình sinh tập mẫu để chạy trên ANSYS

import os

from numpy import *

f=open('params.txt','w')

for HEIGHT in [.4]:

for LHEIGHT in [.01]:

Đề tài nghiên cứu khoa học

Đại học Hàng Hải Trang 43

for CCENTER in [.1,.15,.2,.25,.3]:

for AAA in [.09,.06,.03]:

for SENSOR_OFFSET in [.1]:

for ACTUATOR in linspace(0.4,1.6,20):

call = 'HEIGHT=%s LHEIGHT=%s

CCENTER=%s AAA=%s SENSOR_OFFSET=%s ACTUATOR=%s'

call =

call%(HEIGHT,LHEIGHT,CCENTER,AAA,SENSOR_OFFSET,ACTUATOR)

f.write(call+'\n')

f.close()