Viết chương trình vẽ hoàn thiện tuyến hình tàu thủy, chương 6 docx

12 307 0
Viết chương trình vẽ hoàn thiện tuyến hình tàu thủy, chương 6 docx

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Chương 6: Tích phân bằng phương pháp số Trong số rất nhiều phương pháp số, công thức tính toán của Milne đưa ra kết quả tốt hơn khi áp dụng cho ngành đóng tàu. )()()()( 332211 3 1 xfaxfaxfadxxf x x   (2.2.6) Trong đó các hệ số a 1 , a 2 , a 3 tính theo giá trị của toạ độ x 1 , x 1 , x 1 đo trên trục Ox.          )(62 1 )( 23 13 133 xx xx xxa (2.2.7) ))((6 2313 13 2 xxxx xx a    32131 aaxxa  Qua cách phân tích ở trên, có thể chỉ ra rằng, các phương pháp tính tích phân trên đây đều dựa v ào các biểu thức tính gần đúng với độ chuẩn xác không cao, các phép hiệu chỉnh đối với những khu vực có độ cong thay đổi nhiều thường rắc rối và mang lại kết quả không chính xác, phần nhiều còn mang tính ước lượng và cảm tính. Qua việc sử dụng phương pháp hình thang như một công cụ trong bài toán hàm hóa, kết quả đạt được rất kém(Kết quả phân tích sai số đã chỉ ra ở đề tài NCKH của cùng tác giả), cần có một phương pháp tốt hơn để tính các yếu tố đường h ình. 2.3 Cơ sở lý thuyết về mô hình đường cong và thuật toán Spline. 2.3.1. Gi ới thiệu về mô hình đường cong. Sự cần thiết phải biểu diễn đường cong và bề mặt là do các đối tượng tồn tại dưới dạng các mô hình đã cho như ô tô, tàu thuỷ … và trong mô hình hỗn hợp, trong đó các đối tượng vật lý không tồn tại dưới dạng mô hình. Trong trường hợp thứ nhất không thể mô tả bằng toán học của đối tượng. Ta có thể sử dụng mô hình toạ độ điểm của đối tượng, nhưng cách tiếp cận n ày khó thực hiện đối với máy máy tính vì khả năng lưu trữ có hạn. Ta thường xấp xỉ đối tượng bằng các phần mặ t phẳng, hình cầu hoặc các bề mặt khác để dễ dàng mô tả bằng một hàm toán học, và làm sao để các điểm trong mô hình phải gần với vị trí của các điểm tương ứng của đối tượng. Trong trường hợp thứ hai, khi không có sự tồn tại trước đó của đối tượng dưới dạng mô hình, người sử dụng tạo ra đối tượng trong môi trường xử lý; do đó các đối tượng được biểu diễn một cách chính xác. Để tạo ra đối tượng người sử dụng phải chỉnh sửa đối tượng mô tả nó dưới dạng toán học, hoặc đưa ra một mô tả xấp xỉ để đưa vào chương trình nào đó. Trong AUTOCAD, việc biểu diễn bằng máy tính được sử dụng cuối cùng để thể hiện bề mặt vật lý của đối tượng đã được mô tả dưới dạng lý thyết. 2.3.2. Thuật toán Spline Thuật ngữ Spline xuất phát từ tính dễ uốn của kim loại được người thiết kế sử dụng để làm bề mặt máy bay, ô tô và tàu thuỷ. Spline kim loại, trừ một vài loại đặc biệt, có bậc hai liên tục. Biễu diễn toán học của những đường này, Spline bậc ba là các đa thức bậc ba liên tục đến bậc nhất và bậc hai, nội suy (đi qua) các điểm điều khiển. Trường hợp tổng quát, một Spline N là một đa thức liên tục từng đoạn bậc N có đạo hàm bậc N-1 tại mỗi nút. Tuy nhiên, các hệ số của đa thức trong Spline bậc ba phụ thuộc vào n điểm điều khiển; các phép tính của chúng liên quan đến phép nghịch đảo ma trận có kích thước (n+1)x(n+1). Như vậy, có hai diểm bất lợi sau: nếu di chuyển bất kỳ sẽ ảnh hưởng tới toàn b ộ đường cong; thời gian tính toán ma trận nghịch đảo lớn và khi sinh đường cong sẽ chậm lại, khó cảm nhận được độ trơn của đường cong. Spline nói ở đây gồm các đoạn đường cong mà hệ số của đa thức chỉ phụ thuộc vào một và điểm điều khiển. Đó là các điều khiển cục bộ. Như vậy việc di chuyển một điểm cục bộ chỉ ảnh hưởng đến một phần nhỏ của đường cong. Hơn thế nữa, thời gian tính toán sẽ giảm đi rất nhiều. Ứng dụng phương pháp Spline do Alberg J. đề xuất đã đem lại những thành tựu quan trọng và rất được chú ý. Trong thực tế được ứng dụng rộng rãi các Spline bậc ba g(x), hàm xấp xỉ được cho theo các điểm gián đoạn từng đoạn [x i-1 ,x i ], i=2,3,4,5,….,n+1, được viết tổng quát dưới dạng:    3 0 )( 1, ,3,2),()()( j i k ji nixxcxgxg (2.3 1) Bi ểu thức (2.3.1) đảm bảo liên tục đến bậc một và đạo hàm b ậc hai tại mọi điểm y i (x i ) đồng thời nghiệm đúng các giá trị đó. Thoả mãn điều kiện biên về đạo hàm bậc hai: 0)()(   bgag (2.3.2) Spline (2.3.1) xác định trong phép tích phân:   h a ii yxudxxuu )(,)]([)( 2 (2.3.3) Đó chính là đặc điểm ưu việt của Spline bậc ba, nó cho phép, trên tập hợp các điểm cho trước xác định đường cong có độ cong nhỏ nhất. Nếu các điểm được cho có thể bị sai lệch, thuật toán cho khả năng làm trơn đường cong, trong khi đó h àm g(x) phải được xác định theo tích phân : 2 1 2 ])([)]([)( ii h a n i i yxupdxxuu     (2.3.4) Trong đó p i là một số dương nào đó. Hàm (2.3.4) đi lân cận các điểm đã cho mềm mại hơn so với hàm (2.3.3). Trong trường hợp hàm hoá bề mặt cong cho trước qua một tập hợp hữu hạn các điểm, cần giải quyết bài toán xấp xỉ về không gian, về nguyên tắc không có gì khác so với xấp xỉ Spline phẳng. Thuật toán Spline được sử dụng để tính toán các yếu tố hình h ọc phẳng, áp dụng để vẽ đường hình tàu thuỷ được xây dựng như sau: Hàm được chọn là hàm bậc ba, xấp xỉ theo các điểm gián đoạn, được xác định tr ên từng [x i-1 ,x i ], I =1,2,3 … n, được viết tổng quát như sau: y i (z i ) = a i + b i x i + b i x i 2 + b i x i 3 ; i = 1,2,3 n (2.3.5) Bi ểu thức (2.3.5) đảm bảo liên tục đến đạo hàm bậc nhất và đạo hàm bậc hai tại mọi điểm Y i (x i ) đồng thời nghiệm đúng các giá trị đó. Mỗi một đoạn đường cong được đi qua 2 điểm. Để đường cong sau có điểm đầu ti ên bắt đầu tại diểm giữa, có tiếp tuyến cùng chi ều và đảm bảo cong trơn liên tục với đường cong liền kề trước nó thì: y’ i-1(Aj) = y’ i(Aj) ; j= 1,2,3…n-1. (2.3.6) Để tốc độ thay đổi độ cong tại mọi điểm đều như nhau thì yêu c ầu đặt ra là hai đường cong liền kề phải liên tục bậc hai tại điểm kết nối: y’’ i-1(Aj) = y’’ i(Aj) ; j= 1,2,3…n-1. (2.3.7) Và đường cong đó phải nghiệm đúng tại những toạ độ đi qua : y i- 1(Aj) = y i(Aj) . V ới đường cong đầu tiên, do không có điều kiện đầu vào là điều kiện liên tục đến bậc hai với đường cong trước đó nên đường cong này được hàm hóa qua 3 điểm. Điều kiện li ên tục bậc hai được thay bằng điều kiện nghiệm đúng tại điểm thứ 3. Tiếp tuyến đầu tiên được xác định bằng cách đo trực tiếp: y’ 1 (A 0 ) = k = tg(  ) (2.3.8) Như vậy với đường cong đầu tiên, hệ phương trình được xây dựng như sau: (2.3.9) a 1 + b 1 x 1 + c 1 x 2 1 + d 1 x 3 1 = y 1 (Đi qua điểm thứ nhất) a 1 + b 1 x 2 + c 1 x 2 2 + d 1 x 3 2 = y 2 (Đi qua điểm thứ hai ) a 1 + b 1 x 3 + c 1 x 2 3 + d 1 x 3 3 = y 3 (Đi qua điểm thứ nhất ) b 1 + 2c 1 x 1 + 3d 1 x 2 1 = k (Đạo hàm bậc nhất tại điểm thứ nhất) Đường cong thứ 2 bắt đầu ở điểm thứ hai và liên tục bậc một, bậc hai tại điểm đó, đường cong thứ 3 bắt đầu từ điểm thứ ba và liên t ục tại điểm đó… Tổng quát, đường cong thứ i sẽ bắt đầu tại điểm thứ i và liên tục tại điểm đó. Hệ phương trình xác định đoạn đường cong qua hai điểm thứ i (A i ) và thứ i+1(A i+1 ) là: a i + b i x i + c i x 2 i + d i x 3 i = y i (2.3.10) a i + b i x i+1 + c i x 2 i+1 + d i x 3 i+1 = y i+1 b i + 2c i x i + 3d i x 2 i = b i-1 + 2c i-1 x i + 3d i-1 x 2 i 2c i + 6d i x i = 2c i-1 + 6d i-1 x i Như vậy, với n điểm, ta có n -1 đường cong tương đương với 4(n-2) hệ số cần tìm. Với mỗi đường cong được xây dựng, ta có 4 điều kiện bi ên, vậy ta có thể xây dựng 4(n-1) phương trình xác định các đường cong đó, ma trận được xây dựng như sau: A.X = B Với: 1 x 1 x 1 2 x 1 3 0 0 0 0 … 0 0 0 0 1 x 2 x 2 2 x 2 3 0 0 0 0 … 0 0 0 0 1 x 3 x 3 2 x 3 3 0 0 0 0 … 0 0 0 0 0 1 2x 1 3x 1 2 0 0 0 0 … 0 0 0 0 0 0 0 0 1 x 2 x 2 2 x 2 3 … 0 0 0 0 0 0 0 0 1 x 3 x 3 2 x 3 3 … 0 0 0 0 A = 0 0 0 0 0 1 x 2 x 2 2 … 0 0 0 0 0 0 0 0 0 0 1 x 2 … 0 0 0 0 ……………………………………………………………… ……… 0 0 0 0 0 0 0 0 0 1 x 2 x 2 2 x 2 3 0 0 0 0 0 0 0 0 0 1 x 3 x 3 2 x 3 3 0 0 0 0 0 0 0 0 0 0 1 x 2 x 2 2 0 0 0 0 0 0 0 0 0 0 0 1 x 2 (2.3.11) a 1 y 1 b 1 y 2 c 1 y 3 d 1 k a 2 y 2 b 2 y 3 c 2 0 X = d 2 và B = 0 … … a n-1 y n-1 b n-1 y n c n-1 0 d n-1 0 Hình II.7 Mô t ả phương Spline n-1 1 1 2 3 n - 2 n - 1 n k Spline 1 Spline 2 Spline n Đường cong hàm hóa Đường cong Spline pháp phân chia các đoạn cong phần tử trong Spline Hình II.8 Đường cong Spline và đường cong Hàm hoá vẽ trong VB Tuy nhiên, để tiện cho việc lập trình ta tiến hành lập trình t ừng đoạn cong một, như thế sẽ giải các hệ 4 phương trình một. Theo đó, ma trận dùng cho đường cong thứ nhất l à: A 1 .X 1 = B 1 Với : [...]... (2.3.13) 0 1 2x1 3x12 c1 0 0 2 d1 a1 yi ; Xi = b1 ; Bi = k1i 6x1 k2i Với: k1i = y’i (x) ; k2i = y”i (x) là đạo hàm bậc một và đạo hàm bậc hai của đường cong Spline trước đó Giải hệ phương trình dưới dạng các ma trận trên ta thu được các hệ số: a1, b1, c1, d1, a2, b2, c2 , d2 … an-1 , b n-1 , c n-1 ,d n-1 Thay các hệ số vào (2.3.5) ta được từng phương trình ứng với từng đoạn cong Spline, tập hợp các đường . xấp xỉ Spline phẳng. Thuật toán Spline được sử dụng để tính toán các yếu tố hình h ọc phẳng, áp dụng để vẽ đường hình tàu thuỷ được xây dựng như sau: Hàm được chọn là hàm bậc ba, xấp xỉ theo. cong Spline và đường cong Hàm hoá vẽ trong VB Tuy nhiên, để tiện cho việc lập trình ta tiến hành lập trình t ừng đoạn cong một, như thế sẽ giải các hệ 4 phương trình một. Theo đó, ma trận dùng. thuyết về mô hình đường cong và thuật toán Spline. 2.3.1. Gi ới thiệu về mô hình đường cong. Sự cần thiết phải biểu diễn đường cong và bề mặt là do các đối tượng tồn tại dưới dạng các mô hình đã

Ngày đăng: 08/07/2014, 07:21

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan