BLOG Mô phỏng và Thiết kế, CAD/CAE, Engineering

Pathétique

Active Member
Author
Trước giờ theo dõi seminar, website và facebook nhiều hãng, từ dassault systeme, msc software đến matlab và các site engineering có nhiều entry hay, từ giới thiệu tổng quan, phương pháp đến thủ thuật liên quan đến mô phỏng và thiết kế, rất có ích, hoặc từ kinh nghiệm của chính mình, hoặc entry từ các bạn. Mình nhặt nhạnh và post ở đây, chủ yếu là link hoặc giới thiệu sơ để các bạn tham khảo, bổ sung kĩ năng chuyên môn cũng như kinh nghiệm hoặc tư liệu. Các bài này chủ yếu dưới dạng entry, nên rất ngắn, dễ đọc, nhưng lại rất hữu ích cho kĩ sư.

Entry đầu tiên là entry mình mới thấy hôm nay trên blog Solidworks (Dassault Systeme).

[Entry 1]

Bình thường workflow (trình tự phương pháp) khi làm mô phỏng trong thiết kế là : chọn vật liệu, chọn điều kiện biên, đặt lực và chạy mô phỏng.

Bài dịch tiếng Việt của bạn hoangta91 (cảm ơn bạn Hoàng !) ở link sau đây : https://onedrive.live.com/view.aspx...t=file,docx&app=Word&authkey=!APPPEjh2d3XNJ2o

Nếu thiếu thông tin ở bước nào đó trong workflow này thì sao, phải standby thiết kế ? Chẳng hạn bước đặt lực : giả sử cần tính tải trọng lớn nhất mà chi tiết/kết cấu có thể chịu được, mà không biết giá trị của tải trọng thực đặt vào kết cấu. Hoặc đặt vấn đề theo cách : làm sao để advance công việc design, trong khi phải đợi thông tin về độ lớn của tải trọng thực đặt lên chi tiết/kết cấu.

Với điều kiện bài toán là tuyến tính, bằng công thức sức bền VL đơn giản, với vật liệu giả định, ta có thể dimesionning dễ dàng kết cấu và tiếp tục hoàn thành design. Phương pháp trình bày trong entry :

http://blogs.solidworks.com/tech/20...=10154276459564770&adbpl=fb&adbpr=12707004769
 
Last edited:

Nova

MES LAB Founder
Ðề: Blog mô phỏng và thiết kế

Pathetique làm cái thread tổng hợp, bình luận, điểm tin ở đây cũng là một kiểu blog rồi :)

Topic rất hay và hữu ích!
 

Pathétique

Active Member
Author
Ðề: Blog mô phỏng và thiết kế

[Entry 2] Những điều cần biết về chia lưới - infographic. Blog Solidworks simulation

Một trong những FAQs các bạn thường hỏi nhất có lẽ là về chia lưới : quy trình chia lưới, các thông số liên quan đến lưới, và trên hết làm sao biết được lưới mình chia đạt tiêu chuẩn tốt. Entry sau đây của Solidworks tổng hợp về những điều trên ở mức độ cơ bản dưới dạng infographic, rất tiện theo dõi và áp dụng. Ở 1 entry khác mình sẽ nói về phương pháp chọn loại phần tử tùy theo bài toán, kết cấu.

http://blogs.solidworks.com/tech/2016/06/n[MEDIA=youtube]e-know[/MEDIA]-meshing-infographic.html
 

Pathétique

Active Member
Author
Ðề: Blog mô phỏng và thiết kế

[Entry 3] Sử dụng abaqus DEM mô hình hóa vật liệu cát trong drop test

Chắc ai chuyên mô phỏng drop test cũng quá quen với ví dụ kinh điển, 1 bình chứa nước rơi xuống và tính toán chuyển động của nước trong bình, sử dụng phương pháp Coupled Eulierian Lagrange (CEL).

Nếu thay nước bằng vật liệu cát, sỏi, hay hạt thì sao ? Cát cũng có thể chuyển động trôi như nước, nhưng cũng có thể xếp chồng lên nhau.

Nếu bạn tự hỏi mô phỏng bình nhựa chứa sỏi cát để làm gì, đúng là mình cũng chưa nghĩ ra để làm gì, nhưng trong 1 bài toán khác mình đã mất vài tháng để giải quyết. Cách đây 2 năm, mình phải mô phỏng quá trình kéo 1 kết cấu được chôn dưới đáy biển (cáp, máy đo, thiết bị dầu khí...) lên khỏi đáy. Mô hình khá trơn tru, bao gồm cả chuyển động của nước bắn tung tóe lên và sóng tỏa ra khi kết cấu được kéo lên khỏi mặt biển, cho đến bước mô hình hóa cát. Để kiểm tra behavior của cát, mình không tách kết cấu ra khỏi cát trong điều kiện ban đầu để chia lưới miền cát, mà mình isolate kết cấu trong 1 không gian hình hộp, sau đó step đầu sẽ cho cát rơi xuống phủ lên kết cấu. Chính step này đòi hỏi nhiều thời gian làm mô hình nhất, vì mình chưa bao giờ học cơ đất, nên vừa phải tìm 1 behavior laws thích hợp và tối ưu hóa.

Tuy nhiên bài toán trên có thể được giải quyết nhanh và tiện hơn rất nhiều khi sử dụng Discrete Element Method (DEM) (điểm mới trong abaqus 2016). Điểm mạnh của phương pháp này là xây dựng mô hình nhanh và tiện, kết quả chính xác và fiable, tuy nhiên thời gian tính toán khá lâu (mô hình trước của mình chạy khoảng 14h thì nếu dùng DEM mất khoảng 1 ngày), do chưa thể tính song song cho particle generator. Tuy nhiên khi dùng explicit trong bài toán hydrodynamics thì bình thường cũng dùng số lượng cpus hạn chế rồi (để tránh kết quả sai ở phần chia miền), nên chênh lệch vậy cũng không đáng kể so với việc kết quả được cái thiện rất nhiều.

Entry sau mô tả chi tiết hơn về 1 ví dụ cụ thể ứng dụng DEM (code abaqus):
http://info.simuleon.com/blog/using...odel-s[MEDIA=youtube]n-in[/MEDIA]-a-drop-test
 

Pathétique

Active Member
Author
Ðề: Blog mô phỏng và thiết kế

[Entry 4] 4 lỗi phổ biến khi post-process mô phỏng


Calculs hội tụ, chạy hết đến bước cuối và cho kết quả, đó là điều rất tốt rồi, nhưng mô hình sẽ vô giá trị nếu làm post processing không tốt, phần quan trọng nhất trong công việc mô phỏng. Hầu hết người làm tập trung rất nhiều vào việc xây dựng mô hình và chạy solution với các thông số numerical, nhưng làm nhẹ phần post-processing. Entry sau trình bày 4 lỗi phổ biến nhất và cần tránh khi làm post processing.
http://blog.capinc.com/2016/06/top-...=10154286156494770&adbpl=fb&adbpr=12707004769

Trong 4 lỗi này thì nguyên nhân và giải pháp liên quan không nhiều đến mô hình về mặt numerical (phương pháp số), mà chủ yếu về mặt vật lý, tính phù hợp của nghiệm giải ra. Vấn đề là khi làm post processing ta phải biểu diễn những kết quả đó để phân tích và kiểm nghiệm.

Trong entry khác mình sẽ nói về trường hợp calculs không hội tụ và các giải pháp về mặt numerical, tuy nhiên khi xảy ra thì việc cần làm cũng là mở ngay viewer để xem trạng thái của kết cấu/hệ ngay tại thời điểm chương trình bị dừng để phân tích. Xem xét kĩ mô hình, quay lại bước setup để loại bỏ tất cả những gì ảnh hưởng đến tính liên tục của các evolutions trong mô hình là đã giải quyết gần hết nguyên nhân rồi. Phần mềm chỉ giỏi toán, nên khi giải bài toán mà ra 2 nghiệm thì nó thiếu kiến thức vật lý để xét xem nghiệm nào đúng và return là calculs không hội tụ, vai trò của người dùng là ở điểm này.
 
Ðề: Blog mô phỏng và thiết kế

Trước giờ theo dõi seminar, website và facebook nhiều hãng, từ dassault systeme, msc software đến matlab và các site engineering có nhiều entry hay, từ giới thiệu tổng quan, phương pháp đến thủ thuật liên quan đến mô phỏng và thiết kế, rất có ích, hoặc từ kinh nghiệm của chính mình, hoặc entry từ các bạn. Mình nhặt nhạnh và post ở đây, chủ yếu là link hoặc giới thiệu sơ để các bạn tham khảo, bổ sung kĩ năng chuyên môn cũng như kinh nghiệm hoặc tư liệu. Các bài này chủ yếu dưới dạng entry, nên rất ngắn, dễ đọc, nhưng lại rất hữu ích cho kĩ sư.

Entry đầu tiên là entry mình mới thấy hôm nay trên blog Solidworks (Dassault Systeme).

[Entry 1]

Bình thường workflow (trình tự phương pháp) khi làm mô phỏng trong thiết kế là : chọn vật liệu, chọn điều kiện biên, đặt lực và chạy mô phỏng.

Nếu thiếu thông tin ở bước nào đó trong workflow này thì sao, phải standby thiết kế ? Chẳng hạn bước đặt lực : giả sử cần tính tải trọng lớn nhất mà chi tiết/kết cấu có thể chịu được, mà không biết giá trị của tải trọng thực đặt vào kết cấu. Hoặc đặt vấn đề theo cách : làm sao để advance công việc design, trong khi phải đợi thông tin về độ lớn của tải trọng thực đặt lên chi tiết/kết cấu.

Với điều kiện bài toán là tuyến tính, bằng công thức sức bền VL đơn giản, với vật liệu giả định, ta có thể dimesionning dễ dàng kết cấu và tiếp tục hoàn thành design. Phương pháp trình bày trong entry :

http://blogs.solidworks.com/tech/20...=10154276459564770&adbpl=fb&adbpr=12707004769
Rảnh rỗi ngồi dịch coi như học tiếng anh luôn. Bác nào cần thì kéo về rồi cho em xin ý kiến với. Phần Entry 1 của bác Pathetique nhé.
https://1drv.ms/w/s!Aim3YBfDdQiBavPPEjh2d3XNJ2o
 

Pathétique

Active Member
Author
Ðề: Blog mô phỏng và thiết kế

Cảm ơn bạn hoangta91, mình vừa edit entry đó để link bài dịch của bạn vào để các bạn đọc cho tiện luôn.

[Entry 5] 6 thủ thuật xử lý khi mô phỏng không hội tụ

Trong entry trước mình nói về vấn đề post-processing để thẩm định kết quả, chủ yếu xem xét mô hình về mặt vật lý.

Entry sau giới thiệu 1 số thủ thuật, liên quan nhiều hơn về mặt numerical của mô hình, khi mô phỏng không hội tụ :
http://info.simuleon.com/blog/6-tips-solving-non-c[MEDIA=youtube]nvergenc-with[/MEDIA]-abaqus-fea

Trong entry này thì đáng chú ý nhất là Tip cuối. Mình đã áp dụng rất nhiều, kể cả khi mô hình hội tụ hay không. Có thể chia làm 3 "mức độ", đầu tiên bạn thêm lựa chọn stabilize cho mô hình static, tiếp theo là chuyển mô hình qua dynamic implicit với lựa chọn q
sử dụng sơ đồ giải Euler backward, cuối cùng là chuyển qua dynamic explicit. Tuy nhiên, tất cả các cách trên đều làm thay đổi bản chất mô hình, kết quả có thể ra lớn hơn hoặc nhỏ hơn gấp 10-100 lần kết quả thật. Lời khuyên của mình là chỉ áp dụng để tìm nguyên nhân, sau đó thì cần nhất vẫn là xem xét lại điều kiện biên và loads. Khi không kịp deadline thì có thể giải tạm trong dynamic explicit để giảm bớt đòi hỏi điều kiện biên, nhưng nếu bài toán là static thì vẫn phải giải static. Ngoài ra chuyển mô hình từ 2d sang 3d hoặc ngược lại cũng là 1 phương án có thể thử, các thông số và thuật giải trong các phần mềm thường chạy trên 3d tốt hơn 2d.
 

Pathétique

Active Member
Author
Ðề: Blog mô phỏng và thiết kế

[Entry 6] Về các phần mềm mô phỏng (1)

Subject này chắc còn nói thêm nên mình để số (1).

Cũng như các phần mềm CAD, mình thấy nhiều bạn có vẻ fan cuồng phần mềm nào đó. Dĩ nhiên trừ các bạn bán hàng thì phải quảng cáo phần mềm của mình (cho đến khi các bạn làm bán hàng cho 1 hãng phần mềm khác) thì mình không nói. Ngoài ra còn có developer thì đương nhiên họ thích phần mềm của họ. Còn ở vai trò người dùng thì không cần thiết phải so sánh cực đoan.

Hồi học đại học mình học abaqus và ideas. Ideas này sau chỉ biết là nó mạnh thôi chứ không bao giờ có dịp dùng lại. Sau này làm luận án thì dùng cast3m suốt 4 năm, cho đến giờ vẫn dùng. Đi làm rồi lại dùng tiếp abaqus, thêm adams và marc, rồi nastran và solidworks simulation và deeplines.

Lúc mình phỏng vấn xin việc, sếp nói là cty dùng Marc, gần 20 năm nay rồi, sếp ngạc nhiên vì mình không biết Marc, mình cũng ngạc nhiên vì biết Marc được dùng để mô phỏng rất nhiều thứ, vì trước đó mình chỉ thấy trong labo có mua Marc về để sử dụng chức năng remesh và cũng chỉ dùng chức năng này. Sếp hỏi biết Nastran không mình cũng chỉ nghe tên và biết nó là phần mềm dùng nhiều nhất chứ thậm chí chưa xem giao diện nastran bao giờ. Hôm đó cặm cụi ngồi viết tay mấy trang giấy code Cast3m để giải bài toán sếp đưa ra, và cả sếp lẫn mình đều bắt tay chào nhau lúc ra về với niềm tin là code đó chạy được ! Chắc với niềm tin đó sếp nhận mình vào làm, tất nhiên cũng với niềm tin là mình sẽ làm tốt.

Vào làm tuần đầu tiên, mình làm 1 việc mà đến giờ nghĩ lại vẫn thấy ngớ ngẩn, là lấy mô hình Marc của sếp để giải lại bằng Cast3m để đảm bảo Marc là phần mềm đáng tin cậy ! Cũng may kết quả ra giống nhau đến chữ số thứ 5 sau dấu phẩy, nên mình yên tâm Marc là phần mềm tốt. Cả thế giới dùng Marc để kiểm tra Cast3m, chỉ mỗi mình mặt rất nghiêm túc thông báo cho sếp là đã kiểm tra mô hình của sếp và cả phần mềm Marc. Việc làm đó thật ngớ ngẩn, nhưng vẫn rất có ích, vì mình tìm được phương pháp đơn giản để làm biến thiên khối lượng riêng theo nhiệt độ trong Marc mà không cần thông qua chạy subroutine fortran, và dĩ nhiên riêng phần này thì phải dùng Cast3m để kiểm tra Marc. Thời điểm đó MSCsoftware (cty sở hữu Marc) trả lời mình là không thể, và cái subroutine fortran sếp mình viết cũng không thể dùng được nữa vì từ khi msc mua lại Marc thì họ đổi code nguồn rồi. Lúc đó, mình lại thêm ảo tưởng là mình giỏi hơn MSCsoftware, và recommand sếp là nên đổi qua Cast3m làm công cụ mô phỏng chính (sếp mình khá thoải mái, miễn là làm được việc, công cụ nào cũng được, sau đó viết lại bằng Marc cho sếp dùng là được), cho đến ngay tuần sau đó.

Mô hình tiếp sau đó mình làm là bài toán cơ đơn giản mô phỏng quá trình kéo, tuy nhiên contact rất nhiều vì kết cấu nhiều thành phần tương tác với nhau trên khắp bề mặt. Mình vẫn bắt đầu bằng Cast3m, vẫn để mắt bên Marc vì sếp đã làm chia lưới sẵn bằng Patran. Một giờ, hai giờ, lại ba giờ, Cast3m không chạy được 1/5 thời gian tính, thôi thì tranh thủ complete luôn mô hình Marc để nhỡ đến kì nghỉ mình tắm nắng ở bãi biển thì sếp đỡ gọi điện làm phiền vì sếp có thể dùng Marc để chạy. Thật bất ngờ là Marc chạy rất nhanh và ra kết quả rất khớp với thí nghiệm. Vẫn chưa chịu thua, mình nghĩ Cast3m bị đứng chỉ do parallel computing chưa tốt nên giảm kích thước mô hình bằng cách chuyển qua phần tử beam, nhưng tình hình contact còn tệ hơn, lưới interpenetrate vào nhau.
Chuyện có vẻ buồn cười, thời trẻ con của mình mà, nhưng câu chuyện về phần mềm nó là vậy. Mỗi phần mềm có điểm mạnh riêng, bạn chỉ chắc chắn về giới hạn khả năng của phần mềm khi vấn đề của bạn được RD của phần mềm công nhận là không giải quyết được, vì đó không phải là phần nằm trong chiến lược phát triển của họ. Hầu hết các vấn đề mình gửi cho support các hãng phần mềm, họ đều giải quyết được trong khi mình nghĩ không làm được.
Bạn có thể rất cuồng phần mềm của họ, nhưng họ cũng thoải mái hướng dẫn bạn nên sử dụng phần mềm nào đó khác, vì họ thừa biết các khách hàng không bao giờ chỉ phụ thuộc vào 1 phần mềm duy nhất. Khi mình đang dùng phần mềm 1 của hãng A và bị vướng bài toán không giải quyết được, hãng A nói phải mua thêm phần mềm 2 của họ mới giải quyết được, thì mình tìm hãng B có sản phẩm tương đương và mua luôn của hãng B cho dù đắt hơn. Với 1 số hãng, bạn mua phần mềm còn mặc cả chán hơn cả mua hàng chợ, họ có rất nhiều chiêu để ép giá bạn, bạn muốn mua thêm module này thì phải cần thêm module kia, chạy cái này trên server và nâng cấp toàn bộ cái kia lên gói nào đó, giá đội lên gấp 2-3 lần, khi đó bạn nhẹ nhàng kết thúc cuộc mua bán và gọi cho hãng phần mềm khác thôi.
 
Ðề: Blog mô phỏng và thiết kế

Em chưa từng nghe qua bất kì 1 phần mềm nào mà bác nhắc đến ngoại trừ Solidworks simulation (Nhưng cũng chưa dùng bh). :D.
cảm giác như mình ở thời kì đồ đá vậy.
 

Pathétique

Active Member
Author
Ðề: Blog mô phỏng và thiết kế

Em chưa từng nghe qua bất kì 1 phần mềm nào mà bác nhắc đến ngoại trừ Solidworks simulation (Nhưng cũng chưa dùng bh). :D.
cảm giác như mình ở thời kì đồ đá vậy.
Tại bạn chưa làm trong lĩnh vực này thôi, những phần mềm mình kể trên đều là tên tuổi quen thuộc, ngoài ra chắc bạn cũng nghe Ansys, Fluent, Hypermesh, Radioss, Pamcrash... Mỗi phần mềm chuyên biệt cho 1 lĩnh vực. Tuy nhiên không biết thì cũng không phải là lạc hậu. Đặc điểm của ngành mô phỏng là làm mô hình khá lâu trong khi project thường đòi hỏi deadline ngắn, vì thế 70% công việc mình làm trên excel, 1 phần lớn nữa mình phân cho ban CAD làm luôn trên solidworks simu hoặc flows, còn lại mình mới làm trên các phần mềm bạn chưa nghe tên.

Như mình nói ấy, việc biết nhiều phần mềm không quan trọng. Khi nào phải chuyển chỗ làm và cty mới họ dùng phần mềm khác thì mới cần học. Còn khi làm project, cảm thấy phần mềm hiện tại bị hạn chế thì bạn tìm hiểu các phần mềm khác, và thuê họ làm luôn phần project đó của bạn, tuy tốn thêm chi phí nhưng đảm bảo deadline và hạn chế nhiều rủi ro.
 
Ðề: Blog mô phỏng và thiết kế

Phương pháp DEM có tương tự SPH không a?

Phương pháp DEM em thấy có ví dụ là thả than đá lên thùng xe, mô phỏng này nhằm mục đích xác định tải trọng động, dao động hay gì ạ, có nhất thiết phải sử dụng tới nó không?
 

Pathétique

Active Member
Author
Ðề: Blog mô phỏng và thiết kế

Phương pháp DEM có tương tự SPH không a?

Phương pháp DEM em thấy có ví dụ là thả than đá lên thùng xe, mô phỏng này nhằm mục đích xác định tải trọng động, dao động hay gì ạ, có nhất thiết phải sử dụng tới nó không?
Trường hợp của em thì anh nghĩ dùng DEM. Đơn giản là vì SPH khác với SPH ở điểm cơ bản sau đây thôi : SPH dùng mô phỏng chất lưu (CFD, IFS...), còn DEM dùng mô phỏng môi trường hạt và đá cứng.

Report sau khá đơn giản ngắn gọn, tóm tắt 1 số phương pháp meshfree (không chia lưới), em đọc các phần đầu của mỗi mục là đủ hiểu để ứng dụng làm mô phỏng tốt rồi : https://tu-freiberg.de/fakult3/gt/feme/studium/Handbook_Particle_Methods.pdf
 

Pathétique

Active Member
Author
Ðề: Blog mô phỏng và thiết kế

[Entry 7] Dùng Scilab minh họa nội suy Lagrange

Một trong những bước cơ bản xây dựng formulation phần tử hữu hạn là nội suy Lagrange (lưu ý với phần tử beam với mô hình uốn Euler, tức đạo hàm bậc 4 thì nội suy Lagrange không còn dùng được).

Entry sau giới thiệu code Scilab để vẽ minh họa nội suy Lagrange, hữu ích cho các bạn học hoặc dạy finite element :
http://scilab.io/l
-interpolation/

Scilab là phần mềm tính toán khá tốt, giống như 1 phiên bản của Matlab, dĩ nhiên có phần bất tiện và tốc độ tính toán hơi chậm hơn 1 chút, nhưng hoàn toàn free và khả năng tính toán mô phỏng rất mạnh. Trong scilab tích hợp rất nhiều công cụ, từ số học đến tối ưu hóa, phần tử hữu hạn..., có thể dùng bổ trợ cho công việc mô phỏng.

Ngoài scilab thì python là ngôn ngữ scripting được dùng rất nhiều, ngày càng được support bởi nhiều phần mềm mô phỏng, dịp khác mình sẽ nói đến.
 

Pathétique

Active Member
Author
Ðề: Blog mô phỏng và thiết kế

[Entry 8] Sử dụng ngôn ngữ scripting xây dựng mô hình

Khi thiết lập 1 mô hình, cách trực quan nhất là mở giao diện đồ họa của phần mềm, dùng chuột vẽ parts, rồi assembly, rồi chia lưới..., lập thông số job, run và postprocess là xong.

Do thay đổi thiết kế, part nào đó to hơn 1 chút, ta lại mở mô hình trên giao diện đồ họa, vào sketch chỉnh lại kích thước. Nhưng sau đó thì mô hình chưa chạy lại ngay được. Trong phần lớn trường hợp, sau khi sửa sketch và regenerate assembly, 1 loạt thao tác phải lặp lại : muốn xác lập điều kiện biên thì phải chọn node set, thiết lập contact phải có surface, thế là lại phải click lại mấy miền chứa các nút, click để lấy surface. Với mô hình nhỏ khoảng 10 node sets, 10 surfaces, và bên thiết kế họ thay đổi 10 lần, bạn phải bấm bao nhiêu lần chuột và zoom rồi nhìn toét mắt mới xong mô hình.

Cũng do thay đổi thiết kế, 1 số part có sketch gồm nhiều thao tác lặp lại nhiều, 10 hình tròn có bán kính khác nhau, tiếp tuyến với 20 đoạn thẳng..., bấm và chọn điểm để vẽ part rất mỏi tay.

Phương án đơn giản hơn, dùng file mô hình dạng code (input, data...) với các keywords của solver, còn các node sets và surface cứ định nghĩa trong part trước khi ra instance miễn là khi chia lưới giữ sao cho dạng đánh số của nodes không đổi. Tiện hơn chút, nhưng vẫn mất công thao tác tạo file input, thêm bớt mấy keywords không có trong menu giao diện đồ họa, tái cấu trúc cho dễ nhìn, cắt ghép lưới này lưới kia...

Đó là pre-processing đến khi chạy job. Đến post-processing, để vẽ các evolutions thì lại mở viewer, sau đó copy paste hoặc cho ghi vào file excel, rồi mở excel và tính toán trên đó, và để làm những operation cao hơn, chẳng hạn tìm bán kính cong của biên dạng của part sau khi biến dạng, gradient nhiệt độ theo phương pháp tuyến của weldpool..., thì ta lại viết tiếp VBA để lập trình trong Excel.

Dĩ nhiên, mở viewer và làm vài thao tác trên cũng có thể rất nhanh, bạn lại tự hào rất giỏi VBA. Nhưng sau khi xong mô hình, để validate bạn phải chạy Design of experiences (DOE) và sau đó bảng dữ liệu thực tế gồm khoảng 300 bộ thông số, tức 300 mô hình, mỗi mô hình chạy trong 10h, sau đó bạn phải postprocess mỗi mô hình xuất dữ liệu của 100 nút. Sắp đi nghỉ hè rồi, mà sau kì nghỉ phải có kết quả báo cáo khách hàng ngay, chẳng lẽ bỏ mất vài ngày tắm nắng trên bãi biển để về làm postprocessing. Riêng việc mở viewer 300 lần nghĩ đã thấy chán, nhưng công việc thực nó là như thế, mỗi năm mình gặp 1 project như vậy.

Đó là vài trong rất nhiều những bất tiện khi mình mới dùng các phần mềm classical (abaqus chẳng hạn).

Một số code cho phép sử dụng ngôn ngữ người dùng, chẳng hạn Cast3m có ngôn ngữ Esope (1 dạng của Fortran) dành cho developer, và ngôn ngữ Gibiane dành cho user. Với Gibiane, bạn có đủ công cụ vòng lặp, điều kiện, phép toán trên ma trận, và nhiều operation phức tạp khác cho phép thao tác rất tiện lợi từ việc vẽ part, chia lưới cho đến post-processing.

Abaqus, và 1 số phần mềm khác, dù không có ngôn ngữ Gibiane, vẫn cho phép người dùng làm tất cả các thao tác trên rất nhanh và tiện thông qua ngôn ngữ scripting, phổ biến nhất là Python. Dĩ nhiên, developer của Abaqus không rảnh đi viết 1 phần mềm Matlab thứ 2 với đầy đủ các công cụ toán. Đây chính là 1 trong những lý do họ chọn Python, vì Python có các thư viện module với rất nhiều tiện ích tương đương với Matlab, chỉ với lệnh import bạn đã sở hữu đầy đủ và chỉ việc dùng. Với post-processing, Python cho phép làm tất cả trong 1 code, kể cả việc run các chương trình theo thứ tự và postprocess không cần mở viewer, nghĩa là ta yên tâm đi nghỉ trọn mấy tuần và về mở máy lên là thấy kết quả cuối cùng.

Nghe rất hấp dẫn, thật ra để làm được thì cũng lâu, nhìn có vẻ rất phức tạp, nhưng bạn có thể học nhanh hơn bạn nghĩ. Mỗi phần mềm có dạng hỗ trợ Python khác nhau. Với Marc, mscsoftware phát triển ngôn ngữ Mentat, gần giống Gibiane của Cast3m nhưng thiếu các chức năng vòng lặp, điều kiện và toán tử, tuy nhiên chỉ cần command generate python, code Mentat của bạn được nhúng trong Python, và nghiễm nhiên thừa hưởng di sản của script này. Với abaqus, không gì đơn giản hơn là mở file .rpy, nhìn lướt qua là bạn đã nhận ra những gì bạn vừa làm trên giao diện đồ họa. Dĩ nhiên còn rất nhiều thứ để học (training course về script python ở DS kéo dài tới 4 ngày !), nhưng vọc khoảng 1 tuần bạn đã có thể có thêm thời gian uống cafe và chơi facebook nhiều hơn rồi, và kì nghỉ cũng vì thế kéo dài và vui vẻ hơn.
 
Last edited:

Pathétique

Active Member
Author
Ðề: Blog mô phỏng và thiết kế

[Entry 9] Học ngoại ngữ (P1)]


Do sự cố mất dữ liệu của forum, mình post lại các entry theo những chủ đề đã post, tuy nhiên do không lưu lại nên viết chắc chắn khác. Tóm lại là mọi người cứ đọc thôi, chẳng cần quan tâm mới cũ làm gì. Cũng giống như ăn chuối vậy, nải chuối có vài quả bị thâm đen thì cứ quả mới mà ăn, chứ cứ ăn quả hỏng thì hôm sau quả mới lại thành hỏng, và cứ thế cả nải cứ vừa ăn vừa đếm ruồi giấm.


Theo dòng thời sự, mọi người đang tranh luận về học tiếng Trung và tiếng Nga. Mình thì chẳng quan tâm 2 thứ tiếng đó, vì không bắt buộc phải học, điều mình thấy là sự thay đổi đáng chú ý là việc học ngoại ngữ thứ hai thôi. Dĩ nhiên ngoại ngữ thứ nhất mà mình chọn vẫn là tiếng Anh, dù ai nói Nga nói Trung :D


Entry này mình nói về việc học ngoại ngữ thứ hai, và việc học tiếng Anh.


Ngoại ngữ thứ hai có quan trọng không ? Thật ra ở VN có một số trường cấp 3 đã dạy ngoại ngữ thứ hai từ lâu lắm rồi. Em họ mình học ở một trường như thế, ngoại ngữ thứ hai là tiếng Pháp. Năm lớp 12 đủ trình độ viết đoạn dài dài rồi, cô giáo cho bài về nhà viết để lấy điểm cuối kì, và nó không quên ông anh mà ngôn ngữ Moliere đã ngấm vào máu. Dĩ nhiên bài viết đó gây ngạc nhiên cho cô giáo, dù mình đã cố ý viết ngây ngô và sai ngữ pháp vài chỗ cho phù hợp trình độ của cô em họ. Nhưng qua dịp đó mình cũng biết trình độ tiếng Pháp, tức ngoại ngữ thứ hai, của các học sinh như thế nào. Nếu điểm trung bình thi đại học môn tiếng Anh của cả nước năm vừa rồi là 3.48/10, thì điểm tiếng Pháp của các em sẽ là 0.348/10, lưu ý là đề thi đại học rất dễ so với các kì thi chuẩn quốc tế, và không có phần kiểm tra kĩ năng nghe và nói.


Ở VN thì thực trạng là như vậy, phải chăng do trình độ giáo viên, hay do chương trình, hay do chất lượng chung của nền giáo dục... Cô giáo dạy tiếng Pháp của em mình rất giỏi tiếng Pháp, vì cô vốn xuất thân từ gia đình trí thức và học tiếng Pháp từ nhỏ thời trước 1975. Vấn đề là không phải chỉ ở VN thực trạng học ngoại ngữ thứ hai như thế. Mình ở Pháp, đi dạy tiếng Anh cho học sinh phổ thông, nhất là luyện thi các chứng chỉ Cambridge từ KET, PET đến IELTS..., và cả dạy phụ đạo học sinh yếu kém có nguy cơ trượt tốt nghiệp. Các học sinh của mình có thể trình độ tiếng Anh chênh nhau rất lớn, em thì ielts 7.0, em thì không biết chia thì hiện tại, nhưng trình độ ngoại ngữ thứ hai (các em thường chọn nhất là tiếng Đức, Tây Ban Nha, Ý...) thì không hơn nhau nhiều, phần lớn các em chỉ đạt trình độ 3.48/10 ! Năm học rồi mình dạy kèm tiếng Anh một em lớp 9, mất căn bản gần như không biết gì, cả học kì 1 điểm toàn 3-6/20, cuối năm học thi tốt nghiệp em đạt 15/20, mẹ em ấy mừng rơi nước mắt cảm ơn mình mãi. Mình hỏi em ấy tiếng Pháp được bao nhiêu, em ấy nói là 7/20, và nói đùa là biết vậy tao nhờ mày dạy kèm tiếng Pháp cho tao là người Pháp luôn. Mình hỏi tiếp thế tổng kết ngoại ngữ thứ hai là tiếng Đức được bao nhiêu, em ấy nói là không nằm trong tiêu chuẩn xét tốt nghiệp nên em ấy cho ra khỏi scope từ hồi giữa năm rồi.


Riêng bản thân mình cũng từng có kinh nghiệm học ngoại ngữ phụ. Mình nói phụ là vì với mình đó là ngoại ngữ thứ ba. Ngoại ngữ thứ hai của mình là tiếng Pháp, dùng hàng ngày, từ đi chợ cho đến viết luận án nên phải giỏi hơn cả tiếng Anh, nên không tính giống ngoại ngữ thứ hai của mọi người. Ngoại ngữ thứ ba của mình là tiếng Tây Ban Nha (Spanish). Hồi đó năm cuối đại học, môn kĩ sư và master đều học gần hết rồi, chẳng lẽ cả kì học có 3 môn, nên lấy thêm Spanish cho phong phú, vừa là ngôn ngữ rất phổ biến, vừa dễ học vì gần gần giống tiếng Pháp, thậm chí sau đó có thể hiểu cả tiếng Ý, đi chơi nói chuyện khắp châu Âu đến Bắc và Nam Mỹ.


"Cuộc sống mấy ai nào biết trước định mệnh và có mấy ai tự đổi thay đời mình" (cũng theo dòng thời sự tin tức anh Minh Thuận) ! Đúng, Minh Thuận có lý hơn bộ Hạt giống Tâm hồn "đời thay đổi khi chúng ta thay đổi". Mình đã thay đổi cố học cần cù thêm 1 ngoại ngữ nhưng đến giờ thì cuộc đời không có gì thay đổi. Sau học kì đó học khá tốt, có thể viết giới thiệu bản thân, đếm số, hỏi đường... thì vài tháng sau quên hết. Thậm chí hồi đầu còn có thú vui ghi vào CV là biết Spanish trình độ beginner, nhưng sau thấy thừa thãi và cũng buồn cười vì xấu hổ nên bỏ ra luôn. Điều duy nhất làm mình không tiếc khi học Spanish là hiểu biết thêm rất nhiều về văn hóa khối các nước nói tiếng Spanish, và thỉnh thoảng đùa nhại theo ngữ điệu rất hay và đặc trưng của Spanish.


Cái dở của bộ GD trong việc dạy ngoại ngữ thứ hai là ra chủ trương đúng nhưng cứ vòng vo tìm lý do giải thích rồi lại đưa ra lý do sai. Và trong việc dạy tiếng Nga và Trung cũng vậy, không nên giải thích nhiều, cứ để là ngoại ngữ thứ nhất với option không bắt buộc, ai cần thì học thôi, đằng này lại rào trước bằng bài báo học để giữ gìn sự trong sáng của tiếng Việt hay đủ các lý do khác thì chỉ càng lộ ra cái dại.


Vì sao người Pháp chọn tiếng Đức để học như ngoại ngữ chỉ sau tiếng Anh, đơn giản vì giao thương ở châu Âu dùng tiếng Đức rất nhiều, và chỉ vì lý do đó thôi chứ họ chẳng quan tâm đến học thuật hay chính trị gì, càng không phải vì tình làng nghĩa xóm hay cộng đồng dân tộc anh em. Có hôm ngồi ăn trưa, mọi người trong office hỏi mình ở VN mày có dân tộc thiểu số không, mình nói nước tao có 54 dân tộc anh em, xong mình hỏi lại họ ở Pháp có nhiều dân tộc anh em như thế không, mọi người nhìn nhau rồi bảo là không, chỉ sếp mình hay đùa, ông ấy nói có chứ, nước Pháp có 4 dân tộc anh em : da trắng, đen (châu Phi), châu Á và Ả rập, mọi người cười vang cả nhà ăn, đúng là cộng đồng mỗi dân tộc anh em này ngày càng gia tăng ở Pháp. Nhưng rất ít người Pháp chọn học ngôn ngữ của các dân tộc anh em này, có chăng là vì tính chất gia đình hay công việc thôi.


Tóm lại về việc chọn ngoại ngữ, hãy luôn rộng mở và háo hức học. Khi chọn ngoại ngữ hãy bỏ qua tất cả các lý do về học thuật với chính trị, chỉ xác định điều duy nhất là học để làm gì, có ích cho mình không, khi nào thì sẽ có ích, và mục tiêu về trình độ sẽ đạt được.


Với các bạn sinh viên, nếu không vì lý do công việc, thì thay vì suy nghĩ học tiếng Nga hay Trung, có những ngôn ngữ khác cả thế giới đều dùng và hiểu : Python, C, Java... !


Phần sau mình sẽ nói về việc chọn ngoại ngữ thứ nhất, và phương pháp học.
 
Last edited:

dovanhoc84

Active Member
Moderator
Ðề: Blog mô phỏng và thiết kế

thật sự thấy rất tiếc công sức của bác Pathétique
em có theo dõi mọi chủ đề bác viết, tiếc là em k thuộc bên phân tích nhưng đọc thấy rất hay.
 

Pathétique

Active Member
Author
Ðề: Blog mô phỏng và thiết kế

thật sự thấy rất tiếc công sức của bác Pathétique
em có theo dõi mọi chủ đề bác viết, tiếc là em k thuộc bên phân tích nhưng đọc thấy rất hay.
Cảm ơn anh đã quan tâm ạ. Em cũng hơi tiếc vì em viết vừa để chia sẻ vừa để lưu tài liệu tham khảo cho chính em, nên giờ mất thì phải đi tìm lại mỗi khi cần cũng mất thời gian, chưa kể nhiều bài tự viết khá dài mà em không save lại :(
 

Pathétique

Active Member
Author
Ðề: Blog mô phỏng và thiết kế

[Entry 10] Học ngoại ngữ (P2)


Hôm nay mình vừa thấy bài trên business insider, cũng về ngoại ngữ thứ hai, nhưng họ thống kê 9 ngoại ngữ mà công việc liên quan được trả lương cao nhất ở Anh. Theo thống kê này, tiếng Trung (xếp thứ 9) và tiếng Nga (xếp thứ 7) xếp hạng khá khiêm tốn, còn thua cả tiếng Nhật.
http://www.businessinsider.co.id/[M...MEDIA]-in-britain-2016-9/#7aTgU5CsK5yuS7o8.97


Nếu nói học tiếng nào đó vì nó là ngôn ngữ của nước láng giềng, thì sai hoàn toàn, nhìn bài báo trên, tiếng Đức được sử dụng nhiều hơn tiếng Pháp, dù Anh không chung biên giới nào với Đức cả.


Dĩ nhiên đó là ở nước Anh, còn ở VN chắc chắn sẽ khác, nhưng khác thế nào thì không ai chắc. Chỉ chắc 1 điều là vị trí của tiếng Anh là không ngôn ngữ nào thay thế được. Trừ khi bạn chắc chắn sau này sẽ học hoặc sống hoặc làm việc trong môi trường nói tiếng Trung hay Nga thì hãy học, còn chân đất mắt toét thì cứ tiếng Anh thôi. Nhỡ bất ngờ phải rẽ hướng sang môi trường tiếng Trung hay Nga, bạn cũng sẽ học được rất nhanh. Lính viễn chinh Pháp họ chỉ cần bình dân học vụ 1 tuần là giao tiếp tốt rồi, dù họ toàn là dân thất nghiệp tiếu ngạo giang hồ, đủ mọi quốc tịch Tàu, Nga, Ba Lan, Ả rập, Hungary..., không bằng cấp không trình độ, và cũng không giấy tờ cư trú hợp pháp luôn. Phương pháp học của họ cũng không có gì đặc biệt, cả lớp cứ ngồi quây với nhau, không sách giáo trình gì cả, có người tay không, có người có cuốn sổ nhỏ ghi chép thôi, giáo viên ghi 1 câu lên bảng và đọc, ví dụ "tôi cạo râu", bên cạnh có 1 người cầm dao cạo râu làm động tác, và từng người trong lớp đọc theo. Ba năm sau họ có thể nằm trong đội diễu binh ngày quốc khánh, và được nhập quốc tịch Pháp.


Cho nên cứ bình tĩnh sống, bình tĩnh học tiếng Anh.


Còn trong ngành kĩ sư, để đọc tài liệu, bạn yên tâm là tiếng Anh là đủ rồi. Khoa học kĩ thuật Nga đúng là rất phát triển, người Nga rất giỏi, nhưng người Việt mình qua nước ngoài gặp môi trường tốt còn giỏi hơn. Bạn mở sách cơ học vật liệu ra xem, mình Việt Nam cân cả đội Nga-Trung. Dù người Nga, Trung hay Việt thì cuối cùng cũng viết tài liệu xuất bản ra tiếng Anh thôi, còn mấy tài liệu họ không muốn dịch vì lý do confidential, thì cũng chẳng đến lượt bạn được nhìn thấy trang lời nói đầu đâu. Nếu bạn làm kĩ sư mua bán vũ khí, bạn yên tâm đi, bảo Putin nói tiếng Việt thì bạn mới kí hợp đồng mua thì ông ấy cũng học tiếng Việt. Khách hàng là thượng đế, bạn có thấy Thượng đế phải học ngôn ngữ của đất nước nào trên thế gian này không. Chừng nào VN làm được sản phẩm như sony, samsung hay apple thì bạn học tiếng các nước khác để bán hàng cũng chưa muộn. Và để làm được những sản phẩm đó, bạn vẫn phải bắt đầu bằng tiếng Anh, như người Nhật và Hàn đã từng, như thế mới là đúng quy trình, chứ đừng quá độ lên ....
 
U

umy

Ðề: Blog mô phỏng và thiết kế

Cảm ơn anh đã quan tâm ạ. Em cũng hơi tiếc vì em viết vừa để chia sẻ vừa để lưu tài liệu tham khảo cho chính em, nên giờ mất thì phải đi tìm lại mỗi khi cần cũng mất thời gian, chưa kể nhiều bài tự viết khá dài mà em không save lại :(
Thật đáng tiếc ! Sự cố làm mất một bài viết của anh Pathétique về mô phỏng, làm Dđ chậm tiến "5 năm" !
nếu ghi lại được các links hướng dẩn xem thêm được,

Nonlinear Analysis
http://www.mscsoftware.com/application/nonlinear-analysis

Autodesk Example Simulations
http://sustainabilityworkshop.autodesk.com/products/fea-exampl-simulation thì rất bổ ích.
 
Last edited by a moderator:

Pathétique

Active Member
Author
Ðề: Blog mô phỏng và thiết kế

Thật đáng tiếc ! Sự cố làm mất một bài viết của anh Pathétique về mô phỏng, làm Dđ chậm tiến "5 năm" !
nếu ghi lại được các links hướng dẩn xem thêm được,

Nonlinear Analysis
http://www.mscsoftware.com/application/nonlinear-analysis

Autodesk Example Simulations
http://sustainabilityworkshop.autod... với nhiều kinh nghiệm và advice rất giá trị.
 
Top