Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 159 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
159
Dung lượng
3,47 MB
Nội dung
BỘ GIÁO DỤC VÀ ĐÀO TẠO BỘ QUỐC PHÒNG VIỆN KHOA HỌC VÀ CÔNG NGHỆ QUÂN SỰ NGUYỄN THANH BÌNH NGHIÊN CỨU ẢNH HƢỞNG CỦA MỘT SỐ THAM SỐ ĐỘNG HỌC, ĐỘNG LỰC HỌC ĐẾN ĐỘ BỀN KẾT CẤU THÂN VÀ CÁNH TÊN LỬA HÀNH TRÌNH ĐỐI HẢI LUẬN ÁN TIẾN SĨ KỸ THUẬT HÀ NỘI - 2018 BỘ GIÁO DỤC VÀ ĐÀO TẠO BỘ QUỐC PHÒNG VIỆN KHOA HỌC VÀ CÔNG NGHỆ QUÂN SỰ NGUYỄN THANH BÌNH NGHIÊN CỨU ẢNH HƢỞNG CỦA MỘT SỐ THAM SỐ ĐỘNG HỌC, ĐỘNG LỰC HỌC ĐẾN ĐỘ BỀN KẾT CẤU THÂN VÀ CÁNH TÊN LỬA HÀNH TRÌNH ĐỐI HẢI Chuyên ngành: CƠ KỸ THUẬT Mã số: 9520101 LUẬN ÁN TIẾN SĨ KỸ THUẬT NGƢỜI HƢỚNG DẪN KHOA HỌC: PGS.TS Nguyễn Minh Tuấn TS Phan Tƣơng Lai HÀ NỘI - 2018 i LỜI CAM ĐOAN Tôi xin cam đoan, cơng trình nghiên cứu riêng tơi Các số liệu, kết trình bày luận án trung thực chưa cơng bố cơng trình khác, liệu tham khảo trích dẫn đầy đủ Hà Nội, ngày tháng năm 2018 TÁC GIẢ LUẬN ÁN Nguyễn Thanh Bình ii LỜI CẢM ƠN Luận án thực Viện Khoa học Công nghệ qn sự: với lịng kính trọng biết ơn sâu sắc, xin chân thành cảm ơn PGS.TS Nguyễn Minh Tuấn, TS Phan Tương Lai tận tình hướng dẫn tơi suốt q trình hồn thành luận án Tác giả xin chân thành cản ơn ban lãnh đạo, huy Viện Khoa học Công nghệ quân sự, Viện Tên lửa, Phịng Đào tạo, Trung tâm Cơng nghệ Cơ khí xác, phịng Thân cánh/Viện Tên lửa đồng nghiệp tạo điều kiện, hỗ trợ, giúp đỡ thời gian học tập, nghiên cứu Xin chân thành cảm ơn nhà khoa học, bạn bè gia đình quan tâm giúp đỡ, đóng góp nhiều ý kiến quý báu, cỗ vũ động viên tơi hồn thành cơng trình nghiên cứu khoa học iii MỤC LỤC Trang DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT vi DANH MỤC CÁC BẢNG xi DANH MỤC CÁC HÌNH VẼ xi MỞ ĐẦU Chƣơng TỔNG QUAN VỀ CÁC VẤN ĐỀ NGHIÊN CỨU ĐỘ BỀN THÂN VÀ CÁNH TÊN LỬA ĐỐI HẢI 1.1 Tình hình nghiên cứu nước 1.1.1 Tình hình nghiên cứu ngồi nước 1.1.2 Tình hình nghiên cứu nước 1.2 Tổng quan kết cấu thân, cánh TLĐH 12 1.3 Tổng quan tham số động học, động lực học tính tốn độ bền kết cấu thân, cánh TLĐH 13 1.4 Những vấn đề chung ứng dụng phương pháp PTHH giải toán học 14 1.5 Kết luận chương 15 Chƣơng XÂY DỰNG MƠ HÌNH ĐỘNG LỰC HỌC VÀ XÁC ĐỊNH CÁC TRƢỜNG HỢP CHỊU TẢI LỚN NHẤT 16 2.1 Tải trọng tác động lên tên lửa trình chuyển động 16 2.1.1 Lực hấp dẫn 16 2.1.2 Khí 17 2.1.3 Lực đẩy 18 2.1.4 Các lực khí động 18 2.1.5 Các lực điều khiển 25 2.1.6 Các mômen lực 27 2.1.7 Các mômen cản dịu 30 2.2 Xây dựng hệ phương trình chuyển động TLĐH 33 2.2.1 Xây dựng phương trình chuyển động tổng quát 33 iv 2.2.2 Xác định tham số phục vụ giải tốn tính quỹ đạo 36 2.2.3 Các số liệu để tính tốn quỹ đạo bay TLĐH 40 2.2.4 Thuật tốn ghép nối mơ chuyển động tên lửa 42 2.2.5 Kết mô phân tích 44 2.3 Xác định trường hợp chịu tải lớn thân cánh tên lửa 46 2.4 Kết luận chương 51 Chƣơng XÂY DỰNG MƠ HÌNH VÀ THUẬT TỐN PHƢƠNG PHÁP PHẦN TỬ HỮU HẠN TÍNH TỐN TRƢỜNG ỨNG SUẤT BIẾN DẠNG THÂN VÀ CÁNH TÊN LỬA ĐỐI HẢI 52 3.1 Thiết lập mơ hình 52 3.2 Xây dựng thuật toán phương pháp PTHH xác định trường ứng suất biến dạng thân TLĐH sử dụng phần tử phẳng dạng tam giác 53 3.2.1 Xác định ma trận độ cứng phần tử tam giác trạng thái màng 55 3.2.2 Xác định ma trận độ cứng phần tử tam giác phẳng chịu uốn [Kue] 59 3.2.3 Xác định ma trận độ cứng tổng thể [Ke] phần tử tam giác đồng thời chịu lực màng chịu lực uốn 68 3.2.4 Chuyển hệ trục tọa độ 70 3.3 Xây dựng thuật toán phương pháp PTHH xác định trường ứng suất biến dạng cánh TLĐH sử dụng phần tử phẳng dạng tam giác 72 3.4 Kiểm chứng tính đắn mơ hình tốn 76 3.5 Kết luận chương 79 Chƣơng KHẢO SÁT ẢNH HƢỞNG CỦA MỘT SỐ THAM SỐ ĐỘNG HỌC, ĐỘNG LỰC HỌC ĐẾN ĐỘ BỀN KẾT CẤU THÂN VÀ CÁNH TÊN LỬA ĐỐI HẢI 81 4.1 Mơ hình tính tốn 82 4.2 Nghiệm bền kết cấu thân cánh tên lửa số trường hợp chịu tải nguy hiểm 87 v 4.2.1 Nghiệm bền kết cấu thân tên lửa 87 4.2.2 Nghiệm bền kết cấu cánh nâng 93 4.2.3 Nghiệm bền kết cấu cánh lái 97 4.3 Khảo sát ảnh hưởng vận tốc bay hành trình đến độ bền kết cấu thân tên lửa 101 4.4 Khảo sát ảnh hưởng vận tốc bay hành trình đến độ bền kết cấu cánh nâng 102 4.5 Khảo sát ảnh hưởng số tham số đến độ bền kết cấu cánh lái 103 4.5.1 Ảnh hưởng vận tốc 103 4.5.2 Ảnh hưởng góc lệch cánh lái 104 4.6 Kết luận chương 105 KẾT LUẬN 107 DANH MỤC CÁC CƠNG TRÌNH KHOA HỌC ĐÃ CƠNG BỐ 109 TÀI LIỆU THAM KHẢO 110 PHỤ LỤC vi DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT ma trận đàn hồi trạng thái màng [A] m ma trận số trạng thái màng u [A ] ma trận số trạng thái uốn [B] ma trận tính biến dạng [A ] m ma trận biến dạng màng [B ] u [B ] ma trận biến dạng chịu uốn ' Cx, Cy, C y, Cx1, Cy1, C'y1, CQ, CR, C'R C xCN hệ số khí động hệ số cản cánh nâng góc αCN = 00 C yCN đạo hàm hệ số lực pháp cánh nâng theo αCN CxCL hệ số cản cánh lái góc αCL = 00 C yCL đạo hàm hệ số lực pháp cánh lái theo αCL [D] ma trận đàn hồi trạng thái uốn E môđun đàn hồi vật liệu F lực tác dụng tương đương lực tác động lên hệ thống Fa tiết diện mặt cắt khí ống phóng Fđco lực đẩy động F0đco lực đẩy động mực nước biển f_xz toạ độ tâm áp trục Ox tính theo mặt phẳng nâng Oxz f_xy toạ độ tâm áp trục Ox tính theo mặt phẳng dạt ngang Oxy *e {F } véctơ lực hệ tọa độ tổng thể {g} véctơ lực khối tác dụng lên phần tử [H] ma trận tính ứng suất m ma trận ứng suất – chuyển vị trạng thái màng ue [H ] ma trận ứng suất – chuyển vị phần tử chịu uốn Jx, J y, Jz mơmen qn tính tên lửa hệ tọa độ liên kết Oxyz Kc động lượng hệ thống [H ] vii K ma trận độ cứng tổng thể K ' ma trận độ cứng tổng thể hệ tọa độ x’y’z’ [K]e ma trận độ cứng phần tử *e ma trận độ cứng phần tử hệ tọa độ tổng thể me ma trận độ cứng phần tử trạng thái màng ue [K ] ma trận độ cứng phần tử chịu uốn [L]e ma trận định vị phần tử [K ] [K ] mô men động lượng hệ thống so với trọng tâm hệ thống (c ) c L số Mach M (c) M mô men tổng cộng lực trọng tâm hệ thống {M} véctơ mômen m khối lượng tên lửa mz đạo hàm hệ số mơ men chúc ngóc mz theo góc mz đạo hàm hệ số mô men chúc ngóc mz theo góc xoay cánh lái m y đạo hàm hệ số mô men hướng my theo góc trượt cạnh mz z đạo hàm hệ số mơ men cản dịu kênh chúc ngóc theo tốc độ góc quay quanh trục Oz m x đạo hàm hệ số mơ men nghiêng mx theo góc trượt cạnh my y đạo hàm hệ số mơ men cản dịu kênh hướng theo tốc độ góc quay quanh trục Oy hệ số mô men nghiêng lề xoay cánh đuôi (cánh lái) m_shar m x x đạo hàm hệ số mô men cản dịu kênh nghiêng theo tốc độ góc quay quanh trục Ox mx1 , my1 , mz1 hệ số chống xóc khí động [N] ma trận hàm dạng {N} véctơ nội lực màng viii nx , ny , nz hệ số tải theo phương Ox, Oy, Oz {P} véc tơ lực mặt {P}e véctơ tải trọng nút phần tử [P(x,y)] ma trận đơn thức P véctơ tải trọng nút gồm phần tử biết b P véctơ tải trọng gồm phần tử chưa biết lại P P véctơ tải trọng nút tổng thể P ' véctơ tải trọng nút tổng thể hệ tọa độ x’y’z’ p áp suất khơng khí po áp suất khí mực nước biển pH áp suất khí độ cao H q véctơ chứa tất bậc tự biết q 1 véctơ chứa bậc tự chưa biết lại q {q}e véctơ chuyển vị nút phần tử hệ tọa độ xyz {q’}e véctơ chuyển vị nút phần tử hệ tọa độ tổng thể x’y’z’ R số nút hệ R* số khí động r số nút phần tử Sa tiết diện mặt cắt khí loa SP diện tích cánh lái s số bậc tự nút [T]e ma trận chuyển thành phần chuyển vị nút từ hệ tọa độ tổng thể b x’y’z’ sang hệ tọa độ xyz [T] ma trận chuyển hệ trục tọa độ * [T ] ma trận cosin phương u,v chuyển vị mặt phẳng theo trục Ox Oy tương ứng {u(x,y,z)} véctơ chuyển vị P-16 frm_output->StringGrid1->Cells[3][0]=" h ,m"; frm_output->StringGrid1->Cells[4][0]=" z, m"; frm_output->StringGrid1->Cells[5][0]=" Teta, do"; frm_output->StringGrid1->Cells[6][0]=" alfa"; frm_output->StringGrid1->Cells[7][0]=" beta"; frm_output->StringGrid1->Cells[8][0]=" Psi"; frm_output->StringGrid1->Cells[9][0]=" P"; TRect R = frm_output->StringGrid1->CellRect(2, 2); frm_output->StringGrid1->Canvas->Brush->Color = clRed; frm_output->StringGrid1->Canvas->FillRect(R); int dem=0; for (int blin=0; blin StringGrid1->RowCount=dem; frm_output->StringGrid1->Cells[0][dem]=FloatToStrF(MTt[blin+1],ffFixed,7,3); frm_output->StringGrid1->Cells[1][dem]=FloatToStrF(MTv[blin+1],ffFixed,7,3); frm_output->StringGrid1->Cells[2][dem]=FloatToStrF(MTx[blin+1],ffFixed,7,3); frm_output->StringGrid1->Cells[3][dem]=FloatToStrF(MTy[blin+1],ffFixed,7,3); frm_output->StringGrid1->Cells[4][dem]=FloatToStrF(MTz[blin+1],ffFixed,7,3); frm_output->StringGrid1->Cells[5][dem]=FloatToStrF(MTTet[blin+1]*rad,ffFixed,7,3); frm_output->StringGrid1->Cells[6][dem]=FloatToStrF(MTalf[blin+1],ffFixed,7,3); frm_output->StringGrid1->Cells[7][dem]=FloatToStrF(MTbet[blin+1],ffFixed,7,3); frm_output->StringGrid1->Cells[8][dem]=FloatToStrF(MTPsi[blin+1],ffFixed,7,3); frm_output->StringGrid1->Cells[9][dem]=FloatToStrF(MTP[blin+1],ffFixed,7,3); } } } void Drawgraph() { for(int i=counter-1; i>=1; i ) { frm_graf->Chart1->Series[0]->AddXY(MTt[i],MTv[i],"",clRed); frm_graf->Chart2->Series[0]->AddXY(MTt[i],MTy[i],"",clFuchsia); frm_graf->Chart3->Series[0]->AddXY(MTx[i],MTy[i],"",clBlue); frm_graf->Chart4->Series[0]->AddXY(MTt[i],MTTet[i]*180/3.14,"",clFuchsia); } } void fastcall Tfrm_main::FormDeactivate(TObject *Sender) { Tinhtoan1->Enabled=True; Result1->Enabled=True; } void fastcall Tfrm_main::Xemktqu1Click(TObject *Sender) { ShellExecute(Handle,NULL,"ketquatinh.txt",NULL,NULL,SW_MAXIMIZE); } void fastcall Tfrm_main::Timer1Timer(TObject *Sender) { static int j = 1; if( j Width = bm[j]->Width;//+100; frm_main->Height = bm[j]->Height;//+100; Im1->Height=bm[j]->Height+5; Im1->Width= bm[j]->Width+5; frm_main->AlphaBlend=True; frm_main->AutoSize=False; frm_main->Ctl3D=True; frm_main->DropTarget=True; Im1->Picture->Graphic = bm[j]; Im1->Canvas->Draw(10,10,bm[j]); Im1->ParentShowHint = True; j++; } else j = 1; } void fastcall Tfrm_main::Bngktqu1Click(TObject *Sender) { frm_output->Show(); P-17 bangketqua(); } void fastcall Tfrm_main::Biudinth1Click(TObject *Sender) { Drawgraph(); frm_graf->Show(); } void fastcall Tfrm_main::Play1Click(TObject *Sender) { Timer1->Enabled=True; Timer1->Interval=2000; } void fastcall Tfrm_main::Stop1Click(TObject *Sender) { Timer1->Enabled=False; Timer1->Interval=0; } File Unit1.cpp #include #pragma hdrstop #include "Unit1.h" #include "main.h" #pragma package(smart_init) #pragma resource "*.dfm" Tfrm_ip *frm_ip; fastcall Tfrm_ip::Tfrm_ip(TComponent* Owner) : TForm(Owner) { Ed_chucngoc0->Enabled=False; } void fastcall Tfrm_ip::EditKeyPress(TObject * Sender, wchar_t &Key) { if ((Key >='0')&&(Key Text).Pos(DecimalSeparator) != 0) Key = 0; return; } if (Key == VK_BACK) return; // Key = 0; } void fastcall Tfrm_ip::Button_nhapClick(TObject *Sender) { frm_ip->Close(); } void fastcall Tfrm_ip::Ed_mT1KeyPress(TObject *Sender, wchar_t &Key) { EditKeyPress(Sender,Key); } void fastcall Tfrm_ip::Ed_mT2KeyPress(TObject *Sender, wchar_t &Key) { EditKeyPress(Sender,Key); } void fastcall Tfrm_ip::Ed_mnl1KeyPress(TObject *Sender, wchar_t &Key) { EditKeyPress(Sender,Key); } Unit2.cpp #include #pragma hdrstop #include "Unit2.h" #pragma package(smart_init) #pragma resource "*.dfm" Tfrm_output *frm_output; fastcall Tfrm_output::Tfrm_output(TComponent* Owner) : TForm(Owner) P-18 { } void fastcall Tfrm_output::FormCreate(TObject *Sender) { StringGrid1->Color=clBlue; } Unit3.cpp #include #pragma hdrstop #include "Unit3.h" #pragma package(smart_init) #pragma link "Chart" #pragma link "Series" #pragma link "TeEngine" #pragma link "TeeProcs" #pragma link "TeeFunci" #pragma resource "*.dfm" Tfrm_graf *frm_graf; fastcall Tfrm_graf::Tfrm_graf(TComponent* Owner) : TForm(Owner) { } Unit1.h #ifndef Unit1H #define Unit1H #include #include #include #include class Tfrm_ip : public TForm { published: // IDE-managed Components TGroupBox *GroupBox1; TEdit *Ed_V0; TLabel *Label1; TLabel *Label2; TLabel *Label3; TEdit *Ed_mT1; TLabel *Label4; TLabel *Label5; TEdit *Ed_mnl1; TLabel *Label6; TLabel *Label7; TLabel *Label8; TEdit *Ed_mnl2; TLabel *Label9; TEdit *Ed_Je1; TLabel *Label10; TEdit *Ed_Je2; TLabel *Label11; TLabel *Label12; TLabel *Label13; TEdit *Ed_x0; TLabel *Label14; TLabel *Label15; TEdit *Ed_z0; TLabel *Label16; TLabel *Label17; TEdit *Ed_h0; TLabel *Label18; TLabel *Label19; TEdit *Ed_tp; TLabel *Label20; TLabel *Label21; TEdit *Ed_mT2; TLabel *Label22; TLabel *Label23; TEdit *Ed_alfa0; TLabel *Label24; TLabel *Label25; TEdit *Ed_beta0; TLabel *Label26; TLabel *Label27; TEdit *Ed_chucngoc0; P-19 TLabel *Label28; TLabel *Label29; TEdit *Ed_Teta0; TLabel *Label30; TLabel *Label31; TEdit *Ed_PhSI0; TLabel *Label32; TLabel *Label33; TEdit *Ed_gama0; TLabel *Label34; TLabel *Label35; TEdit *Ed_omegax0; TLabel *Label36; TLabel *Label37; TLabel *Label38; TLabel *Label39; TEdit *Ed_omegay0; TLabel *Label40; TLabel *Label41; TLabel *Label42; TEdit *Ed_omegaz0; TLabel *Label43; TLabel *Label44; TEdit *Ed_PT1; TLabel *Label45; TLabel *Label46; TLabel *Label47; TLabel *Label48; TEdit *Ed_Vg0; TLabel *Label49; TLabel *Label50; TEdit *Ed_T0; TLabel *Label51; TLabel *Label52; TEdit *Ed_ht0; TLabel *Label53; TGroupBox *GroupBox2; TLabel *Label54; TEdit *Ed_pvmt0; TLabel *Label55; TLabel *Label56; TEdit *Ed_Vmt0; TLabel *Label57; TLabel *Label58; TEdit *Ed_Hgmt0; TLabel *Label59; TLabel *Label60; TEdit *Ed_kdmt0; TLabel *Label61; TLabel *Label62; TEdit *Ed_Dtd0; TLabel *Label63; TLabel *Label64; TEdit *Ed_culymt0; TLabel *Label65; TButton *Button_nhap; TEdit *Ed_PT2; TLabel *Label66; TLabel *Label67; TEdit *Ed_Hggio0; TLabel *Label68; TEdit *Ed_psi0; TLabel *Label69; void fastcall Button_nhapClick(TObject *Sender); void fastcall EditKeyPress(TObject *Sender, wchar_t &Key); void fastcall Ed_mT1KeyPress(TObject *Sender, wchar_t &Key); void fastcall Ed_mT2KeyPress(TObject *Sender, wchar_t &Key); void fastcall Ed_mnl1KeyPress(TObject *Sender, wchar_t &Key); private: // User declarations public: // User declarations fastcall Tfrm_ip(TComponent* Owner); }; extern PACKAGE Tfrm_ip *frm_ip; #endif P-20 Unit2.h #ifndef Unit2H #define Unit2H #include #include #include #include #include class Tfrm_output : public TForm { published: // IDE-managed Components TLabel *Label1; TStringGrid *StringGrid1; void fastcall FormCreate(TObject *Sender); private: // User declarations public: // User declarations fastcall Tfrm_output(TComponent* Owner); }; extern PACKAGE Tfrm_output *frm_output; #endif Unit3.h #ifndef Unit3H #define Unit3H #include #include #include #include #include "Chart.hpp" #include "Series.hpp" #include "TeEngine.hpp" #include "TeeProcs.hpp" #include #include "TeeFunci.hpp" class Tfrm_graf : public TForm { published: // IDE-managed Components TChart *Chart1; TFastLineSeries *Series1; TCustomTeeFunction *TeeFunction1; TChart *Chart2; TFastLineSeries *Series2; TChart *Chart3; TFastLineSeries *Series3; TChart *Chart4; TFastLineSeries *Series4; TCustomTeeFunction *TeeFunction2; private: // User declarations public: // User declarations fastcall Tfrm_graf(TComponent* Owner); }; extern PACKAGE Tfrm_graf *frm_graf; #endif Quydao.cpp #include #pragma hdrstop #include USEFORM("main.cpp", frm_main); USEFORM("Unit1.cpp", frm_ip); USEFORM("Unit2.cpp", frm_output); USEFORM("Unit3.cpp", frm_graf); WINAPI _tWinMain(HINSTANCE, HINSTANCE, LPTSTR, int) { try { Application->Initialize(); Application->MainFormOnTaskBar = true; Application->CreateForm( classid(Tfrm_main), &frm_main); Application->CreateForm( classid(Tfrm_output), &frm_output); Application->CreateForm( classid(Tfrm_ip), &frm_ip); Application->CreateForm( classid(Tfrm_graf), &frm_graf); Application->Run(); } catch (Exception &exception) { P-21 Application->ShowException(&exception); } catch ( ) { try { throw Exception(""); } catch (Exception &exception) { Application->ShowException(&exception); } } return 0; } P-22 PHỤ LỤC CHƯƠNG TRÌNH TÍNH KẾT CẤU VỎ MỎNG clc %Xoa cac lenh truoc tren man hinh clear % %Du lieu dau vao R=200; %ban kinh mat trung hoa (mm) noe_r=40; %So buoc chia theo phuong r noe_z=20; %So buoc chia theo phuong z z_length=800; %khoang noe=2*noe_r*noe_z; %Tong so phan tu nnel=3; %So nut cua phan tu ndof=6; %So bac tu tai moi nut nnode=noe_r*(noe_z+1); %Tong so nut he thong edof=nnel*ndof; %so bac tu cua phan tu len_z_elm=z_length/noe_z; %Do dai buoc chia theo phuong z len_r_elm=2*R*pi/noe_r; %Do dai buoc chia theo phuong r nog_r=2;nog_s=2;nog_t=2; %cac so tich phan poisson=0.33; %cac tham so dau vao cua vo E0=2.1e5; pv=[0 -10]'; %vec to luc h=2; % -%MO HINH PHAN TU HUU HAN dem=0; rz=zeros(nnode,3); %Khoi tao mang toa nut for i=1:noe_z+1 for j=1:noe_r dem=dem+1; rz(dem,1)=-R*cos(j*2*pi/noe_r); rz(dem,2)=-R*sin(j*2*pi/noe_r); rz(dem,3)=(i-1)*len_z_elm; end end % dem=0; LNC=zeros(noe,3); %Khoi tao mang chi so nut cua phan tu for i=1:noe_z for j=1:noe_r if rem(j,noe_r)==0 dem=dem+1; LNC(dem,1)=noe_r*(i-1)+j; LNC(dem,2)= noe_r*(i-1)+1; LNC(dem,3)= noe_r*i; dem=dem+1; LNC(dem,1)= noe_r*(i-1)+1; LNC(dem,2)=LNC(dem,1)+noe_r; LNC(dem,3)=LNC(dem,2)+noe_r+j; else dem=dem+1; LNC(dem,1)= noe_r*(i-1)+j; LNC(dem,2)=LNC(dem,1)+1; LNC(dem,3)=LNC(dem,1)+noe_r; dem=dem+1; LNC(dem,1)= LNC(dem-1,1)+1; LNC(dem,2)=LNC(dem,1)+noe_r; LNC(dem,3)=LNC(dem,2)+noe_r-1; end end end % %Thanh lap mang dieu kien bien JF=zeros(nnode,ndof); %Khoi tao mang dieu kien bien for i=1:nnode if rz(i,3)==0 for j=1:ndof JF(i,j)=1; end end end % P-23 %Thanh lap mang chi so bac tu tong the NDF=zeros(nnode,ndof); %Khoi tao mang chi so bac tu c?a nút Dem=0; for i=1:nnode for j=1:ndof if JF(i,j)==0 Dem=Dem+1; NDF(i,j)=NDF(i,j)+Dem; end end end Neq=Dem; % -%Thanh lap mang chi so nut tong the cua phan tu ND=zeros(noe,edof); %Khoi tao mang chi so bac tu tong the cua phan tu for i=1:noe for j=1:nnel for k=1:ndof ND(i,(j-1)*ndof+k)=NDF(LNC(i,j),k); end end end % %Vec to luc nut tong the ff=zeros(Neq,1); for iel=1:noe [x,y,z] = toado(LNC,rz,nnel,iel); if z(3)==z_length [fe]=Vtl3nut(x,y,z,nnel,pv,h); index=ND(iel,:); for i=1:edof ii=index(i); if ii>0 ff(ii)=ff(ii)+fe(i); end end end end % Ctt=D_votg(E0,poisson); K=zeros(Neq,Neq); for iel=1:noe [x,y,z] = toado(LNC,rz,nnel,iel); ke=MtK(x,y,z,Ctt,h,nnel,ndof); % xac dinh bang ghep noi phan tu index=ND(iel,:); %Ghep noi ma tran for i=1:edof ii=index(i); for j=1:edof jj=index(j); if ii>0&&jj>0 K(ii,jj)=K(ii,jj)+ke(i,j); end end end end % -d=K\ff; q=zeros(noe,edof); chuyenvi=zeros(nnode,ndof+1); dip=zeros(nnode,ndof); for i=1:noe for j=1:edof if ND(i,j)~=0 q(i,j)=q(i,j)+d(ND(i,j)); end end end for i=1:nnode for j=1:ndof if NDF(i,j)>0 dip(i,j)=d(NDF(i,j)); end P-24 end chuyenvi(i,:)=[i dip(i,1) dip(i,2) dip(i,3) dip(i,4) dip(i,5) dip(i,6)]; end cvv=zeros(noe,1); for iel=1:noe [x,y,z] = toado(LNC,rz,nnel,iel); [cv]=cvvo (x,y,z,nnel,h,q(iel,:)'); cvv(iel)=sqrt(cv(1)^2+cv(2)^2+cv(3)^2); end % -Kg=zeros(Neq,Neq); ustb=zeros(noe,1); for iel=1:noe [x,y,z] = toado(LNC,rz,nnel,iel); ustb(iel) = Tus(x,y,z,Ctt,h,nnel,q(iel,:)',len_r_elm,len_z_elm); end % -end max(cvv) max(ustb) figure(1) colormap(jet); [Xt,Yt,Zt,Mt]=tdvpbmd(rz,z_length,noe_r,noe_z,cvv); surf(Xt,Yt,Zt,Mt); line(Xl,Yl,Zl,'color','black'); xlabel('X');ylabel('Y');zlabel('Z'); title('Chuyen vi tong'); colorbar; figure(2) colormap(jet); [Xt,Yt,Zt,Mt]=tdvpbmd(rz,z_length,noe_r,noe_z,ustb); surf(Xt,Yt,Zt,Mt); colorbar; line(Xl,Yl,Zl,'color','black'); xlabel('X');ylabel('Y');zlabel('Z'); title('Ung suat tuong duong Von-Misse'); % -CÁC HÀM SỬ DỤNG TRONG CHƢƠNG TRÌNH Hàm xác định tọa độ nút phần tử function [x,y,z] = toado(LNC,rz,nnel,iel) x=zeros(nnel,1); y=zeros(nnel,1); z=zeros(nnel,1); ndi=zeros(nnel,1); for i=1:nnel ndi(i)=LNC(iel,i); x(i)=rz(ndi(i),1); y(i)=rz(ndi(i),2); z(i)=rz(ndi(i),3); end end Hàm xác tính tốn véc tơ tải nút lực phân bố cạnh phần tử function [fe] = Vtlnut(x,y,z,nnel,h) fe=zeros(24,1); [l,m,n]=VTCP(x,y,z,nnel); [pointb,weightb]=Gauss_Point_2D(2,2); for intx=1:2 rvl=pointb(intx,1); wtx=weightb(intx,1); for intz=1:2 tvl=pointb(intz,2); wtz=weightb(intz,2); [N,dhdr,dhds]=Shape_Func_4node(1,rvl); xt=0; yt=0;zt=0; for i=1:nnel xt=xt+N(i)*x(i); yt=yt+N(i)*y(i); zt=zt+N(i)*z(i); end Jc=zeros(3,3); for i=1:nnel Jc(1,1)=Jc(1,1)+dhdr(i)*(x(i)+0.5*h*tvl*l(i)); Jc(1,2)=Jc(1,2)+dhdr(i)*(y(i)+0.5*h*tvl*m(i)); Jc(1,3)=Jc(1,3)+dhdr(i)*(z(i)+0.5*h*tvl*n(i)); P-25 Jc(2,1)=Jc(2,1)+dhds(i)*(x(i)+0.5*h*tvl*l(i)); Jc(2,2)=Jc(2,2)+dhds(i)*(y(i)+0.5*h*tvl*m(i)); Jc(2,3)=Jc(2,3)+dhds(i)*(z(i)+0.5*h*tvl*n(i)); Jc(3,1)=Jc(3,1)+N(i)*h*l(i)/2; Jc(3,2)=Jc(3,2)+N(i)*h*m(i)/2; Jc(3,3)=Jc(3,3)+N(i)*h*n(i)/2; end J1=Jc(2,1)*Jc(3,2)-Jc(2,2)*Jc(3,1); J2=Jc(2,2)*Jc(3,3)-Jc(2,3)*Jc(3,2); J3=Jc(2,3)*Jc(3,1)-Jc(2,1)*Jc(3,3); dJ=sqrt(J1^2+J2^2+J3^2); MN=[]; for i=1:nnel MNi=[N(i) 0 0.5*tvl*h*n(i) -0.5*tvl*h*m(i); N(i) -0.5*tvl*h*n(i) 0.5*tvl*h*l(i); 0 N(i) 0.5*tvl*h*m(i) -0.5*tvl*h*l(i) 0]; MN=[MN MNi]; end fe=fe+MN'*pv*wtx*wtz*dJ; end end end Hàm xác tính tốn véc tơ tải nút lực khối function [fe] = Vtlkhoi(x,y,z,nnel,matdo,xv,h) fe=zeros(24,1); [l,m,n]=VTCP(x,y,z,nnel); [pointb,weightb]= Gauss_Point_2x2x2(2,2,2); for intx=1:2 rvl=pointb(intx,1); wtx=weightb(intx,1); for inty=1:2 svl=pointb(inty,2); wty=weightb(inty,2); for intz=1:2 tvl=pointb(intz,2); wtz=weightb(intz,2); [N,dhdr,dhds]=Shape_Func_4node(rvl,svl); for i=1:nnel Jc(1,1)=Jc(1,1)+dhdr(i)*(x(i)+0.5*h*tvl*l(i)); Jc(1,2)=Jc(1,2)+dhdr(i)*(y(i)+0.5*h*tvl*m(i)); Jc(1,3)=Jc(1,3)+dhdr(i)*(z(i)+0.5*h*tvl*n(i)); Jc(2,1)=Jc(2,1)+dhds(i)*(x(i)+0.5*h*tvl*l(i)); Jc(2,2)=Jc(2,2)+dhds(i)*(y(i)+0.5*h*tvl*m(i)); Jc(2,3)=Jc(2,3)+dhds(i)*(z(i)+0.5*h*tvl*n(i)); Jc(3,1)=Jc(3,1)+N(i)*h*l(i)/2; Jc(3,2)=Jc(3,2)+N(i)*h*m(i)/2; Jc(3,3)=Jc(3,3)+N(i)*h*n(i)/2; end dJ=det(Jc); MN=[]; for i=1:nnel MNi=[N(i) 0 0.5*tvl*h*n(i) -0.5*tvl*h*m(i); N(i) -0.5*tvl*h*n(i) 0.5*tvl*h*l(i); 0 N(i) 0.5*tvl*h*m(i) -0.5*tvl*h*l(i) 0]; MN=[MN MNi]; end fe=fe+matdo*MN'*xv*wtx*wty*wty*dJ; end end end end Hàm tính tốn ma trận vật liệu phần tử vỏ function [D_matrix]=D_vo(E_module,poision) k=5/6; D_matrix=E_module/(1-poision^2)* [1 poision 0 0; poision 0 0; 0 0 0; 0 0.5*(1-poision) 0; 0 0 (1-poision)*k/2 0; 0 0 (1-poision)*k/2]; end Hàm tính tốn ma trận độ cứng tuyến tính phần tử vỏ function [ke] = MtKnut(x,y,z,D,h,nnel,ndof) P-26 [pointb,weightb]=Gauss_Point_2x2x2(2,2,2); [l,m,n]=VTCP(x,y,z,nnel); ke=zeros(24,24); for intx=1:2 rvl=pointb(intx,1); wtx=weightb(intx,1); for inty=1:2 svl=pointb(inty,2); wty=weightb(inty,2) ; for intz=1:1 tvl=pointb(intz,3); wtz=weightb(intz,3); [Tcs]=MatranT(x,y,z,rvl,svl,nnel); [N,dhdr,dhds]=Shape_Func_4node(rvl,svl); Jc=zeros(3,3); for i=1:nnel Jc(1,1)=Jc(1,1)+dhdr(i)*(x(i)+0.5*h*tvl*l(i)); Jc(1,2)=Jc(1,2)+dhdr(i)*(y(i)+0.5*h*tvl*m(i)); Jc(1,3)=Jc(1,3)+dhdr(i)*(z(i)+0.5*h*tvl*n(i)); Jc(2,1)=Jc(2,1)+dhds(i)*(x(i)+0.5*h*tvl*l(i)); Jc(2,2)=Jc(2,2)+dhds(i)*(y(i)+0.5*h*tvl*m(i)); Jc(2,3)=Jc(2,3)+dhds(i)*(z(i)+0.5*h*tvl*n(i)); Jc(3,1)=Jc(3,1)+N(i)*h*l(i)/2; Jc(3,2)=Jc(3,2)+N(i)*h*m(i)/2; Jc(3,3)=Jc(3,3)+N(i)*h*n(i)/2; end dJ=det(Jc); invj=inv(Jc); Bt=zeros(6,24); for i=1:4 dNx=invj(1,1)*dhdr(i)+invj(1,2)*dhds(i); dNy=invj(2,1)*dhdr(i)+invj(2,2)*dhds(i); dNz=invj(3,1)*dhdr(i)+invj(3,2)*dhds(i); ax=0.5*h*(tvl*dNx+invj(1,3)*N(i)); ay=0.5*h*(tvl*dNy+invj(2,3)*N(i)); az=0.5*h*(tvl*dNz+invj(3,3)*N(i)); Bi=[dNx 0 ax*n(i) -ax*m(i); dNy -ay*n(i) ay*l(i); 0 dNz az*m(i) -az*l(i) 0; dNy dNx -ax*n(i) ay*n(i) ax*l(i)-ay*m(i); dNz dNy ay*m(i)-az*n(i) -ay*l(i) az*l(i); dNz dNx ax*m(i) az*n(i)-ax*l(i) -az*m(i)]; for ii=1:ndof for jj=1:ndof Bt(ii,(i-1)*6+jj)=Bi(ii,jj); end end end ke=ke+(Tcs*Bt)'*D*(Tcs*Bt)*wtx*wty*wtz*dJ; end end end end Hàm tính tốn ứng suất ma trận độ cứng hình học phần tử function [kge,USTD] = MtKGnut(x,y,z,D,h,nnel,q) [point,weight]=Gauss_Point_2x2x2(2,2,2); [l,m,n]=VTCP(x,y,z,nnel); kge=zeros(24,24); kk=0; for intx=1:2 rvl=point(intx,1); wtx=weight(intx,1); for inty=1:2 svl=point(inty,2); wty=weight(inty,2) ; for intz=1:2 tvl=point(intz,3); wtz=weight(intz,3); kk=kk+1; [Tcs]=MatranT(x,y,z,rvl,svl,nnel); [TGcs]=MtTG(x,y,z,rvl,svl,nnel); [N,dhdr,dhds]=Shape_Func_4node(rvl,svl); Jc=zeros(3,3); for i=1:nnel P-27 Jc(1,1)=Jc(1,1)+dhdr(i)*(x(i)+0.5*h*tvl*l(i)); Jc(1,2)=Jc(1,2)+dhdr(i)*(y(i)+0.5*h*tvl*m(i)); Jc(1,3)=Jc(1,3)+dhdr(i)*(z(i)+0.5*h*tvl*n(i)); Jc(2,1)=Jc(2,1)+dhds(i)*(x(i)+0.5*h*tvl*l(i)); Jc(2,2)=Jc(2,2)+dhds(i)*(y(i)+0.5*h*tvl*m(i)); Jc(2,3)=Jc(2,3)+dhds(i)*(z(i)+0.5*h*tvl*n(i)); Jc(3,1)=Jc(3,1)+N(i)*h*l(i)/2; Jc(3,2)=Jc(3,2)+N(i)*h*m(i)/2; Jc(3,3)=Jc(3,3)+N(i)*h*n(i)/2; end dJ=det(Jc); invj=inv(Jc); JG=[invj(1,1) 0 invj(1,2) 0 invj(1,3) 0; invj(1,1) 0 invj(1,2) 0 invj(1,3) 0; 0 invj(1,1) 0 invj(1,2) 0 invj(1,3); invj(2,1) 0 invj(2,2) 0 invj(2,3) 0; invj(2,1) 0 invj(2,2) 0 invj(2,3) 0; 0 invj(2,1) 0 invj(2,2) 0 invj(2,3); invj(3,1) 0 invj(3,2) 0 invj(3,3) 0; invj(3,1) 0 invj(3,2) 0 invj(3,3) 0; 0 invj(3,1) 0 invj(3,2) 0 invj(3,3)]; Bt=zeros(6,24); Gm=zeros(9,24); for i=1:nnel dNx=invj(1,1)*dhdr(i)+invj(1,2)*dhds(i); dNy=invj(2,1)*dhdr(i)+invj(2,2)*dhds(i); dNz=invj(3,1)*dhdr(i)+invj(3,2)*dhds(i); ax=0.5*h*(tvl*dNx+invj(1,3)*N(i)); ay=0.5*h*(tvl*dNy+invj(2,3)*N(i)); az=0.5*h*(tvl*dNz+invj(3,3)*N(i)); bx=0.5*h*tvl*dhdr(i); by=0.5*h*tvl*dhds(i); bz=0.5*h*N(i); Bi=[dNx 0 ax*n(i) -ax*m(i); dNy -ay*n(i) ay*l(i); 0 dNz az*m(i) -az*l(i) 0; dNy dNx -ax*n(i) ay*n(i) ax*l(i)-ay*m(i); dNz dNy ay*m(i)-az*n(i) -ay*l(i) az*l(i); dNz dNx ax*m(i) az*n(i)-ax*l(i) -az*m(i)]; for ii=1:6 for jj=1:6 Bt(ii,(i-1)*6+jj)=Bi(ii,jj); end end Gi=[dhdr(i) 0 bx*n(i) -bx*m(i); dhdr(i) -bx*n(i) bx*l(i); 0 dhdr(i) bx*m(i) -bx*l(i) 0; dhds(i) 0 by*n(i) -by*m(i); dhds(i) -by*n(i) by*l(i); 0 dhds(i) by*m(i) -by*l(i) 0; 0 0 bz*n(i) -bz*m(i); 0 -bz*n(i) bz*l(i); 0 bz*m(i) -bz*l(i) 0]; for ii=1:9 for jj=1:6 Gm(ii,(i-1)*6+jj)=Gi(ii,jj); end end end us=D*(Tcs*Bt)*q; St=[us(1)*eye(3) us(4)*eye(3) us(5)*eye(3); us(4)*eye(3) us(2)*eye(3) us(6)*eye(3); us(5)*eye(3) us(6)*eye(3) us(3)*eye(3)]; G=TGcs*JG*Gm; kge=kge+(G)'*St*(G)*wtx*wty*wtz*dJ; usi(kk)=(0.5*((us(1)-us(2))^2+(us(1)-us(3))^2+(us(2)us(3))^2+6*(us(4)^2+us(5)^2+us(6)^2)))^0.5; end end end USTD=max(usi); end Hàm xây dựng ma trận để vẽ ảnh đồ function [Xt,Yt,Zt,Mt] =tdvpbmd(rz,z_length,noe_r,noe_z,mdc) P-28 Xt=zeros(noe_z+1,noe_r+1); Yt=zeros(noe_z+1,noe_r+1); Zt=zeros(noe_z+1,noe_r+1); Mt=zeros(noe_z,noe_r); for i=1:noe_z for j=1:noe_r+1 Xt(i,j)=rz((i-1)*noe_r+j,1); Yt(i,j)=rz((i-1)*noe_r+j,2); if jnog_z nog=nog_r; else nog=nog_z; end point_2D=zeros(nog,2); weight_2D=zeros(nog,2); [point_r,weight_r]=Gauss_Point_1D(nog_r); [point_z,weight_z]=Gauss_Point_1D(nog_z); for intr=1:nog_r point_2D(intr,1)=point_r(intr); weight_2D(intr,1)=weight_r(intr); end for intz=1:nog_z point_2D(intz,2)=point_z(intz); weight_2D(intz,2)=weight_z(intz); end end 13 Hàm tính ma trận chuyển biến dạng function [Tcs]=MatranT(x,y,z,rvalue,svalue,nnel) [M_CCS]=M_CCS_V(x,y,z,rvalue,svalue,nnel); l1=M_CCS(1,1); m1=M_CCS(2,1); n1=M_CCS(3,1); l2=M_CCS(1,2); m2=M_CCS(2,2); n2=M_CCS(3,2); l3=M_CCS(1,3); m3=M_CCS(2,3); n3=M_CCS(3,3); Tcs=[l1^2 m1^2 n1^2 l1*m1 n1*m1 l1*n1; l2^2 m2^2 n2^2 l2*m2 n2*m2 l2*n2; l3^2 m3^2 n3^2 l3*m3 n3*m3 l3*n3; 2*l1*l2 2*m1*m2 2*n1*n2 l1*m2+l2*m1 m1*n2+m2*n1 n1*l2+n2*l1; 2*l2*l3 2*m2*m3 2*n2*n3 l2*m3+l3*m2 m2*n3+m3*n2 n2*l3+n3*l2; 2*l3*l1 2*m3*m1 2*n3*n1 l3*m1+l1*m3 m3*n1+m1*n3 n3*l1+n1*l3]; P-30 end 14 Hàm xác định ma trận chuyển đạo hàm riêng chuyển vị function [TGcs]=MtTG(x,y,z,rvalue,svalue,nnel) [M_CCS]=M_CCS_V(x,y,z,rvalue,svalue,nnel); l1=M_CCS(1,1); m1=M_CCS(2,1); n1=M_CCS(3,1); l2=M_CCS(1,2); m2=M_CCS(2,2); n2=M_CCS(3,2); l3=M_CCS(1,3); m3=M_CCS(2,3); n3=M_CCS(3,3); TGcs=[l1*l1 l1*m1 l1*n1 m1*l1 m1*m1 m1*n1 n1*l1 n1*m1 n1*n1; l1*l2 l1*m2 l1*n2 m1*l2 m1*m2 m1*n2 n1*l2 n1*m2 n1*n2; l1*l3 l1*m3 l1*n3 m1*l3 m1*m3 m1*n3 n1*l3 n1*m3 n1*n3; l2*l1 l2*m1 l2*n1 m2*l1 m2*m1 m2*n1 n2*l1 n2*m1 n2*n1; l2*l2 l2*m2 l2*n2 m2*l2 m2*m2 m2*n2 n2*l2 n2*m2 n2*n2; l2*l3 l2*m3 l2*n3 m2*l3 m2*m3 m2*n3 n2*l3 n2*m3 n2*n3; l3*l1 l3*m1 l3*n1 m3*l1 m3*m1 m3*n1 n3*l1 n3*m1 n3*n1; l3*l2 l3*m2 l3*n2 m3*l2 m3*m2 m3*n2 n3*l2 n3*m2 n3*n2; l3*l3 l3*m3 l3*n3 m3*l3 m3*m3 m3*n3 n3*l3 n3*m3 n3*n3]; end ... vi nghiên cứu: kết cấu thân, cánh tên lửa hành trình đối hải chịu tải trọng khí động ảnh hưởng số tham số động học, động lực học tới độ bền thân, cánh tên lửa hành trình đối hải Phƣơng pháp nghiên. .. ứng suất - biến dạng thân, cánh tên lửa chịu tác động tải trọng khí động - Nghiên cứu tính tốn mơ khảo sát ảnh hưởng số tham số động học, động lực học đến độ bền kết cấu thân cánh TLĐH; phân tích,... VÀ ĐÀO TẠO BỘ QUỐC PHÒNG VIỆN KHOA HỌC VÀ CÔNG NGHỆ QUÂN SỰ NGUYỄN THANH BÌNH NGHIÊN CỨU ẢNH HƢỞNG CỦA MỘT SỐ THAM SỐ ĐỘNG HỌC, ĐỘNG LỰC HỌC ĐẾN ĐỘ BỀN KẾT CẤU THÂN VÀ CÁNH TÊN LỬA