QUẢNG CÁO ĐẦU TRANG

Collapse

Thông báo

Collapse
No announcement yet.

Topology Optimization

Collapse
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • Cuong_gt41
    replied
    Ðề: Topology Optimization

    Mình có đoạn code viết bằng Delphi do thầy cho,có rất nhiều thuật toán sd để giải phương trình đại số tuyến tính.nếu bạn có thể nhai được bằng Delphi thì mình gửy cho.

    Leave a comment:


  • Kidsmart1981
    replied
    Ðề: Topology Optimization

    Phương pháp khử Gauss là một thuật toán nổi tiếng, lên nó được giới thiệu trên hầu hết các sách về thuật toán(phần đại số). Sách tiếng việt, bạn có thể tìm cuốn "101 thuật toán kinh tế - kỹ thuật bằng C++"...Mình cũng không nhớ tên tác giả(nhưng đây cũng chỉ là sách sưu tầm--> dịch thôi!); hay bạn có thể tham khảo trong "Cẩm nang thuật toán" - 2 tập, sách dịch.

    Leave a comment:


  • quyth2
    replied
    Ðề: Topology Optimization

    Em thấy anh Kidsmart nói về thuật toán của phương pháp khử Gauss..anh có không?? Em đang làm chương trình tính bản theo phương pháp phần tử hữu hạn...Ma trận độ cứng đã lập, đã khử trùng lặp và gán điều kiện biên nhưng đến khi giải thì nó ra cái chuyển vị quái dị.... Giải thử với ma trận 6x6 thì chạy đúng...không hiểu sai ở đâu??Nếu ai có thuật toán Gauss hoặc Cholesky cho em xin nhé. vuquy6883@yahoo.com

    Leave a comment:


  • Kidsmart1981
    replied
    Ðề: Topology Optimization

    OK
    I'm waiting and improving my skill.

    Leave a comment:


  • kthung
    replied
    Ðề: Topology Optimization

    Anh cũng nghĩ như vậy đấy. Giá như mà viết được thì mình sẽ làm được vô cùng nhiều thứ có giá trị.
    Đành sống với hiện tại vậy.
    (TB :Wait for new infomations)

    Leave a comment:


  • Kidsmart1981
    replied
    Ðề: Topology Optimization


    Giả sử với matran cỡ 1tr x 1tr =1000 tỷ phần tử. Nghĩa là sẽ mất tối đa 1000 tỷ đơn vị thời gian(một đơn vị thời gian ở đây phụ thuộc ngôn ngữ sử dụng - và bao gồm một vài phép tính số học...). Theo nhưng thông tin mới mà em biết, thì những hệ thống máy chủ mạnh nhất trên thế giới có tốc độ vài chục tera_bits(vài chục nghìn tỷ phép tính mỗi giây). Nghĩa là bài toán matran cỡ 1000 tỷ phần tử trở phải giải trên những hệ thống server chuyên dụng hàng đầu trên thế giới hịên nay(vài trục cho đến vài trăm triệu USD cho những hệ thống server đó). Các giải thuật -thuật toán luôn là cần thiết và không ngừng phát triển nhưng đó không phải là phép tiên, ngay cả gải thuật tốt nhất - chạy trong trường hợp tốt nhất của một bài toán cỡ lớn vấn đòi hỏi một lượng tính toán vô cùng lớn, đó chính là lý do để các hệ thống siêu máy tính xuất hiện và tồn tại.
    anh sẽ rất khó tìm được giải pháp cho bài toán cỡ lớn trên mạng, vì những vấn đề như anh nói(ma trận 1000 tỷ phần tử trở lên) thuộc về lĩnh vực rất chuyên sâu của khoa học máy tính...và được thiết kế để chạy trên những hệ thống đa bộ xử lý, và ở đó có thể họ sẽ áp dụng những giải thuật song song (điều này chắc vượt quá tầm kiến thức IT của chúng ta hiện tại)....chắc ko dùng giải thuật Gauss được

    Leave a comment:


  • kthung
    replied
    Ðề: Topology Optimization

    Ma trận cỡ cực lớn, mỗi chiều khoảng vài chục triệu. Mình đã tìm trên rất nhiều trang mã nguồn mở nhưng không tìm được. Còn nếu ma trận cỡ vài nghìn thì không nói làm gì.

    Leave a comment:


  • Kidsmart1981
    replied
    Ðề: Topology Optimization

    Xét về khía cạnh thuật toán giải ma trận, các chương trình vẫn dựa trên những thuật toán đại số thuần túy - như phép khử Gauss. Nếu có áp dụng các giải thuật tối ưu thì trong những lĩnh vực khác nhau...các matran thường có những điểm riêng, do đó thường có khâu phân tích matran trước khi giải(như các matran trong thiết kế điện....thường rất thưa). Nhưng trong trường hợp xấu nhất bài toán ma trận sẽ có sự phức tạp cỡ C(m*n) đơn vị thời gian. Do MathLab dựa trên C++ lên chi phí cho một đơn vị thời gian trong hao tổn C(m*n) là nhỏ(C++ vẫn là ngôn ngữ có hiệu xuất cao).
    Lên thời gian giải matran bằng MathLab là chấp nhận được nếu so sánh với nhiều ngôn ngữ khác. Cũng không biết giải thuật giải matran của họ như thế nào, nhung Math Lab là một công cụ để thực hiện rất nhiều bài toán mô phỏng trên rất nhiều lĩnh vực ==> Chọn Math Lab để giải matran, hay thực hiện mô phỏng là lựa chọn tốt

    Cũng không biết Matran cỡ lớn anh nói là cỡ nào? Nhưng em vẫn thấy mấy ông sinh viên điện tử viễn thông giãi matran cỡ vài nghìn mỗi chiều bằng Math Lab 6 nhanh lắm(tất nhiên matran của ho thưa hơn matran trong bài toán kết cấu nhiều).
    Last edited by Kidsmart1981; 06-10-2005, 03:12 PM.

    Leave a comment:


  • kthung
    replied
    Ðề: Topology Optimization

    Viết mã trong Matlab bằng ngôn ngữ tương tự như C++ thôi. Nhưng anh nghĩ rằng, thuật toán để tính toán ma trận cỡ cực lớn thì matlab giải chắc cũng khó khăn đấy.

    Leave a comment:


  • Kidsmart1981
    replied
    Ðề: Topology Optimization

    Trong môi trường C++, nếu mục đích của hãng sản xuất không là tạo ra các ActiveX hay COM Objects(.dll) thì các .dll của ứng dụng không thể được reference từ bên ngoài. Và thường thì chỉ những gì mang tính phổ biến, chuẩn mực(giải quyết những vấn đề chung của nhiều ứng dụng, hay với mục đích tạo "bộ khung" cho những ứng dụng, những tính năng sau đó...) mới được phân phối theo COM Object Model. (nói chung anh cứ thử ref tới các .dll của MathLab, nếu ok thì...ok).
    Trước đây cũng có thời gian tiếp xúc với MathLab, nó tích hợp cả Code Editor bên trong (như kiểu VBA trong CAD, nhưng cú pháp ở đây là C++...nếu ko nhớ nhầm) nên nhiều khả năng MathLab có những Framework trên nền COM(đây là yếu tố cần thiết để Code Editor có thể hoạt động...). Em ko có đĩa MathLab ở nhà nên chưa kiểm tra được, ai đó check lại dùm.

    Leave a comment:


  • kthung
    replied
    Ðề: Topology Optimization

    Liệu có lấy được thư viện các hàm của matlab (dll) để lập trình trong 1 môi trường khác ( VD : VC++) không nhỉ?

    Leave a comment:


  • kthung
    replied
    Ðề: Topology Optimization

    LHC , có phải bạn viết chương trình trong môi trường Matlab và sử dụng các hàm toán học sẵn có của matlab không?

    Leave a comment:


  • LHC
    replied
    Ðề: Topology Optimization

    Chào quyth2,
    Tối ưu ở đây là kết cấu tối ưu, mà không phải tối ưu hóa trong lập trình tính kết cấu. Kết cấu tối ưu có rất nhiều kiểu: (1) tiết kiệm vật liệu nhất và có độ cứng lớn nhất, hoặc có ứng suất không vượt quá giới hạn cho phép...(xem ví dụ ở phần trước); (2) Kết cấu vi mô (microstructures) có những đặc trưng vật liệu như mong muốn (ví dụ hệ số nở ngang nhỏ hơn 0, hệ số dãn nở nhiệt nhỏ hơn 0, bulk modulus cực lớn...); (3) Kết cấu có chuyển vị theo hướng mong muốn... (chắc còn rất nhiều).
    Tuy nhiên, bài toán tối ưu này bao gồm cả bài toán phân tích kết cấu (finite element analysis) và đòi hỏi bài toán phân tích kết cấu phải được giải một cách hiệu quả (giải bài toán lớn mà lại phải nhanh). Thế nên có thể nói nó bao gồm cả phần tối ưu hóa việc giải bài toán phân tích kết cấu (đặc biệt cho toán topology optimization). Ví dụ, nhóm tôi hiên tại có một người bên khoa Computer Science chuyên nghiên cứu chương trình giải sao cho hiệu quả nhất.
    LHC

    Leave a comment:


  • quyth2
    replied
    Ðề: Topology Optimization

    Em chưa hiểu vấn đề tối ưu ở đây các anh định nói là gì. Kết cấu tối ưu hay tối ưu hóa trong lập trình phân tích kết cấu?? Thế nào là một kết cấu tối ưu??

    Leave a comment:


  • LHC
    replied
    Ðề: Topology Optimization

    Cung co the noi la no tuong doi kho, vi tim duoc mot ket cau toi uu thi it nhat phai phan tich duoc su lam viec cua no (tuc la giai noi luc bang finite element analysis). Tuy nhien neu minh da hieu duoc thi moi viec se tro nen de dang va thu vi . Toi da viet mot so chuong trinh 2D va 3D su dung mot so phuong phap moi duoc cong bo. Thuc ra de xay dung mot chuong trinh cung khong kho. Van de la phai nhieu nguoi gop suc lai thi no moi co the nhanh duoc.
    Last edited by LHC; 30-09-2005, 02:00 AM.

    Leave a comment:

Working...
X