Cách đặt lực trong Ansys!

  • Thread starter Canh dong
  • Ngày mở chủ đề
C

Canh dong

Author
Mình đang giải bài toán Slab on Grade,bài toàn của mình là tìm sự phân bố ứng suất của một nhà xưởng dưới tác dụng của ngoại lực,nhà xưởng này là một tấm Slab đặt trên một nền đất gồm 3 lớp có tính chất khác nhau,mình đang gặp vấn đề đó là đặt ngoại lực lên tấm Slab nhưng không chuyền vào mô hình được,dưới đây là đoạn code của mình:
FINISH
/CLEAR,START
/TITLE,SLAB ON GRADE
/PREP7
ANTYPE,STATIC
! THONG SO HIN HOC TAM SAN

SLABWIDTH=3000 ! CHIEU RONG BAN SAN
SLABLENGTH=5000 ! CHIEU DAI BAN SAN
SLABTHICK=200 ! CHIEU DAY
! THONG SO CAC LOP DAT NEN

NLAYER=3
BASEWIDTH=3000 ! CHIEU RONG BAN SAN
BASELENGTH=5000
BASETHICK1=300
BASETHICK2=300
BASETHICK3=300

! DINH NGHIA CAC THONG SO VAT LIEU

! BE TONG
CONC_MAT=1
CONC_M300_E=0.3 !N/MM2
CONC_M300_PR=0.18

CONC_M250_E=0.25 !N/MM2
CONC_M250_PR=0.18

MAT_BTON_B30 = 1
MAT_BTON_B25 = 2
ELE_SHELL63 = 1
REAL_ELE_SHELL63=1


! DAT NEN
SOIL_MAT1= CONC_MAT +1
SOIL_BASE1_E = 0.9 !N/MM2
SOIL_BASE1_PR = 0.4

SOIL_MAT2=SOIL_MAT1 +1
SOIL_BASE2_E = 0.6 !N/MM2
SOIL_BASE2_PR = 0.4

SOIL_MAT3=SOIL_MAT2 +1
SOIL_BASE3_E = 0.21 !N/MM2
SOIL_BASE3_PR = 0.4

ELE_SOLID45 = 2
REAL_SOLID45=2


UNIFORM_LOAD=-0.00005 !N/MM2
LOAD = -5000000 !N

! DINH NGHIA LOAI PHAN TU

ETSLAB=1
ETBASE=2

ET,ETSLAB,SHELL63
ET,ETBASE,SOLID45
R,REAL_ELE_SHELL63,SLABTHICK
R,REAL_SOLID45,BASETHICK1
R,REAL_SOLID45,BASETHICK2
R,REAL_SOLID45,BASETHICK3



! KHAI BAO CAC DAC TRUNG VAT LIEU

MP,EX,CON_MAT,CONC_M300_E
MP,PRXY,CON_MAT,CONC_M300_PR

MP,EX,CON_MAT,CONC_M250_E
MP,PRXY,CON_MAT,CONC_M250_PR

MP,EX,SOIL_MAT1,SOIL_BASE1_E
MP,PRXY,SOIL_MAT1,SOIL_BASE1_PR

MP,EX,SOIL_MAT2,SOIL_BASE2_E
MP,PRXY,SOIL_MAT2,SOIL_BASE2_PR

MP,EX,SOIL_MAT3,SOIL_BASE3_E
MP,PRXY,SOIL_MAT3,SOIL_BASE3_PR

!TAO BAN SAN
K,1,0,0,0
K,2,0,SLABWIDTH,0
K,3,SLABLENGTH,SLABWIDTH,0
K,4,SLABLENGTH,0,0
!K,16,51*SLABLENGTH/100,51*SLABWIDTH/100,0
!K,17,30*SLABLENGTH/100,30*SLABWIDTH/100,0
!K,18,77*SLABLENGTH/100,77*SLABWIDTH/100,0
!K,19,15*SLABLENGTH/100,15*SLABWIDTH/100,0
!K,20,20*SLABLENGTH/100,20*SLABWIDTH/100,0
!K,21,5*SLABLENGTH/100,90*SLABWIDTH/100,0
!K,22,15*SLABLENGTH/100,85*SLABWIDTH/100,0
!K,23,10*SLABLENGTH/100,91*SLABWIDTH/100,0
A,1,2,3,4
!TAO CAC LOP DAT NEN
!TAO LOP DAT NEN THU NHAT TU TREN XUONG
K,1,0,0,0
K,2,0,BASEWIDTH,0
K,3,BASELENGTH,BASEWIDTH,0
K,4,BASELENGTH,0,0
K,5,0,0,-BASETHICK1
K,6,0,BASEWIDTH,-BASETHICK1
K,7,BASELENGTH,BASEWIDTH,-BASETHICK1
K,8,BASELENGTH,0,-BASETHICK1
V,1,2,3,4,5,6,7,8
!TAO LOP DAT NEN THU HAI TU TREN XUONG
K,5,0,0,-BASETHICK1
K,6,0,BASEWIDTH,-BASETHICK1
K,7,BASELENGTH,BASEWIDTH,-BASETHICK1
K,8,BASELENGTH,0,-BASETHICK1
K,9,0,0,-BASETHICK1-BASETHICK2
K,10,0,BASEWIDTH,-BASETHICK1-BASETHICK2
K,11,BASELENGTH,BASEWIDTH,-BASETHICK1-BASETHICK2
K,12,BASELENGTH,0,-BASETHICK1-BASETHICK2
V,5,6,7,8,9,10,11,12
!TAO LOP DAT NEN THU BA TU TREN XUONG
K,9,0,0,-BASETHICK1-BASETHICK2
K,10,0,BASEWIDTH,-BASETHICK1-BASETHICK2
K,11,BASELENGTH,BASEWIDTH,-BASETHICK1-BASETHICK2
K,12,BASELENGTH,0,-BASETHICK1-BASETHICK2
K,13,0,0,-BASETHICK1-BASETHICK2-BASETHICK3
K,14,0,BASEWIDTH,-BASETHICK1-BASETHICK2-BASETHICK3
K,15,BASELENGTH,BASEWIDTH,-BASETHICK1-BASETHICK2-BASETHICK3
K,16,BASELENGTH,0,-BASETHICK1-BASETHICK2-BASETHICK3
A,13,14,15,16
V,9,10,11,12,13,14,15,16
!VGLUE,ALL
!AGLUE,ALL
K,24,50*SLABLENGTH/100,50*SLABWIDTH/100,0
!SINH LUOI
!SINH LUOI SAN
ASEL,S,LOC,Z,0
AATT,MAT_BTON_B30,REAL_ELE_SHELL63,ELE_SHELL63
ESIZE,100
AMESH,1
ASEL,ALL
!SINH LUOI NEN 1

VSEL,S,LOC,Z,(-BASETHICK1)/2
VATT,SOIL_MAT1,REAL_SOLID45,ELE_SOLID45,0
ESIZE,100
VMESH,ALL
VSEL,ALL
!SINH LUOI NEN2
VSEL,S,LOC,Z,-BASETHICK1-(BASETHICK2)/2
VATT,SOIL_MAT2,REAL_SOLID45,ELE_SOLID45,0
ESIZE,100
VMESH,ALL
VSEL,ALL
!SINH LUOI NEN3
VSEL,S,LOC,Z,-BASETHICK1-BASETHICK2-(BASETHICK3)/2
VATT,SOIL_MAT3,REAL_SOLID45,ELE_SOLID45,0
ESIZE,100
VMESH,ALL
VSEL,ALL



FINISH
/SOLU
!ASEL,Type,Item,Comp,VMIN,VMAX,VINC,KSWP
!DIEU KIEN BIEN CHO SLAB
ASEL,S,LOC,Z,0
DA,ALL,UX,0
DA,ALL,UY,0
ASEL,ALL
!DIEU KIEN BIEN CHO MAT DAY
ASEL,S,LOC,Z,-BASETHICK1-BASETHICK2-BASETHICK3
DA,ALL,ALL,0
ASEL,ALL
!DIEU KIEN BIEN CHO MAT NGOAI CUNG BEN TRAI
!ASEL,S,LOC,X,0
!DA,ALL,UX,0
!DA,ALL,UY,0
!ASEL,ALL
!DIEU KIEN BIEN CHO MAT NGOAI CUNG BEN PHAI
!ASEL,S,LOC,X,BASELENGTH
!DA,ALL,UX,0
!DA,ALL,UY,0
!ASEL,ALL
!DIEU KIEN BIEN CHO MAT TRUOC
!ASEL,S,LOC,Y,0
!DA,ALL,UX,0
!DA,ALL,UY,0
!ASEL,ALL
!DIEU KIEN BIEN CHO MAT SAU CUNG
!ASEL,S,LOC,Y,BASEWIDTH
!DA,ALL,UX,0
!DA,ALL,UY,0
!ASEL,ALL
!DAT LUC
!SFA,REAL_ELE_SHELL63,1,PRESS,UNIFORM_LOAD
!SFTRAN
!F,16,FZ,LOAD
!F,17,FZ,LOAD
!F,18,FZ,LOAD
!F,19,FZ,LOAD
!F,20,FZ,LOAD
!F,21,FZ,LOAD
!F,22,FZ,LOAD
!F,23,FZ,LOAD
FK,24,FZ,LOAD
FTRAN

SOLVE
FINISH

/POST1
PLNSOL, U,Z, 0,1.0
PLDISP,0
PLDISP,1
PLNSOL, U,SUM, 0,1.0

Mọi người tham khảo rồi cho ý kiến về địa chỉ dovantrinh39@gmail.com nhé!Cảm ơn mọi người nhiều!:65:
 
Ðề: Cách đặt lực trong Ansys!

Xem qua câu lệnh em thấy rằng nếu đây là bài anh làm thì chắc anh hiểu ký tự dấu '!' ý nghĩa là gì?
'!' là ký tự không tham gia vào chương trình lệnh, nó chỉ có ý nghĩa làm rõ, giải thích hay ghi chú ở sau dấu !
Dòng code trên khi đặt lực:
!SFTRAN
!F,16,FZ,LOAD
!F,17,FZ,LOAD
!F,18,FZ,LOAD
!F,19,FZ,LOAD
!F,20,FZ,LOAD
!F,21,FZ,LOAD
!F,22,FZ,LOAD
!F,23,FZ,LOAD
Anh đã không để ý, nếu cho '!' đằng trước thì nó sẽ không nhận vào mô hình của anh và anh sẽ không đặt được lực, khi copy đoạn code của anh vào thì còn báo lỗi đặt lực ở Keypoint 24 (FK ?)

Đây là đoạn code e đã sửa, anh xem lại và anh kiểm tra lại vật liệu 3 lớp đó nhé!
/PREP7
ANTYPE,STATIC
! THONG SO HIN HOC TAM SAN

SLABWIDTH=3000 ! CHIEU RONG BAN SAN
SLABLENGTH=5000 ! CHIEU DAI BAN SAN
SLABTHICK=200 ! CHIEU DAY
! THONG SO CAC LOP DAT NEN

NLAYER=3
BASEWIDTH=3000 ! CHIEU RONG BAN SAN
BASELENGTH=5000
BASETHICK1=300
BASETHICK2=300
BASETHICK3=300

! DINH NGHIA CAC THONG SO VAT LIEU

! BE TONG
CONC_MAT=1
CONC_M300_E=0.3 !N/MM2
CONC_M300_PR=0.18

CONC_M250_E=0.25 !N/MM2
CONC_M250_PR=0.18

MAT_BTON_B30 = 1
MAT_BTON_B25 = 2
ELE_SHELL63 = 1
REAL_ELE_SHELL63=1


! DAT NEN
SOIL_MAT1= CONC_MAT +1
SOIL_BASE1_E = 0.9 !N/MM2
SOIL_BASE1_PR = 0.4

SOIL_MAT2=SOIL_MAT1 +1
SOIL_BASE2_E = 0.6 !N/MM2
SOIL_BASE2_PR = 0.4

SOIL_MAT3=SOIL_MAT2 +1
SOIL_BASE3_E = 0.21 !N/MM2
SOIL_BASE3_PR = 0.4

ELE_SOLID45 = 2
REAL_SOLID45=2


UNIFORM_LOAD=-0.00005 !N/MM2
LOAD = -5000000 !N

! DINH NGHIA LOAI PHAN TU

ETSLAB=1
ETBASE=2

ET,ETSLAB,SHELL63
ET,ETBASE,SOLID45
R,REAL_ELE_SHELL63,SLABTHICK
R,REAL_SOLID45,BASETHICK1
R,REAL_SOLID45,BASETHICK2
R,REAL_SOLID45,BASETHICK3



! KHAI BAO CAC DAC TRUNG VAT LIEU

MP,EX,CON_MAT,CONC_M300_E
MP,PRXY,CON_MAT,CONC_M300_PR

MP,EX,CON_MAT,CONC_M250_E
MP,PRXY,CON_MAT,CONC_M250_PR

MP,EX,SOIL_MAT1,SOIL_BASE1_E
MP,PRXY,SOIL_MAT1,SOIL_BASE1_PR

MP,EX,SOIL_MAT2,SOIL_BASE2_E
MP,PRXY,SOIL_MAT2,SOIL_BASE2_PR

MP,EX,SOIL_MAT3,SOIL_BASE3_E
MP,PRXY,SOIL_MAT3,SOIL_BASE3_PR

!TAO BAN SAN
K,1,0,0,0
K,2,0,SLABWIDTH,0
K,3,SLABLENGTH,SLABWIDTH,0
K,4,SLABLENGTH,0,0
!K,16,51*SLABLENGTH/100,51*SLABWIDTH/100,0
!K,17,30*SLABLENGTH/100,30*SLABWIDTH/100,0
!K,18,77*SLABLENGTH/100,77*SLABWIDTH/100,0
!K,19,15*SLABLENGTH/100,15*SLABWIDTH/100,0
!K,20,20*SLABLENGTH/100,20*SLABWIDTH/100,0
!K,21,5*SLABLENGTH/100,90*SLABWIDTH/100,0
!K,22,15*SLABLENGTH/100,85*SLABWIDTH/100,0
!K,23,10*SLABLENGTH/100,91*SLABWIDTH/100,0
A,1,2,3,4
!TAO CAC LOP DAT NEN
!TAO LOP DAT NEN THU NHAT TU TREN XUONG
K,1,0,0,0
K,2,0,BASEWIDTH,0
K,3,BASELENGTH,BASEWIDTH,0
K,4,BASELENGTH,0,0
K,5,0,0,-BASETHICK1
K,6,0,BASEWIDTH,-BASETHICK1
K,7,BASELENGTH,BASEWIDTH,-BASETHICK1
K,8,BASELENGTH,0,-BASETHICK1
V,1,2,3,4,5,6,7,8
!TAO LOP DAT NEN THU HAI TU TREN XUONG
K,5,0,0,-BASETHICK1
K,6,0,BASEWIDTH,-BASETHICK1
K,7,BASELENGTH,BASEWIDTH,-BASETHICK1
K,8,BASELENGTH,0,-BASETHICK1
K,9,0,0,-BASETHICK1-BASETHICK2
K,10,0,BASEWIDTH,-BASETHICK1-BASETHICK2
K,11,BASELENGTH,BASEWIDTH,-BASETHICK1-BASETHICK2
K,12,BASELENGTH,0,-BASETHICK1-BASETHICK2
V,5,6,7,8,9,10,11,12
!TAO LOP DAT NEN THU BA TU TREN XUONG
K,9,0,0,-BASETHICK1-BASETHICK2
K,10,0,BASEWIDTH,-BASETHICK1-BASETHICK2
K,11,BASELENGTH,BASEWIDTH,-BASETHICK1-BASETHICK2
K,12,BASELENGTH,0,-BASETHICK1-BASETHICK2
K,13,0,0,-BASETHICK1-BASETHICK2-BASETHICK3
K,14,0,BASEWIDTH,-BASETHICK1-BASETHICK2-BASETHICK3
K,15,BASELENGTH,BASEWIDTH,-BASETHICK1-BASETHICK2-BASETHICK3
K,16,BASELENGTH,0,-BASETHICK1-BASETHICK2-BASETHICK3
A,13,14,15,16
V,9,10,11,12,13,14,15,16
!VGLUE,ALL
!AGLUE,ALL
K,24,50*SLABLENGTH/100,50*SLABWIDTH/100,0
!SINH LUOI
!SINH LUOI SAN
ASEL,S,LOC,Z,0
AATT,MAT_BTON_B30,REAL_ELE_SHELL63,ELE_SHELL63
ESIZE,100
AMESH,1
ASEL,ALL
!SINH LUOI NEN 1

VSEL,S,LOC,Z,(-BASETHICK1)/2
VATT,SOIL_MAT1,REAL_SOLID45,ELE_SOLID45,0
ESIZE,100
VMESH,ALL
VSEL,ALL
!SINH LUOI NEN2
VSEL,S,LOC,Z,-BASETHICK1-(BASETHICK2)/2
VATT,SOIL_MAT2,REAL_SOLID45,ELE_SOLID45,0
ESIZE,100
VMESH,ALL
VSEL,ALL
!SINH LUOI NEN3
VSEL,S,LOC,Z,-BASETHICK1-BASETHICK2-(BASETHICK3)/2
VATT,SOIL_MAT3,REAL_SOLID45,ELE_SOLID45,0
ESIZE,100
VMESH,ALL
VSEL,ALL



FINISH
/SOLU
!ASEL,Type,Item,Comp,VMIN,VMAX,VINC,KSWP
!DIEU KIEN BIEN CHO SLAB
ASEL,S,LOC,Z,0
DA,ALL,UX,0
DA,ALL,UY,0
ASEL,ALL
!DIEU KIEN BIEN CHO MAT DAY
ASEL,S,LOC,Z,-BASETHICK1-BASETHICK2-BASETHICK3
DA,ALL,ALL,0
ASEL,ALL

!DIEU KIEN BIEN CHO MAT NGOAI CUNG BEN TRAI
ASEL,S,LOC,X,0
DA,ALL,UX,0
DA,ALL,UY,0
ASEL,ALL

!DIEU KIEN BIEN CHO MAT NGOAI CUNG BEN PHAI
ASEL,S,LOC,X,BASELENGTH
DA,ALL,UX,0
DA,ALL,UY,0
ASEL,ALL

!DIEU KIEN BIEN CHO MAT TRUOC
ASEL,S,LOC,Y,0
DA,ALL,UX,0
DA,ALL,UY,0
ASEL,ALL

!DIEU KIEN BIEN CHO MAT SAU CUNG
ASEL,S,LOC,Y,BASEWIDTH
DA,ALL,UX,0
DA,ALL,UY,0
ASEL,ALL

!DAT LUC
SFA,REAL_ELE_SHELL63,1,PRESS,UNIFORM_LOAD
SFTRAN
F,16,FZ,LOAD
F,17,FZ,LOAD
F,18,FZ,LOAD
F,19,FZ,LOAD
F,20,FZ,LOAD
F,21,FZ,LOAD
F,22,FZ,LOAD
F,23,FZ,LOAD
F,24,FZ,LOAD
FTRAN

SOLVE
FINISH

/POST1
PLNSOL, U,Z, 0,1.0
PLDISP,0
PLDISP,1
PLNSOL, U,SUM, 0,1.0
Đây là kết quả.
 
C

Canh dong

Author
Ðề: Cách đặt lực trong Ansys!

Xem qua câu lệnh em thấy rằng nếu đây là bài anh làm thì chắc anh hiểu ký tự dấu '!' ý nghĩa là gì?
'!' là ký tự không tham gia vào chương trình lệnh, nó chỉ có ý nghĩa làm rõ, giải thích hay ghi chú ở sau dấu !
Dòng code trên khi đặt lực:

Anh đã không để ý, nếu cho '!' đằng trước thì nó sẽ không nhận vào mô hình của anh và anh sẽ không đặt được lực, khi copy đoạn code của anh vào thì còn báo lỗi đặt lực ở Keypoint 24 (FK ?)

Đây là đoạn code e đã sửa, anh xem lại và anh kiểm tra lại vật liệu 3 lớp đó nhé!


Đây là kết quả.
Đầu tiên nhìn vào kết quả tôi thấy chưa phù hợp lắm vì đơn vị tôi đang để là mm mà kết quả chuyển vị lớn nhất tới 237,666(m),đây là kết quả không thể chấp nhận được.Thứ hai em chỉ chỉnh lại là xóa hết dấu ! nên tôi thấy chưa hài lòng lắm vì nếu em để dấu ! trước chỗ đặt lực phân bố thì còn lại lực tập trung,nếu em giải thì chuyển vị bằng 0,đây chính là chỗ thắc mắc của tôi.Ý tôi hỏi là tại sao lực tập trung không truyền vào trong mô hình được!Xin cảm ơn!
 
C

Canh dong

Author
Ðề: Cách đặt lực trong Ansys!

Đầu tiên nhìn vào kết quả tôi thấy chưa phù hợp lắm vì đơn vị tôi đang để là mm mà kết quả chuyển vị lớn nhất tới 237,666(m),đây là kết quả không thể chấp nhận được.Thứ hai em chỉ chỉnh lại là xóa hết dấu ! nên tôi thấy chưa hài lòng lắm vì nếu em để dấu ! trước chỗ đặt lực phân bố thì còn lại lực tập trung,nếu em giải thì chuyển vị bằng 0,đây chính là chỗ thắc mắc của tôi.Ý tôi hỏi là tại sao lực tập trung không truyền vào trong mô

hình được!Xin cảm ơn!
Đây là kết quả khi không có lực tập trung mà chỉ có lực phân bố!





 
Ðề: Cách đặt lực trong Ansys!

như theo e tìm hiểu và học thì nếu có '!' ví dụ: !F thì chương trình sẽ không hiểu cú pháp đặt lực của anh. Đơn vị là lúc anh khai báo ở đầu, em chỉ bỏ dấu ! thôi.
chạy thì không báo lỗi, chỉ có điều vật liệu của 3 tấm anh xem lại. Có gì cùng trao đổi anh nhé@
 
C

Canh dong

Author
Ðề: Cách đặt lực trong Ansys!

Tất nhiên là khi lập trình phải biết tác dụng của dấu "!" rồi em,anh cho dấu "!" vào để thử chạy chương trình như thế nào thôi,quan trọng là ở chổ đặt lực tập trung đó,em có thể tham khảo Thầy giáo dạy em để giúp anh nha,cám ơn em!
 
Ðề: Cách đặt lực trong Ansys!

Với bài này có thể làm trong Ansysworkbench được không anh? em thấy nếu là 1 tấm thì làm được, còn 3 tấm em chưa thử.
 
C

Canh dong

Author
Ðề: Cách đặt lực trong Ansys!

Em thử làm coi,ý kiến hay đấy,anh cũng thử coi vì anh chưa tìm hiểu về nó nhiều lắm,nhưng nếu viết code thì có thể dễ dàng chỉnh sửa khi mình cần còn trong Workbench thì mình làm trên giao diện thì khó sửa chữa hơn!mọi người trong diễn đàn này có rheer cùng tham gia được không bởi vì Ansys là 1 phần mềm rất hay!
 
Ðề: Cách đặt lực trong Ansys!

Nếu làm trong Workbench thì cũng dễ dàng sửa lại mô hình, vật liệu và các điều kiện ràng buộc như sửa lại các mô hình trong các phần mềm thiết kế 3D khác.
Nếu anh có thể định nghĩa được 3 tấm vật liệu khác nhau thì em nghĩ là thao tác bài toán này còn dễ và tiết kiệm được thời gian hơn là tự viết Code. :)
 
B

blue sky

Author
Ðề: Cách đặt lực trong Ansys!

ANSYS Mechanical APDL nó chặt chẽ hơn rất nhiều so với Workbench bạn à, Workbench được xem như con cuả ANSYS Mechanical APDL do nó chỉ triết xuất những gì gon nhất để dùng cho thương mại là chính (dễ sử dụng tính toán nhanh) nhưng hầu hết các thuật toán giải đều là tự động mình can thiệp được vào rất khiêm tốn, nếu can thiệp dc thì phải dùng câu lênh "command" khá khó khăn=> Do vậy với bài toán phức tạp thì độ chính xác kết quả tính toán giảm.
Các yếu điểm này ANSYS Mechanical APDL có thể hoàn toàn giải quyết. CÒn phần code của ANSYS Mechanical APDL mình có thể tự viết hoặc dùng chuột kích thì cuối cùng ta vẫn thu dc các dòng code như bạn viết ở trên.

Nhưng Khi bạn chuyển được tất cả các câu lệnh từ ANSYS Mechanical APDL sang Workbench thì ANSYS Workbench trở nên rất mạnh và rất nhanh gọn ( quá tuyệt vời)=>> điều này thật khó.
 
Top