1. Trang chủ
  2. » Cao đẳng - Đại học

Giáo trình Lý thuyết mạch (FULL)

281 15 0

Đ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

P PHƯƠNG XUÂN NHÀN HỒ ANH TÚY LÝ THUYẾT MẠCH Tập 1 Tái bản có sửa chứa bổ sung Đã được hội đồng xét duyệt sách giáo trình Trường đại học Bách khoa Hà Nội thông qua ca L NHÀ XUẤT BẢN KHOA HỌC VÀ KỸ THU.

P PHƯƠNG XUÂN NHÀN - HỒ ANH TÚY LÝ THUYẾT MẠCH Tập Tái có sửa chứa bổ sung Đã hội đồng xét duyệt sách giáo trình Trường đại học Bách khoa Hà Nội thông qua ca L NHÀ XUẤT BẢN KHOA HỌC VÀ KỸ THUẬT HÀ NỘI - 2008 ¿24 h Í MỤC LỤC Trang Mở đầu Mục lục õ Chương Những khái niệm mạch diện TC Mở đầu 1-1, Các thông số tác động mạch điện Mu 1-2 Q trình lượng mạch điện 1-3 Các thơng số thụ động mạch điện 1-4 Định nghĩa thông số thụ động theo quan điểm lượng l-5 Thông số nhiều phần tử mắc nối tiếp song song 10 11 18 1ỗ 17 18 1-6 Trở kháng dẫn nạp Cách biểu diễn phức cho tác động điều hòa TC 1-7 Cách biểu diễn mạch điện sơ đồ 1-8 Mạch tuyến tính khơng tuyến tính 20 23 25 1-9 Nguồn tác động tuyến tính sơ đồ tương đương 1-10 Bài tập giải mẫu 1-11 Bài tập : 27 29 37 Chương Những định luật phương pháp phân tích mạch điện 2-1 Các định luật Kirchhoff mạch điện 2-2 Hệ phương trình tổng quát mạch điện 40 40 4i 2-3 Những nhận xét tổng quát cách giải hệ phương trình mạch tuyến tính 45 2-4 Phân tích mạch điện phương pháp tần số 48 2-6, Công thức Heaviside 56 2-5 Phân tích mạch điện phép tính tốn tử 54 2-7 Phương pháp xếp chồng phân tích mạch điện tuyến tính' 58 2-8 Tính tương hỗ mạch điện - 2-9, Dịnh lý Thevenin Norton nguồn tương đương 2-10 Tính đối ngẫu mạch điện 61 62 64 2-11 Bài tập giải mẫu 2-12 Bàitập 66 84 “Chương Một số mạch đon giản duới tác động điều hòa chiều 3-1 Mở đầu 87 TC 87 3-2 Mạch dao động đơn 3-3 Chế độ xác lập điều hòa mạch dao động đơn _ 3-4 Một số dạng khác thường gặp mạch đao động đơn song Song 87 98 - 97 3-õ, Các mạch rC rL đ-6 Mạch có tác dụng hỗ cảm 3-7, Khái niệm công suất mạch làm việc với nguồn tác động điều hòa 3-8, Bài tập giải mẫu 3-9 Bài tập - 101 105 109 111 127 Chương Các mơ hình mạch tuyến tính, bất biến Các mơ hình mạch tuyến tính, bất biến -128 4-2 Một số định lý định nghĩa tổng quát mìàạch điện có thơng số tập trung 4-3 Tính thụ động tích cực 132 133 Chương Phân tích mạch tuyến tính, có thơng số tập trung, bất biến, tích cục máy tính œ\ CŒq cn -Ð Cách thành lập ma trận A, 8, Q máy tính -6 Phân tích mạch điện tuyến tính phương pháp dịng CI GŒt CI\ 134 186 188 Các khái niệm định lý tôpô Ä1 -2 -3 -4 Các ma trận tôpô Các định luật Kirchhoff với ma trận tôpô Phân tích mạch tuyến tính, chiều, xoay chiều theo phương pháp điện áp nút máy tính 141 156 điện vòng phương pháp vết cắt 158 161 Thuật toán đưa ma trận dạng bậc thang Chương Phân tích mạch điện khơng tuyến tính theo phương pháp điện áp nút máy tính Các thuật tốn phuong pháp tính 168 168 166 6-1 Cách thành lập phương trình 6-2 Cách giải phương trình theo thuật toán Newton-Raphson Chương Thuật toán thành lập hệ phuong trình hỗn hợp cho mạch n tuyến tính trở 170 7-1 Thành lập phương trình cho mạch z cửa tuyến tính, trở 170 7-2 Mạch n cửa tuyến tính trở khơng có nguồn điều _ khiển 1-3 Mạch nở cửa tuyến tính trở có nguồn điều khiển 172 177 Phân tích mạch điện tuyến tính, bất biến theo hệ phương trình Chương 182 trạng thái Bậc qui mạch điện Các biến trạng thái Các roaạch điện tuyến tính, bất biến, tựa qui Thành lập phương trình trạng thái mạch điện 183 188 188 190 195 200 RLCM máy tính Thành lập phương trình trạng thái mạch tuyến tính tích cực Thành lập phương trình đầu máy tính Chương 134 203 203 207 Giải phương trình trạng thái phương pháp số 9.1 Giải phương trình trạng thái miền thời gian 9-2 Giải phương trình trạng thái miền tần số Chương 10 Sụ thành lập phương trình trạng thái mạch điện khơng tuyến tính mạch điện biến đối theo thời gian 10- Các biến chuẩn tắc " - 10-3, Giải phương trÌình chuẩn tác mạch điện phi tuyến _ wã mạch điện thay đổi theo thời gian điện tủ phương pháp điện áp nút dùng máy tính 2190 210 214 224 MỎ ĐẦU Kỹ thuật vô tuyến điện đại thâm nhập vào tất ngành khoa học, kính tế quốc dân, văn hóa đời sống hàng ngày, công cụ đác lực thúc đẩy tiến khoa học kỹ thuật, Một ứng đụng quan trọng kỹ thuật vô tuyến điện truyền tin tức sóng diện từ dùng quảng bá thông tin Nhờ thiết bị vô tuyến điện, liên lạc mặt đất với tàu thuyền, máy bay, tàu vũ trụ, hành tỉnh - - - Truyền tin tức qua khoảng cách nhiệm vụ chủ yếu kỹ thuật vô tuyến điện - Đơ khoảng cách nguồn tin nơi nhận tin Khoảng cách để gửi tín hiệu khơng đáng kể truyền lệnh từ khối đến khối máy tính thể lớn lục địa, thơng tin vũ trụ Tin tức gửi cáp, dây dẫn sống không trung Tín hiệu mang tin tức truyền dạng tương tự số, hình 1, tín hiệu số truyền từ máy tính nơi gửi đến máy tính nơi nhận K enh thơng tin llình ! Hệ thống thơng tin vơ tuyến điện nói chung gồm khối hình [ l¬ | Muốn tín L ~— & + sờ Ta - Mế ksớ | | 9/0 chế Biến đối x| thành lín + LL Tin —_ ¡L _ điệu điện T~"rT" fm-~=~*~”~*~~~*~~~*~T~T~~T~T~TT~ ' Mới LÍ : Giơi mơ thư L_—- —.;——-—— : : _ * w Tơcl sống q Khuếch đại, L—~ : cáp? lọc £ổn số tuyên lĩnh ; —————————=————-—~— ~—-——T——= | Anen thụ hệ thống thông tin Cơ sở lý thuyết chức khối trình Lý thuyết mạch (phần: Mạch trình bày giáo trỉnh Cơ sở truyền tỉn, giáo điện tử Trường Đại học Bách khơng tuyến tính) giáo trỉnh Kỹ thuật mạch khoa Hà Nội điện khơng dùng xạ sóng Một ứng dụng rộng rãi phương pháp vô tuyến điện tử (radioelectronics) Việc phát điện từ dẫn đến ngành khoa học vơ tuyến tốn, điều khiển, ghi giữ số liệu triển rộng rãi máy tính điện tử tốc độ cao để tính xybecnêtic giữ vai trị định thành tựu lớn ngành vô tuyến điện tử Các hệ thống lĩnh vực phát triển vô trình điều khiển tự động hớa rãi nghiên cứu y học: tuyến điện tử Các thiết bị vô tuyến điện tử dùng rộng phận nhân tạo dụng cụ phục vụ việc chẩn đoán bệnh việc sản xuất thể người dùng để bù phần, toàn chức bị trọng Tớm lại, ứng dụng vô tuyến điện tử đa dạng nøố đóng vai trị quan tiến người tương lai truyền tín hiệu Trong kỹ thuật vơ tuyến điện đại, xét mật tín hiệu, để kênh thơng tin, tín hiệu dược chia thành loại sau: - tín hiệu liên tục có biên độ (h.3) (h.4) - tín hiệu lấy mẫu với giá trị (được gọi tín hiệu rời rạc) - tín hiệu Hiên tục lượng tử hóa (h.5) tín hiệu lấy mẫu lượng t¿shóa (được gọi tín hiệu số) (h 6) $ín} , Ịsữ 11T _ Tinh NI : Hình ình ? 3, Ị sú) ‡ , Lời —— 1Hinh 5Š HHnli É liên tục: " Trêntình sơ đồ phân loại mạch xử lý t tín hiệu “th + -n hiệu, Tiên tục mạch tương tự (analog circuft), ta không cần cho tàu: vào (sampled cireuit), khôi phục lại tín hiệu đầu - Khi xử lý tín hiệu liên tục mạch số (digital circuit), so với cách xử lý trên, cần làm thêm hai bước nữa: biến đổi tín hiệu tương tự ~ số (A/D converter), có nghĩa lượng tử hóa số hóa đầu vào mạch số; đầu mạch số, ta thực biến đổi số — " tương tự (D/A converter), tức giải mã Mạch tương tự -Ý > ©-»‡———| Lấy mẫu Mạch rời rạc —- =| Khơi phục Đ%b - TT Mạch À/D ì ố [ ~"“ S F71 D/A —wx L Tín hiệu số ; _ ®————> Ị l l #£———- i Í ——— Tín hiệu rời rạc | C2 s2 g: Tín hiệu liên tục Ỉ - > l Hình gày xử lý số tín hiệu ứng dụng mạnh mẽ, khơng tính xác cao linh hoạt cơng mà cịn khả nắng tạo phát triển vũ nghệ điện tử đại bão : Trong sách nơi đến lý thuyết mạch tương tự dùng xử lý tín hiệu tương tự, Cịn phần xử lý tín hiệu số mời bạn xem XỬ 1.Ý TÍN HIỆU sỐ tác giả Cũng cần nhấn mạnh công nghệ vi điện tử phát triển mạnh mẽ mở khả số hóa tồn thiết bị thông tin vô tuyến điện, lý thuyết mạch -_ tương tự kinh điển lý thuyết sở mà sinh viên cần nắm chác để tiếp thu đễ dàng kiến thức xử lý tín hiệu số tín hiệu rời rạc l Xét quan điểm mạch điện, hệ thống vô tuyến: điện bao gồm phần lớn cấu kiện mạch tuyến tính, khóng tuyến tính Mạch tuyến tính lại chia thành mạch eớ thơng số tập trung mạch có thơng số phân bố Mạch có thơng số tập trung gồm cuộn _ cảm, tụ điện, điện trở, loại mạch sau gồm dây dẫn, ống dẫn sóng, dụng cụ phát lượng Lý thuyết mạch không đề cập đến mạch có‹ thơng số phân bố Phần mạch trinh bày giáo trình "Siêu cao tần S Lý thuyết mạch giảng cho sinh viên năm thứ khoa Điện tử- Viễn thông khoa Công nghệ Thông Tin ban ngày Tại chức Trường Dại học Trong phần có SỐ chương, sinh viên cố thể dùng tham khảo để hiểu sâu mở rộng kiến thức Cuối chương cớ bổ sung tập giải mẫu tập Bộ sách chỉa làm tập Tập 1: Phân tích mạch điện tử, gồm 10 chương Chương thứ gồm khái niệm mạch điện Trong chương này, đưa định nghĩa thông số thụ động, tác động mạch điện: định nghĩa biếu diễn trở kháng dẫn nạp mạch điện theo hàm phức cho tác động điều hịa; định nghĩa mạch tuyến tính, khơng tuyến tính, định nghĩa mạch tương hỗ, không tương hỗ; đưa sơ đồ tương đương nguồn tuyến tỉnh Chương thứ hai, đề cập đến định luật điện Giới thiệu phương pháp phân tích mạch điện pháp dịng điện vịng, điện áp nút, theo nguyên lý Norton (định lý nguồn tương đương) miền tần Chương thứ ba giới thiệu số mạch đơn chương này, phân tích kỹ tính chất mạch dao động phương pháp phân tích mạch theo định luật Kirchhoff, phương xếp chồng, theo định lý Thévenin số œ, miền tần số phức s giản tác động điều hòa Trong đơn giản phức tạp, mạch rC, rL mạch ghép hỗ cảm Từ chương đến chương 10 phương pháp thuật tốn phân tích mạch điện tử tuyến tính khơng tuyến tính máy tính Chương giới thiệu mơ hình mạch tuyến tính khơng tuyến tính, bất biến, số định lý định nghĩa tổng quát mạch điện có thơng số tập trung Chương phân tích mạch tuyến tính có thơng số tập trung, bất biến, tích cực quan điểm sử dụng máy tính Trong chương này, đưa khái niệm định lý tôpô bản, ma trận tôpô, định luật Kirchhoff, phương pháp dòng điện vòng, điện áp nút, vết cắt sử dụng ma trận tôpô Chương đề cập đến phương pháp điện áp nút dùng phân tích mạch điện khơng tuyến tính (tự động thành lập giải phương trình máy tính dùng thuật tốn Newton — Raphson) Chương giới thiệu thuật tốn thành lập hệ phương trình hỗn hợp cho mạch n cửa tuyến tính, trở trường hợp khơng có có nguồn điều khiển Chương nói vấn đề phân tích mạch tuyến tính, bất biến theo hệ phương trình trạng thái Trong chương này, đề cập đến thành lập phương trỉnh trạng thái mạch RLCM, mạch tuyến tính tích cực phương trình đầu máy tính Chương nơi đến cách giải phương trình trạng thái bàng phương pháp số Chương 10 giới thiệu cách thành lập phương trình trạng thái mạch khơng tuyến tính mạch biến đổi theo thời gian Tập 2: Lý thuyết bốn cực ứng dụng, gồm chương Chương 11 giới thiệu cách biểu điễn hàm mạch miền tần số phức: phân bố _— điểm cực điểm không hàm mạch đồ thị Bode — công cụ tiện lợi để vẽ đặc tuyến biên độ đặc tuyến pha hàm mạch NET su Chương 12 giới thiệu lý thuyết bốn cực dùng phần tích mạch hai cửa sở tổng quát hóa cho mạch ø cửa Chương đề cập đến bốn cực tuyến tính, tương hỗ: hệ phượng trình đặc tính bốn cực, cách nối ghép nhiêu bốn cực với nhau, bốn cựẻ đổi xứng, bbốn cức cóó tật, ‹ CÁC thơng số sóng, 1na trận tần xạ mạch hai cửa _ nhiều cửa, ¡ Ghuang, 13 gái thiệu bốn quế tuyến tính, khơng b tương hỗ Trong chương nhấc lại nguồn điều khiến, sơ đồ tương đương bốn cực tuyến tính, khơng tương hỗ Các mạch không tương hỗ bàn đến chương mạch girator, mạch biến đổi trở kháng âm (NIC), mạch khuếch đại tranzito, mạch khuếch đại thuật toán Chương 14 nêu ứng dụng bốn cực: dùng để làm bốn cực suy giảm, bốn cực phối hợp trở kháng, mạch lọc tần số — mạch lọc tần số nêu mạch lọc loại É Xí, gồm mạch lọc thơng thấp, thông cao, thông đải chán dải Tập 3: Mạch khơng tuyến tính ~ Tổng hợp mạch tuyến tính, gồm chương Chương lỗ trình bày hệ thống khơng tuyến tính quan điểm quan hệ tác động đáp ứng hệ thống Chương đề cập đến số phương pháp thông dụng phân tích hệ thống khơng tuyến tính, cách biểu điễn gần đặc tuyến V—A hệ thống Chương 16 giới thiệu q trỉnh khơng tuyến tính điều chế, giải điều chế, tín hiệu điều biên, điều tần, điều pha, hạn chế dao động định đòng áp, nhân tần, chia tần điện, ổn Chương 17 viết tạo đao động điều hịa, chương trình bày tính ổn định ` mạch diện, hệ thống mạch tạo đao động có phản hồi, xét điều kiện tự kích mạch điện, mạch tạo đao động chế độ xác lập, trình thiết lập đao động Trong ba chương sau cố gắng sửa đổi sơ đồ dùng đèn điện tử sơ đồ dùng tranzito vi mạch để thích hợp với cơng nghệ Chương 18 trình bày vấn đề tổng hợp mạch tuyến tính, thụ động Chương đề cập đến vấn đề tổng hợp mạch cực LC, RC, GL vấn đề tổng hợp hàm truyền đạt bốn cực, bàn nhiều đến phương pháp xấp xÌ hàm truyền đạt, phương pháp _ thực mạch LC, #C Chương 19 giới thiệu phương pháp tổng quát tổng hợp mạch tích cực +c Trong sách này, chương 1, 2, 3, 14, 15, 16 giữ nội dung chủ yếu theo chương hai tập sách "Tín hiệu — Mạch hệ thống VTD" PGS Phương Xuân Nhàn biên soạn — Dể thích hợp với giảng, chủ biên thêm bớt vài chỗ chương 1, 2, thay sơ đồ dùng mạch điện tử sơ đồ dùng tranzito mạch khuếch đại thuật toán chương 16 Các chương lại PTS Hồ Anh Túy biên soạn Mặc dù có nhiều cố gắng việc hoàn chỉnh thảo cho lần xuất này, chấc khơng tránh khỏi cịn nhiều thiếu sớt Rất mong bạn đọc góp ý kiến để chúng tơi tiếp tục sửa chữa, bổ sung Chúng xin bày tổ lời cảm ơn PTS Phạm Minh Hà phản biện, động viên chúng tơi hồn thành sách Tác giả củ ; cÌse f (Chr(K) in Ƒ0 /9⁄eE),./ +") bepin sL :=sit+Chr(k) ecnd ; K=KEnter ; cnd un( ;write(Chr(k)) and ; ; lÏ si=” then bcpgm v ;=deÏ ;code :=0 ; lÍ v< >0 then write(v)} ;end else val(sGv,code) ; unU codes=0 GctRcal end :=v ; ; ; ———————————{———————-— Parameters of Prinung luput a file name funcion ToFile(tile,del :string) :siring ; Vậy P.: PWindow ; Ín ; sirmg ; Ch beogin : KcyTypc [n :=” ; ; TcxtBackGround(Bluc) ; P :=OpcnWindow(15,7,479/00de/° sotoxy(P ^.xi +2,P^,y1 +1) ”) ; ;TextColor(Yellow) ; t¿pcaf Ch :=GctKoy ;, If (Ch>32) and (Ch< 128) then i[ Ìcnpthfn) < P ^.x2-P ^ x1-3 then bcgmn fn :=fn tchr(Ch) ;wrte(chr(Ch)) cnd clsc ;- GÌsẽ (Ch=KBSpace) and (ín>”) then begin wriie(#8' "#8) ;dclete(n,length(n),1) ; cnd clse if Ch=KEsc then Ín :=” ; unul (Ch= KEnter) or (Ch=KEsc) ; ClioseWindow(P) ; lÍ n=” then lÝ Ch=KEntcr elsc ToFie 266 then ToFde :=” -else "FoFHe ;=Ín ` ; := dcf l (fengthGt)< 15) then end ; EWMm :; PWIndow ; begin TcxtBackGround(Red) EWin ; :=OpenWindow(25,15,65,17Error,”) TcxiColor(Ycllow) cnd ; { proccdurc ^.y1+1/I ;CloseWindow(EWm) can”( hít thí file ï f °) ; ; Output Prining ; ; WriteXY(EWn^.xI+2,EWin GetKey } Writing error { proccdure Error ; Var } the result ; Vvar Location : Text ; : PWindow Win proccdure Pause ; TS ; lÍ : imteger : boolean ; beuin writc(Press any key to contnue GetKey ;wrHeln ; end ; `) ; ; function RealToStr(a :real) :string ; VâF s :¡ SIFINE ; bvgin if (abs(a)< (1e-38)) then ä :=Ú ; iÍ (a999) str(a,S) ‡ deiete(s,1,1) ; { Ky tu trang hoác - } if (s[3|>'4) and (s{1]0) then begin not D then write(f° ' :Í), else D :=FALSE ; for j :=n+l-{n mod 5) to n write(f,CompToStr((A ^)[l]),' `) ; write(f#13#10) tlÍ TS cnd end cnd and ;Inc(l) ; (1Ì mod 15=0) then ; ; ; begin TS :=False ;ÏH :=0 ; casc ((Status and 7) shr 1)+1 of -1: begm AssignCrt(Location) ;TS :=true ; 268 Pausc ; TcxtBackGround(Bluc) ; ' Win :=OpenWindow(1,6,80,24OutpuL resuiU} "„ ToxtColor(Yellow) ; window(Win ^ x1 + Win ^ y1 + 1Wn ^ 2-1 Win ^.y2-1) end ; ; 2: Assipn(Locatan,ToPileCWrite To Eile',"RESULT.OUT)) ; 3: end ; Assipgn(Locaton,'PRN) ; {§I-]rewrite(Location) ;{Šl + } ï{ IOResult< >0 then begin Error ;exiL ;end ; if Ge(Status(4) then Wriing(Location,Addr(Yn),GNode-1,GNode-1,"Yn') : iÍ GctStatus(9) then Writing(Location,Addr(Un),1,GNode-1,"Un) "Inen') đ if GetStatus(6) then Writing(Location,A ddr(ngn),1GNode{8+ HỆ IORcsult< >0 then Error ; close(Location) ; ïf (Statlus and 1)=1 then bcgin Pause ;CloseWindow(Wñ) ' end cnd , ;window(1,1,80,25) ; ; ; } YcsNo Contost { ; luncuon Yes(ude :string ;XY tinteger) :boolean var W : PWindovw ¡ K : KeyType ¿ begin TextBackGround(Ligh(Gray) ; + 4y + 3,”, 3y W :=OpenWindow(.y,x+ length(tiÚe) ^ y1 + Lude) TcxtColor(White) sWriteXY(W ^ x1 +2,W rejpcat K:=GetKey ; unul chr(K) in ƑYy,Nỷn] ; write(chr(K)) ; Yes :=chr(K) in ƑYy] CloseWindow(W) ; end ; { , ; Save Data ) Procedurc Save ; Var Ok :boolean ; ff :text ; chh :char ; ñ rDyte ; Bcgin i not Changed then exit ; if filename=” then becgm 269 HelpCInput path oŸ f2) ; rehneat Ok :=truc ; flename :=ToFite(Save to filc,'DATASN) ; {$I-}assign(ff,filcaame) ;rcset(ff) :{9ÃÍ+} 1ƒ IOresull =0 then +" already cxist !Overwrite(Y/N)?.516) ; Ok := Yes(fileuame until Ôk ; cnd ;{SI-} rewiitc(fD ;OpenProgress(S,10,/Saving ShowProgress(1,gbranch + l) ; .) ; wrttcin(ff.gnode,' ; for ii :=] begin ',gbranch,` to gbranch “gomcga) Showprogrcss(,gbrancb) ; with aa^|H| bcgin wriie(,Nbranch,{Symbol write(Vsoursc.rc,` :3,}? ',Snode,' ,Dnode,` ",Vsourse.im,` *,Csourse.re,` writcln(R,` ',L} ',C;` ',Cbranch, °,øm, *IB,` *INP, cnd ¿ũd ; ; {81+} — t IORcsult< >0 then Error cÍsc Changed :=Falsc ; CloscProgress ;close(ff) ; End ; {———————————- Diaplay tm[ormation oŸ one branch Proccdurc Display(X :PRInfÍo) ; bcgin CỈTSCT ; with X^ begin wriclnC Branch ; ',nbhranch) ; writclnCSourse node : ',SNode) ; writelnDestination nodc : ?jDnode) ; write(Real value of vtàge sourse : ”) ; if Vsourse.re< >0 then writein(VSourse.Re) clsc writcln ; writc(imagin value of voltagc soursc : '} ; 1Ï Vsourse.im< >0 thén wrltela(VSoursc.lm) clse writeln ; writeCReal vaiue oÍ current soursc : ') ; IÝ Csourse.re< >0 then writeln(CSourse.Rc) clsc writcln ; write(Imagin value of currcnL sourse : '} ; 1lÍ Csourse.im< >0 hen wri(cln(CSourse.Im) writeCR : °) ; if R>0 then writeln(R) else writeln ; 210 wiiteŒL : ”} ; '} ; ”,CsotWsc.im,` clse writeÌn ; )M) ; ”} ; if L>0 then writcln(L) elsc writeln ; wiite(€ : ”) ; lf C>0 then wrieln(C) clac writcln ; wrileControl branch : `) ; 1Ú Chranch>0 then wrieln(Cbranch) else writeln ; wrc(Gm : °) ; 1Ï (Gm >0 then writeln(Gm) clse writeln ; writeCintcr Dranch : `} ; writeCPosiive IŸ inp>0 then wriItc(M : ”) if m>0 then end end elise wricln then wrneln(Ib} iÍ Ib>0 ; intcr nodc : `} ; writeln(inp) clse writeln ; ; else wrtcln ; writcln(m) ; ; { Procedure Modify data Modify ; VậF li :INLCPĐT ; W : PWimdow ; Key : KeyTypc ; Bcgin < h1) then cxIL ; ' (GNodc1 then begin li :—ii-1 ;display(addr(aa ^|ñ])) ; end ; ii0 ; ¡hen : =getreal(41,12,mm) bcgm ` gm :=0 ;WriteXY(41,12/SpQ8)) end ; ; ; Ib :=gctby(e{(41,13,1b) ; 1ƒ Ib>0 then begm inp :=pgetby(e(41,14/inp) end ;M :=getreal(41,15,M) ; clse bcgin Inp :=0 ;M :0) then - begin Error ;Ök :=falsc cnd ; until Ok ; QpenProgress(5,10,”Loading ; ¬ ShowProgress(1,20) ;{$I-} IŸf aa< >NIL then FreceMem(aa,sizeof{(aa)) ;au :=NIL ; _readln(f,gnode,gbranch,gomega) ; If (GNodeMaxNodc} or (GBranch < 1)or(GBranch >MaxBranch) begin CloseProgress Error end then ; ;ExIH ; ; new(aa{,Gbranch*sizcof(RInfo)}) ; for ñ :=1 to gbranch with aa ^{ñ] bcgin Nhranch :=ñ ; { Symbol :=” ;} Snode :=0 ; Dnode :=0 ; Vsourse.re :=0 ; Vsourseim :=0 ; Csourseim :=0; R:=0;L:=0;¡C:=0; Csoursc.re :=Ú; Chranch end :=Ú ; gm :=0 ; IB :=0 ; ; :z=1; while (noL EOF(f)) and (¡đ-1< =GBranch) bèmn ˆ with aa ^[H] readln(If,Nbranch,{Symbol,}Saode,Dnode,Vsourse.rc,Vsourse.im, ì Csoursc.re,Csourse.im,R,L,C,Cbranch.gm,IB,INP,M) ShowProgress(i,gbranch) ; l:=H+ÍEj; : cnd ; close(fÐ ; CloseProgress ;CgColor :=Blue ; jÍ i-1 gbranch then Error elsc modtfy ; End ; procedure Var } Crcatc new cIrculIL { Crecat ; ũ integer ; Ok :boolean ; P :PWindow ; Begin if Changcd then has becn changped !5Savc (V/N)? 10,10) ; t _¬ Gà begin Ok :=Yes(Data 1Í Ok then Save ; end ; TextRackGround(Blue) ;CGColor := Blue ;CTColor :=Yellow P :=OpcnWindow(1,6,80,24.Create a new circuit',' ') ; Help(lnpu( data for new circuiU) ;Blename :=” ;window(P ^,xI+ 1P ^.,v1 +1,P^.x2-1,P^,y2-1) WrtcXY(1,1/1npuL number of braneh : `) ; gbranch :=GctBytc(25,1,GBranch) ; untii (gbranch>0) and (gbranch< MaxBranch} WritvXY(1,2Input FCpvat gnodc number of node :=GeIByte(23,2,pnodc) unéUiÌ (node >0) and : ”} y ; (gnodc < MaxNode) ; WritcXY(1,3)InpuC seqnenece value ; ? ; rupem1 Eomcga unHÏ :=GctRcal(23,3,pomecga)} gomega >0 IŸ aa< >NIL ; ; then FrccMem(aa,sizeof(aa)) (ctmcm(2a,sizeof(RInfo)*GBranch) ; for ii ;=1 to gbranch with „a ^{i] begin NDranch :=ii ; { Symbal Snode :=1 ; Dnode :>GNodc ; Vsouzsc,re :=>Ô Vsoursc.im :=0 CsSOUHrsc.re ;=() Csoursc.im :=0 ; ; ; ; R.:=q; L:=0;0 C:=Ú; Chranch :=0 ; em :=0 ; IB :=0; INP :=0 ; M end :=Ù; ; modify ;CloseWindow(P) ; ; BEGIN SiartUp ; t¿pvat selccted 214 ; TexIColor(Yellow; tepvat end ; casc :=SelectMenu Selected of : ;=” ;} ; : ; MSavc : Sav€ MOpuon : OpHon ;¡ MPrin : Prinung ; MAbout MHTU_ : CopyRielL ; : HclpText ; ; MNcw begin Creat ;ThanhLap MObpecn begin Open ;ThanhLap MChange : bcgin MOuit cnd modify : iÍ Changed ;end ; ;cnd ; then Savc ; ; until Selccted= MOult ShutDown *ThanhLap ; cnd ; ; ; END 275 (§IFNDEF Print} {SDEFINE unL PrimL USCS Print) ; interface Cr(, Windows › Const Síatls : byựtc = #7I ; proccdure SetStatus(pos :byte ;cnable :boolean) function OGetStatus(pos :byte} :boolean ; proccdure Optton ; implementation ; Const Kind ; array[1 2,1 43] of strrng]l5] = (({ | ~Yn Œ {) ~§crecn '"(} ~File » () TPrinter ') ) ; Proccdure SetStatus(pos :byte ;enab le :boolean) ; hcrin IÍ cnable then Statis :=Slatus or (1 shỉ pOS) else Status end ; :=Status and not (1 shl pos) » F] TUn'?{Ị ; function GelStadus(nos :byte) :boolean : becwm CctSfatus :=fStatus and (1 shỉ pos}) >0 ; ¿nd ; proccdurc OpHon ; Vũ Old : bvtc ; Key : KcyType ; CurK, CurL,„ CurP : Integer ; Win : PWindow proccdure DrawWindow ; Var : Ì¡ Ìntcger ; begin textcolor(Whitc) ;tcxtbackground(Ligh tGray) ; Ø©Win :=penWindow(10,10,39.19" Print Option”,' ?) ; TextColor(Black) ; WriteXY(OWin ^ x1+2,OWin ^.y1 +2,Print Print Tọ) ; {+2 Text BackGround(Cyan) ;Ằ +3} for ¡ :=1 to begin WriteXY(OWin ^,xI+2,OWin ^ y1+2+iKind[1j) ; WrieXY(OWin ^.x1 + 15,OWin ^ y1+2+iKindJ2j]) ; chd?; —, l 2% TextColor(Blaek) ;TextBackGround( LightGray) ; WWrileXY(OWin ^ x1 +6/OWin ^.y2-1'ðbòòobờ) ; 1223} +15} TIngn °), ¡ 1220) WrilcXY(OWin^x1+13,OWin ^ý2-2/7) y2-1/0bbòððòð) WricXY(OWm Ê x] +174OWin^ ^.y2-2,7) › 1220} WrieXY(OWin^ x1+24OWin TextBackGround(OGrcen} ; ^ 32-2) ~“OK `; WriteXY(OWin ^ x1 +5,OWin ~ Canccl in ^V22Ÿ WrieXY(OWin ^ xi +16,OW ¿nd ¡ Selected(K,L pf0c¿durc :imtcger ”) ; ; :boolcan} ›A,C {223) VAT s; sưing|1ộ] ) bvgm CÓ then TexutColor(White) else TextColor(Black) ; i{ K=3 then begïn TextBackGround(Green) › ^ xi +8,OWin^.y242)7 QK) tí L=1 then WrieXY(OWHm 110Win^.v2-2,” Cancef) elsc WriteXY(OWH ^ xÌ + ond clsc hcgin ; TexiBuckGround(COyan) s :=Kimnd[K,L] ; f A then K=l then s{3| :='X clsc s[3] ".ố WrteXY(OWñ + 2+L5) ^ x1-11+ 13*K,OWin^.v1 s ; Jf C then TexColor(Whitc) TextBuckGround(LightGray) else TecxtColor(Black) ; WIn^ yÌ + 2); gotoxy(OWin ^ x1-11+£13*KO ¡if K=I then write(PrinU) ; se writeCPrint Tơ) ¿nd ¿nd ; ; bogin ow ; Old := -Status :DrawWind for CurL :=1 to begin then Í GetStatus(CurL + 3) selceted(1,CurL,TRUE,FALSR) then tÍ GetStatus(CurL-1) Selccted(2,CurLTRUE,FALSE) end CurK ; :=] ;CutL :=1 xCurP ï ; :=4 Selected(1,1,GctStatus(4),TRUE) : : n ^.yÌ + 3); gouxy(OWin ^ xI+4.OWIï 2T¡ tecpeaL Kuy := GetKcy ; Selcctcd(CurK,CurL,GctStatus(CurP),FALSE) custe Key of KRipht, KDown : ï CurK

Ngày đăng: 05/08/2022, 00:31

Xem thêm: