Matlab არ ხსნის m ფაილებს. MATLAB ფაილის გაფართოება

ქვემოთ მოცემულ ცხრილში მოცემულია სასარგებლო ინფორმაცია .matlab ფაილის გაფართოების შესახებ. ის პასუხობს კითხვებს, როგორიცაა:

  • რა არის ფაილი? მატლაბი?
  • რა პროგრამული უზრუნველყოფა მჭირდება ფაილის გასახსნელად. მატლაბი?
  • როგორც ფაილი. მატლაბიგაიხსნას, რედაქტირებას თუ დაბეჭდვას?
  • როგორ ხდება კონვერტაცია. მატლაბიფაილები სხვა ფორმატში?

ვიმედოვნებთ, რომ ეს გვერდი თქვენთვის სასარგებლო და ღირებული რესურსია!

მონაცემთა ბაზაში ნაპოვნია 0 გაფართოება და 1 მეტსახელი

✅ MATLAB სკრიპტი

აღწერა (ინგლისურად):
ფაილი არის ა MATLABსკრიპტი. MATLABარის მაღალი დონის ენა და ინტერაქტიული გარემო, რომელიც საშუალებას გაძლევთ შეასრულოთ გამოთვლითი ინტენსიური ამოცანები უფრო სწრაფად, ვიდრე ტრადიციული პროგრამირების ენები, როგორიცაა C, C++ და Fortran.

MIME ტიპი: აპლიკაცია/matlab-m

ჯადოსნური ნომერი: -

ჯადოსნური ნომერი: -

ნიმუში: -

M მეტსახელები:

მატლაბი

დაკავშირებული ბმულები:

M დაკავშირებული გაფართოებები:

ფაილის სხვა ტიპებმა ასევე შეიძლება გამოიყენონ ფაილის გაფართოება .მატლაბი.

🔴 ვერ ხსნით .matlab ფაილს?

როდესაც ფაილზე ორჯერ დააწკაპუნებთ მის გასახსნელად, Windows ამოწმებს ფაილის სახელის გაფართოებას. თუ Windows ამოიცნობს ფაილის სახელის გაფართოებას, ფაილი იხსნება პროგრამაში, რომელიც ასოცირდება ფაილის სახელის გაფართოებასთან. როდესაც Windows ვერ ცნობს ფაილის სახელის გაფართოებას, გამოჩნდება შემდეგი შეტყობინება:

Windows ვერ ხსნის ამ ფაილს:

მაგალითი.matlab

ამ ფაილის გასახსნელად Windows-მა უნდა იცოდეს რა პროგრამის გამოყენება გსურთ მის გასახსნელად...

თუ არ იცით როგორ დააყენოთ ფაილების ასოციაციები .მატლაბი, ჩეკი .

🔴 შესაძლებელია თუ არა ფაილის გაფართოების შეცვლა?

ფაილის სახელის და ფაილის გაფართოების შეცვლა არ არის კარგი იდეა. როდესაც ცვლით ფაილის გაფართოებას, თქვენ ცვლით თქვენს კომპიუტერში არსებული პროგრამების წაკითხვის ხერხს. პრობლემა ის არის, რომ ფაილის გაფართოების შეცვლა არ ცვლის ფაილის ფორმატს.

თუ გაქვთ რაიმე სასარგებლო ინფორმაცია ფაილის გაფართოების შესახებ .მატლაბი, !

🔴 შეაფასეთ ჩვენი MATLAB გვერდი

გთხოვთ დაგვეხმაროთ ჩვენი გვერდის შეფასებით MATLABქვემოთ მოცემული 5 ვარსკვლავიანი შეფასების სისტემაში. (1 ვარსკვლავი ცუდი, 5 ვარსკვლავი შესანიშნავი)

MatLab ბრძანების ხაზიდან მუშაობა რთულია, თუ საჭიროა ბევრი ბრძანების შეყვანა და მათი ხშირად შეცვლა. დღიურის შენახვა diary ბრძანების გამოყენებით და სამუშაო გარემოს შენახვა მხოლოდ აადვილებს საქმეს. MatLab ბრძანებების შესრულების ყველაზე მოსახერხებელი გზაა გამოყენება M-ფაილები,რომელშიც შეგიძლიათ აკრიფოთ ბრძანებები, შეასრულოთ ისინი ერთდროულად ან ნაწილებად, შეინახოთ ისინი ფაილში და გამოიყენოთ ისინი მომავალში. M-ფაილის რედაქტორი შექმნილია M-ფაილებთან მუშაობისთვის. ამ რედაქტორის გამოყენებით, შეგიძლიათ შექმნათ თქვენი საკუთარი ფუნქციები და დარეკოთ მათ, მათ შორის ბრძანების ხაზიდან.

მენიუს გაფართოება ფაილიმთავარი MatLab ფანჯარა და პუნქტში ახალიაირჩიეთ ქვეპუნქტი M-ფაილი. ახალი ფაილი იხსნება M-ფაილის რედაქტორის ფანჯარაში.

შეიტანეთ ბრძანებები რედაქტორში, რომლებიც იწვევს ორი გრაფიკის აგებას ერთ გრაფიკულ ფანჯარაში:

x = ;
f = exp(-x);
ქვენაკვეთი (1, 2, 1)
ნაკვეთი (x, f)
g = sin(x);
ქვენაკვეთი (1, 2, 2)
ნაკვეთი (x, g)

ახლა შეინახეთ ფაილი სახელწოდებით mydemo.m ქვედირექტორიაში მუშაობამთავარი MatLab დირექტორია არჩევით Შეინახე როგორცმენიუ ფაილირედაქტორი. ფაილში შემავალი ყველა ბრძანების გასაშვებად აირჩიეთ გაიქეციმენიუში გამართვა.ეკრანზე გამოჩნდება გრაფიკული ფანჯარა ფიგურა No1,ფუნქციების გრაფიკების შემცველი. თუ გადაწყვეტთ სინუსის ნაცვლად კოსინუსის გამოსახვას, მაშინ უბრალოდ შეცვალეთ წრფე g = sin(x) M-ფაილში g = cos(x) და კვლავ გაუშვით ყველა ბრძანება.

შენიშვნა 1

თუ აკრეფისას დაშვებულია შეცდომა და MatLab ვერ ცნობს ბრძანებას, მაშინ შესრულებულია ბრძანებები არასწორად შეყვანილამდე, რის შემდეგაც ბრძანების ფანჯარაში გამოჩნდება შეცდომის შეტყობინება.

M-ფაილის რედაქტორის მიერ მოწოდებული ძალიან მოსახერხებელი ფუნქციაა ზოგიერთი ბრძანების შესრულება.დახურეთ გრაფიკული ფანჯარა ფიგურა No1.აირჩიეთ მაუსის გამოყენებით მარცხენა ღილაკის დაჭერისას, ან ისრის ღილაკების გამოყენებით კლავიშის დაჭერისას , პროგრამის პირველი ოთხი ბრძანება და შეასრულეთ ისინი წერტილიდან შეაფასეთ შერჩევამენიუ ტექსტი. გთხოვთ გაითვალისწინოთ, რომ გრაფიკულ ფანჯარაში ნაჩვენები იყო მხოლოდ ერთი გრაფიკი, რომელიც შეესაბამება შესრულებულ ბრძანებებს. გახსოვდეთ, რომ ზოგიერთი ბრძანების შესასრულებლად უნდა აირჩიოთ ისინი და დააჭიროთ . შეასრულეთ დანარჩენი სამი პროგრამის ბრძანება და დააკვირდით გრაფიკული ფანჯრის მდგომარეობას. ივარჯიშეთ საკუთარ თავზე, ჩაწერეთ რამდენიმე მაგალითი წინა ლაბორატორიებიდან M-ფაილის რედაქტორში და გაუშვით ისინი.

შესაძლებელია M-ფაილის ინდივიდუალური ბლოკების მიწოდება კომენტარები,რომლებიც შესრულებისას გამოტოვებულია, მაგრამ მოსახერხებელია M-ფაილთან მუშაობისას. კომენტარები MatLab-ში იწყება პროცენტის ნიშნით და ავტომატურად მონიშნულია მწვანეში, მაგალითად:

% Sin(x)-ის გამოსახვა ცალკე ფანჯარაში

M-ფაილის რედაქტორს შეუძლია რამდენიმე ფაილის გახსნა ერთდროულად. ფაილებს შორის გადასვლა ხორციელდება სანიშნეების გამოყენებით, ფაილების სახელებით, რომლებიც მდებარეობს რედაქტორის ფანჯრის ბოლოში.

არსებული M-ფაილის გახსნა ხდება ელემენტის გამოყენებით გახსენითმენიუ ფაილისამუშაო გარემო, ან M-ფაილის რედაქტორი. თქვენ ასევე შეგიძლიათ გახსნათ ფაილი რედაქტორში ბრძანების სტრიქონიდან MatLab edit ბრძანების გამოყენებით, არგუმენტად მიუთითოთ ფაილის სახელი, მაგალითად:

რედაქტირების ბრძანება არგუმენტის გარეშე ქმნის ახალ ფაილს.
ყველა მაგალითი, რომელიც ჩანს ამ და შემდეგ ლაბორატორიებში, საუკეთესოდ არის აკრეფილი და შენახული M-ფაილებში, დაემატება კომენტარები და შესრულებულია M-ფაილის რედაქტორიდან. MatLab-ში რიცხვითი მეთოდებისა და პროგრამირების გამოყენება მოითხოვს M-ფაილების შექმნას.

2. M-ფაილების ტიპები

MatLab-ში M-ფაილის ორი ტიპი არსებობს: პროგრამის ფაილი(Script M-Files), რომელიც შეიცავს ბრძანებების თანმიმდევრობას და ფაილ-ფუნქცია(ფუნქცია M-Files), რომელიც აღწერს მომხმარებლის მიერ განსაზღვრულ ფუნქციებს.

თქვენ შექმენით ფაილური პროგრამა (ფაილის პროცედურა) წინა ქვეგანყოფილების წაკითხვისას. ფაილურ პროგრამაში დეკლარირებული ყველა ცვლადი ხელმისაწვდომი ხდება სამუშაო გარემოში მისი შესრულების შემდეგ. შეასრულეთ 2.1 ქვეპუნქტში მოცემული ფაილური პროგრამა M ფაილის რედაქტორში და აკრიფეთ whos ბრძანება ბრძანების სტრიქონში სამუშაო გარემოს შინაარსის სანახავად. ცვლადების აღწერა გამოჩნდება ბრძანების ფანჯარაში:

„ვინ
სახელის ზომა ბაიტების კლასი
f 1x71 568 ორმაგი მასივი
g 1x71 568 ორმაგი მასივი
x 1x71 568 ორმაგი მასივი
საერთო ჯამში არის 213 ელემენტი 1704 ბაიტის გამოყენებით

ერთ ფაილურ პროგრამაში განსაზღვრული ცვლადები შეიძლება გამოყენებულ იქნას სხვა ფაილურ პროგრამებში და ბრძანებების სტრიქონიდან შესრულებულ ბრძანებებში. ფაილურ პროგრამაში შემავალი ბრძანებების შესრულება ხორციელდება ორი გზით:

  • M-ფაილის რედაქტორიდან, როგორც ზემოთ იყო აღწერილი.
  • ბრძანების სტრიქონიდან ან სხვა ფაილური პროგრამიდან, ბრძანების სახით M ფაილის სახელის გამოყენებით.

მეორე მეთოდის გამოყენება ბევრად უფრო მოსახერხებელია, განსაკუთრებით იმ შემთხვევაში, თუ შექმნილი ფაილური პროგრამა მომავალში არაერთხელ იქნება გამოყენებული. სინამდვილეში, შექმნილი M-ფაილი ხდება ბრძანება, რომელსაც MatLab ესმის. დახურეთ ყველა გრაფიკული ფანჯარა და ჩაწერეთ mydemo ბრძანების სტრიქონში, ჩნდება გრაფიკული ფანჯარა, რომელიც შეესაბამება mydemo.m პროგრამის ფაილის ბრძანებებს. mydemo ბრძანების შეყვანის შემდეგ, MatLab ასრულებს შემდეგ მოქმედებებს.

  • ამოწმებს, არის თუ არა შეყვანილი ბრძანება შესრულების დროს განსაზღვრული რომელიმე ცვლადის სახელი. თუ ცვლადი შეყვანილია, გამოჩნდება მისი მნიშვნელობა.
  • თუ შეყვანა არ არის ცვლადი, მაშინ MatLab ეძებს შეყვანილ ბრძანებას ჩაშენებულ ფუნქციებს შორის. თუ ბრძანება აღმოჩნდება ჩაშენებული ფუნქცია, მაშინ ის შესრულებულია.

თუ არც ცვლადი და არც ჩაშენებული ფუნქცია არ არის შეყვანილი, მაშინ MatLab იწყებს M- ფაილის ძიებას ბრძანების სახელით და გაფართოებით. . ძებნა იწყება მიმდინარე დირექტორია(მიმდინარე დირექტორია), თუ M-ფაილი მასში არ არის ნაპოვნი, მაშინ MatLab ათვალიერებს დაინსტალირებულ დირექტორიას. საძიებო ბილიკები(გზა). ნაპოვნი M-ფაილი შესრულებულია MatLab-ში.

თუ არცერთი ზემოაღნიშნული ქმედება არ მოჰყვა წარმატებას, ბრძანების ფანჯარაში გამოჩნდება შეტყობინება, მაგალითად:

» mydem
??? განუსაზღვრელი ფუნქცია ან ცვლადი "mydem".

როგორც წესი, M-ფაილები ინახება მომხმარებლის დირექტორიაში. იმისათვის, რომ MatLab სისტემამ იპოვოს ისინი, ბილიკები უნდა იყოს მითითებული M-ფაილების ადგილმდებარეობის მითითებით.

შენიშვნა 2

არსებობს ორი მიზეზი, რომ შეინახოთ თქვენი M-ფაილები მთავარი MatLab დირექტორიას გარეთ. პირველი, როდესაც თქვენ ხელახლა დააინსტალირებთ MatLab, ფაილები, რომლებიც შეიცავს MatLab-ის მთავარი დირექტორიაში, შეიძლება განადგურდეს. მეორეც, როდესაც MatLab ამოქმედდება, ინსტრუმენტების ყუთის ქვედირექტორიაში არსებული ყველა ფაილი თავსდება კომპიუტერის მეხსიერებაში ოპტიმალური გზით, რათა გაზარდოს შესრულება. თუ თქვენ დაწერეთ M-ფაილი ამ დირექტორიაში, შეგიძლიათ გამოიყენოთ იგი მხოლოდ MatLab-ის გადატვირთვის შემდეგ.

3. ბილიკების დაყენება

MatLab ვერსიებში 6 .xგანსაზღვრულია მიმდინარე დირექტორია და საძიებო ბილიკები. ამ თვისებების დაყენება ხდება შესაბამისი დიალოგური ფანჯრების ან ბრძანების სტრიქონიდან ბრძანებების გამოყენებით.

მიმდინარე დირექტორია განისაზღვრება დიალოგურ ფანჯარაში მიმდინარე დირექტორიასამუშაო გარემო. თუ ეს ვარიანტი არჩეულია, ფანჯარა იმყოფება სამუშაო სივრცეში მიმდინარე დირექტორიამენიუ ხედისამუშაო გარემო.
მიმდინარე დირექტორია არჩეულია სიიდან. თუ ის არ არის სიაში, შეგიძლიათ დაამატოთ ის დიალოგური ფანჯრიდან დათვალიერება ამისთვის საქაღალდეგამოძახება სიის მარჯვნივ მდებარე ღილაკზე დაწკაპუნებით. მიმდინარე დირექტორიას შიგთავსი ნაჩვენებია ფაილების ცხრილში.

ძიების ბილიკები განსაზღვრულია დიალოგურ ფანჯარაში კომპლექტი ბილიკიბილიკის ნავიგატორი, წვდომა წერტილიდან კომპლექტი ბილიკიმენიუ ფაილისამუშაო გარემო.

კატალოგის დასამატებლად დააჭირეთ ღილაკს დამატება საქაღალდე დათვალიერება ამისთვის ბილიკიაირჩიეთ საჭირო დირექტორია. დირექტორიას დამატება ყველა ქვედირექტორიასთან ერთად ხდება ღილაკზე დაჭერით დამატება ქვესაქაღალდეებით. MATLAB ძებნა გზა.საძიებო ბრძანება შეესაბამება ამ ველში ბილიკების მდებარეობას; ჯერ იძებნება დირექტორია, რომლის ბილიკი მდებარეობს სიის ზედა ნაწილში. თქვენ შეგიძლიათ შეცვალოთ ძიების თანმიმდევრობა ან თუნდაც წაშალოთ გზა დირექტორიაში ველში დირექტორიას არჩევით MATLAB ძებნა გზადა განსაზღვრეთ მისი პოზიცია შემდეგი ღილაკების გამოყენებით:
გადაადგილება რომ ზედა - ადგილი სიის სათავეში;
გადაადგილება ზევით - ერთი პოზიციით ასვლა;
ამოღება - ამოღება სიიდან;
გადაადგილება ქვემოთ - გადაადგილება ერთი პოზიციით ქვემოთ;
გადაადგილება რომ ქვედა - მოათავსეთ სიის ბოლოში.

4. ბრძანებები ბილიკების დასაყენებლად.

ნაბიჯები MatLab 6-ში ბილიკების დასაყენებლად .xდუბლირებულია გუნდების მიერ. მიმდინარე დირექტორია დაყენებულია cd ბრძანებით, მაგალითად cd c:\users\igor. cd ბრძანება, გაცემული არგუმენტის გარეშე, ბეჭდავს გზას მიმდინარე დირექტორიაში. ბილიკების დასაყენებლად გამოიყენეთ path ბრძანება, რომელიც გამოიძახეთ ორი არგუმენტით:

გზა (გზა, "c:\users\igor") - ამატებს c:\users\igor დირექტორიას ძიების ყველაზე დაბალი პრიორიტეტით;
გზა ("c:\users\igor", path) - ამატებს დირექტორიას c:\users\igor ძიების უმაღლესი პრიორიტეტით.

ბილიკის ბრძანების გამოყენება არგუმენტების გარეშე იწვევს ეკრანზე საძიებო ბილიკების სიის ჩვენებას. თქვენ შეგიძლიათ ამოიღოთ ბილიკი სიიდან rmpath ბრძანების გამოყენებით:

rmpath("c:\users\igor") აშორებს ბილიკს დირექტორიაში c:\users\igor ბილიკების სიიდან.

შენიშვნა 3

ზედმეტად არ წაშალოთ დირექტორიაში ბილიკები, განსაკუთრებით ის, ვისი მიზანიც არ ხართ დარწმუნებული. ამოღებამ შეიძლება გამოიწვიოს MatLab-ში განსაზღვრული ზოგიერთი ფუნქცია მიუწვდომელი გახდეს.

მაგალითი.შექმენით დისკის root დირექტორიაში (ან ნებისმიერი სხვა დისკი ან დირექტორია, სადაც სტუდენტებს უფლება აქვთ შექმნან საკუთარი დირექტორიები) დირექტორია თქვენი გვარით, მაგალითად, WORK_IVANOV და ჩაწერეთ M-ფაილი mydemo.m იქ სახელით mydemo3.m. დააყენეთ ფაილის ბილიკები და აჩვენეთ ფაილების ხელმისაწვდომობა ბრძანების ხაზიდან. მიაწოდეთ შედეგები თქვენს ლაბორატორიულ ანგარიშში.

გადაწყვეტის ვარიანტი:

1. დისკის root დირექტორიაში იქმნება WORK_IVANOV დირექტორია.
2. M-ფაილი mydemo.m იწერება WORK_IVANOV დირექტორიაში, სახელწოდებით mydemo3.m.
3. იხსნება დიალოგური ფანჯარა კომპლექტი ბილიკიმენიუ ფაილი MatLab სამუშაო გარემო.
4. ღილაკი დაჭერილია დამატება საქაღალდედა დიალოგურ ფანჯარაში, რომელიც გამოჩნდება დათვალიერება ამისთვის ბილიკიარჩეულია WORK_IVANOV დირექტორია.
5. დირექტორიას დამატება მისი ყველა ქვედირექტორიით ხდება ღილაკზე დაჭერით დამატება თან ქვესაქაღალდეები.დამატებული დირექტორიასკენ მიმავალი გზა გამოჩნდება ველში MATLAB ძებნა გზა.
6. ბილიკის დასამახსოვრებლად დააჭირეთ ღილაკს Გადარჩენადიალოგური ფანჯარა კომპლექტი ბილიკი.
7. ყველა მოქმედების სისწორე მოწმდება ბრძანების სტრიქონიდან mydemo3 ბრძანების აკრეფით. ეკრანზე გამოჩნდება გრაფიკული ფანჯარა.

5. ფაილის ფუნქციები

ზემოთ განხილული ფაილური პროგრამები არის MatLab ბრძანებების თანმიმდევრობა; მათ არ აქვთ შემავალი ან გამომავალი არგუმენტები. რიცხვითი მეთოდების გამოსაყენებლად და საკუთარი აპლიკაციების MatLab-ში დაპროგრამებისას, თქვენ უნდა შეძლოთ ფაილის ფუნქციების შექმნა, რომლებიც შეასრულებენ აუცილებელ მოქმედებებს შეყვანის არგუმენტებით და აბრუნებენ შედეგს გამომავალი არგუმენტებით. ეს ქვეგანყოფილება შეიცავს რამდენიმე მარტივ მაგალითს, რომელიც დაგეხმარებათ გაიგოთ, როგორ იმუშაოთ ფაილის ფუნქციებთან. ფაილის ფუნქციები, ისევე როგორც ფაილის პროცედურები, იქმნება M-ფაილის რედაქტორში.

5.1. ფაილი ფუნქციონირებს ერთი შეყვანის არგუმენტით

დავუშვათ, რომ გამოთვლებში ხშირად საჭიროა ფუნქციის გამოყენება

აზრი აქვს ფაილის ფუნქციის ერთხელ დაწერას და შემდეგ გამოძახებას იქ, სადაც ეს ფუნქცია უნდა გამოითვალოს. გახსენით ახალი ფაილი M-ფაილის რედაქტორში და ჩაწერეთ ჩამონათვალის ტექსტი

ფუნქცია f = myfun(x)
f= exp(-x)*sqrt((x^2+1)/(x^4+0.1));

სიტყვა ფუნქცია პირველ სტრიქონში მიუთითებს, რომ ეს ფაილი შეიცავს ფუნქციის ფაილს. პირველი ხაზი არის ფუნქციის სათაური,რომელ სახლებს ფუნქციის სახელიდა შეყვანისა და გამომავალი არგუმენტების სიები. ჩამონათვალში ნაჩვენები მაგალითში ფუნქციის სახელია myfun, ერთი შეყვანის არგუმენტია x და ერთი გამომავალი არგუმენტია f. მას შემდეგ, რაც სათაური მოდის ფუნქციური სხეული(ამ მაგალითში იგი შედგება ერთი ხაზისგან), სადაც გამოითვლება მისი მნიშვნელობა. მნიშვნელოვანია, რომ გამოთვლილი მნიშვნელობა ჩაიწეროს f-ზე. მძიმით ჩართულია, რათა თავიდან იქნას აცილებული არასაჭირო ინფორმაციის ეკრანზე ჩვენება.

ახლა შეინახეთ ფაილი თქვენს სამუშაო დირექტორიაში. გთხოვთ გაითვალისწინოთ, რომ ნივთის შერჩევა Გადარჩენაან Გადარჩენა როგორცმენიუ ფაილიიწვევს ველში ფაილის შესანახი დიალოგური ფანჯრის გამოჩენას ფაილი სახელირომელიც უკვე შეიცავს სახელს myfun. არ შეცვალოთ იგი, შეინახეთ ფუნქციის ფაილი ფაილში შემოთავაზებული სახელით.

ახლა შექმნილი ფუნქცია შეიძლება გამოყენებულ იქნას ისევე, როგორც ჩაშენებული sin, cos და სხვა, მაგალითად ბრძანების ხაზიდან:

» y =myfun(1.3)
Y =
0.2600

საკუთარი ფუნქციების გამოძახება შესაძლებელია ფაილური პროგრამიდან და სხვა ფაილის ფუნქციიდან.

გაფრთხილება

ფუნქციის ფაილის შემცველი დირექტორია უნდა იყოს მიმდინარე, ან მისი ბილიკი უნდა დაემატოს საძიებო ბილიკს, წინააღმდეგ შემთხვევაში MatLab უბრალოდ ვერ იპოვის ფუნქციას, ან მის ნაცვლად დაურეკავს სხვას იმავე სახელით (თუ ის საძიებო დირექტორიაშია).

ჩამონათვალში მოცემულ ფაილის ფუნქციას აქვს ერთი მნიშვნელოვანი ნაკლი. ფუნქციის მნიშვნელობების მასივიდან შეფასების მცდელობა იწვევს შეცდომას და არა მნიშვნელობების მასივს, როგორც ეს ხდება ჩაშენებული ფუნქციების შეფასებისას.

» x = ;
» y = myfun(x)
??? შეცდომა ==> ^-ის გამოყენებისას
მატრიცა უნდა იყოს კვადრატული.
შეცდომა ==> C:\MATLABRll\work\myfun.m
მე-2 ხაზზე ==> f = exp(-x)*sqrt((x^2+1)/(x^4+1));

თუ ისწავლეთ მასივებით მუშაობა, მაშინ ამ ხარვეზის აღმოფხვრა რთული არ იქნება. თქვენ უბრალოდ უნდა გამოიყენოთ ელემენტარული ოპერაციები ფუნქციის მნიშვნელობის გამოთვლისას.
შეცვალეთ ფუნქციის სხეული, როგორც ნაჩვენებია შემდეგ ჩამონათვალში (გახსოვდეთ შეინახეთ ცვლილებები myfun.m ფაილში).

ფუნქცია f = myfun(x)
f = exp(-x).*sqrt((x.^2+1)./(x.^4+0.1));

ახლა myfun ფუნქციის არგუმენტი შეიძლება იყოს რიცხვი ან ვექტორი ან მნიშვნელობების მატრიცა, მაგალითად:

» x = ;
» y = myfun(x)
Y =
0.2600 0.0001

ცვლადი y, რომელშიც იწერება myfun ფუნქციის გამოძახების შედეგი, ავტომატურად ხდება საჭირო ზომის ვექტორი.

დახაზეთ myfun ფუნქცია სეგმენტზე ბრძანების ხაზიდან ან ფაილური პროგრამის გამოყენებით:

x = ;
y = myfun(x);
ნაკვეთი (x, y)

MatLab გთავაზობთ ფაილის ფუნქციებთან მუშაობის სხვა გზას - მათი გამოყენება ზოგიერთი ბრძანების არგუმენტად. მაგალითად, გრაფიკის გამოსაყენებლად გამოიყენეთ სპეციალური fplot ფუნქცია, რომელიც ცვლის ზემოთ მოცემულ ბრძანებების თანმიმდევრობას. fplot-ის გამოძახებისას ფუნქციის სახელი, რომლის გრაფიკის დახატვაც გსურთ, ჩასმულია აპოსტროფებში, შედგენის ლიმიტები მითითებულია ორი ელემენტის მწკრივ ვექტორში.

fplot ("myfun", )

დახატეთ myfun გრაფიკები ნაკვეთის და fplot-ის გამოყენებით იმავე ღერძებზე, შეჩერების გამოყენებით. გთხოვთ გაითვალისწინოთ, რომ fplot-ის გამოყენებით აგებული გრაფიკი უფრო ზუსტად ასახავს ფუნქციის ქცევას, რადგან fplot თავად ირჩევს არგუმენტის საფეხურს, ამცირებს მას ნაჩვენები ფუნქციის სწრაფი ცვლილების ადგილებში. მიაწოდეთ შედეგები თქვენს ლაბორატორიულ ანგარიშში.

5.2. ფაილის ფუნქციები მრავალი შეყვანის არგუმენტით

ფაილის ფუნქციების ჩაწერა მრავალი შეყვანის არგუმენტით პრაქტიკულად არ განსხვავდება ერთი არგუმენტით ჩაწერისგან. ყველა შეყვანის არგუმენტი მოთავსებულია მძიმით გამოყოფილი სიაში. მაგალითად, შემდეგი ჩამონათვალი შეიცავს ფაილის ფუნქციას, რომელიც ითვლის წერტილის რადიუსის ვექტორის სიგრძეს სამგანზომილებიან სივრცეში.
ფაილის ფუნქციის ჩამონათვალი რამდენიმე არგუმენტით

ფუნქცია r = რადიუსი 3 (x, y, z)
r = sqrt(x.^2 + y.^2 + z.^2);

» R = radius3(1, 1, 1)
R=
1.732

გარდა მრავალი შეყვანის არგუმენტის მქონე ფუნქციებისა, MatLab გაძლევთ საშუალებას შექმნათ ფუნქციები, რომლებიც აბრუნებენ მრავალ მნიშვნელობას, ე.ი. რამდენიმე გამომავალი არგუმენტის მქონე.

5.3. ფაილის ფუნქციები მრავალი გამომავალი არგუმენტით

ფაილის ფუნქციები მრავალი გამომავალი არგუმენტით სასარგებლოა ფუნქციების შეფასებისას, რომლებიც აბრუნებენ მრავალ მნიშვნელობას (მათემატიკაში მათ ე.წ. ვექტორული ფუნქციები). გამომავალი არგუმენტები ემატება გამომავალი არგუმენტების ჩამონათვალს, გამოყოფილი მძიმეებით და თავად სია ჩასმულია კვადრატულ ფრჩხილებში. კარგი მაგალითია ფუნქცია, რომელიც გარდაქმნის წამებში მითითებულ დროს საათებად, წუთებად და წამებად. ეს ფაილის ფუნქცია ნაჩვენებია შემდეგ ჩამონათვალში.

წამების საათებად, წუთებად და წამებად გადაქცევის ფუნქციის ჩამონათვალი

ფუნქცია = hms(წმ)
საათი = სართული (წმ/3600);
წუთი = სართული ((წმ-საათი*3600)/60);
წამი = წმ-საათი*3600-წუთი*60;

ფაილის ფუნქციების გამოძახებისას მრავალი გამომავალი არგუმენტით, შედეგი უნდა ჩაიწეროს შესაბამისი სიგრძის ვექტორზე:

» [N, M, S] = hms(10000)
H=
2
M =
46
S=
40

6. პროგრამირების საფუძვლები MatLab-ში

წინა ქვეთავებში გამოყენებული ფაილის ფუნქციები და პროგრამის ფაილი არის უმარტივესი პროგრამების მაგალითი.მათში შემავალი ყველა MatLab ბრძანება შესრულებულია თანმიმდევრობით. ბევრი უფრო სერიოზული პრობლემის გადასაჭრელად, თქვენ უნდა დაწეროთ პროგრამები, რომლებშიც მოქმედებები ციკლურად შესრულდება ან, გარკვეული პირობებიდან გამომდინარე, პროგრამების სხვადასხვა ნაწილი შესრულებულია. მოდით შევხედოთ მთავარ ოპერატორებს, რომლებიც აკონკრეტებენ MatLab ბრძანებების შესრულების თანმიმდევრობას. ოპერატორების გამოყენება შესაძლებელია როგორც ფაილის პროცედურებში, ასევე ფუნქციებში, რაც საშუალებას გაძლევთ შექმნათ პროგრამები რთული განშტოებული სტრუქტურებით.

6.1. მარყუჟის ოპერატორი ამისთვის

ოპერატორი შექმნილია განმეორებითი მოქმედებების განსაზღვრული რაოდენობის შესასრულებლად. განცხადების უმარტივესი გამოყენება შემდეგია:

დათვლისთვის = დაწყება: ნაბიჯი: საბოლოო
MatLab ბრძანებები
დასასრული

აქ count არის მარყუჟის ცვლადი, start არის მისი საწყისი მნიშვნელობა, საბოლოო არის მისი საბოლოო მნიშვნელობა და ნაბიჯი არის ნაბიჯი, რომლითაც რაოდენობა იზრდება ყოველ ჯერზე ციკლის შეყვანისას. მარყუჟი მთავრდება, როგორც კი რაოდენობა საბოლოოზე მეტი გახდება. მარყუჟის ცვლადს შეუძლია მიიღოს არა მხოლოდ მთელი რიცხვი, არამედ ნებისმიერი ნიშნის რეალური მნიშვნელობები. მოდით შევხედოთ for loop ოპერატორის გამოყენებას რამდენიმე ტიპიური მაგალითის გამოყენებით.
საჭირო იყოს მრუდების ოჯახის გამოყვანა , რომელიც მითითებულია ფუნქციით, პარამეტრიდან გამომდინარე პარამეტრების მნიშვნელობებისთვის -0.1-დან 0.1-მდე.
ჩაწერეთ ფაილის პროცედურის ტექსტი M-file რედაქტორში და შეინახეთ ფაილში FORdem1.m და გაუშვით შესასრულებლად (M-ფაილის რედაქტორიდან ან ბრძანების ხაზიდან მასში FORdem1 ბრძანების აკრეფით და დაჭერით. ):

% ფაილური პროგრამა მოსახვევების ოჯახის შესაქმნელად
x = ;
= -0.1:0.02:0.1-ისთვის
y = exp(-a*x).*sin(x);
შეჩერდი
ნაკვეთი (x, y)
დასასრული

შენიშვნა 4

M-ფაილის რედაქტორი ავტომატურად გვთავაზობს განცხადებების განთავსებას მარყუჟის შიგნით, მარცხენა კიდიდან ჩაღრმავებული. გამოიყენეთ ეს ფუნქცია პროგრამის ტექსტთან მუშაობის გასაადვილებლად.

FORdem1-ის შესრულების შედეგად გამოჩნდება გრაფიკული ფანჯარა, რომელიც შეიცავს მრუდების საჭირო ოჯახს.

დაწერეთ ფაილური პროგრამა ჯამის გამოსათვლელად

ჯამის გამოთვლის ალგორითმი იყენებს შედეგის დაგროვებას, ე.ი. ჯერ ჯამი არის ნული ( = 0), შემდეგ ცვლადში შეყვანილია ერთეული და გამოითვლება 1/ !, ემატება და შედეგი ისევ შედის . Უფრო იზრდება ერთით და პროცესი გრძელდება ბოლო ვადის 1/10-მდე!. Fordem2 ფაილური პროგრამა, რომელიც ნაჩვენებია შემდეგ ჩამონათვალში, ითვლის საჭირო თანხას.

თანხის გამოსათვლელად Fordem2 ფაილური პროგრამის ჩამონათვალი

% ფაილის პროგრამა თანხის გამოსათვლელად
% 1/1!+1/2!+ … +1/10!

% გადააყენეთ S თანხის დასაგროვებლად
S = 0;
ციკლში თანხის % დაგროვება
k = 1:10-ისთვის
S = S + 1/ფაქტორული (k);
Დასასრული
% გამოაქვს შედეგი ბრძანების ფანჯარაში S

ჩაწერეთ პროგრამის ფაილი M-ფაილის რედაქტორში, შეინახეთ ის მიმდინარე დირექტორიაში ფაილში Fordem2.m და შეასრულეთ. შედეგი გამოჩნდება ბრძანების ფანჯარაში, რადგან ფაილური პროგრამის ბოლო სტრიქონში არ შეიცავს მძიმით ცვლადის მნიშვნელობის საჩვენებლად

გაითვალისწინეთ, რომ ფაილური პროგრამის სხვა სტრიქონები, რომლებიც გამოიწვევდა შუალედური მნიშვნელობების ეკრანზე დაბეჭდვას, მთავრდება მძიმით, რათა ჩაეხშოს გამომავალი ბრძანების ფანჯარაში.

შემთხვევითი არ არის, რომ პირველი ორი სტრიქონი კომენტარებით გამოყოფილია ცარიელი ხაზით პროგრამის დანარჩენი ტექსტისგან. ისინი არიან ისეთები, რომლებიც ნაჩვენებია, როდესაც მომხმარებელი იყენებს დახმარების ბრძანებას ბრძანების ხაზიდან, რათა მოიპოვოს ინფორმაცია იმის შესახებ, თუ რას აკეთებს Fordem2.

>> დახმარება Fordem2
ფაილური პროგრამა თანხის გამოსათვლელად
1/1!+1/2!+ … +1/10!

ფაილური პროგრამებისა და ფაილის ფუნქციების წერისას, ნუ უგულებელყოფთ კომენტარებს!
ფაილურ პროგრამაში გამოყენებული ყველა ცვლადი ხელმისაწვდომი ხდება სამუშაო გარემოში. ისინი ეგრეთ წოდებული გლობალური ცვლადებია. მეორე მხრივ, ფაილურ პროგრამას შეუძლია გამოიყენოს სამუშაო გარემოში შეყვანილი ყველა ცვლადი.

განვიხილოთ ჯამის გამოთვლის პრობლემა, წინა მსგავსი, მაგრამ ცვლადის მიხედვით x

ამ თანხის გამოსათვლელად Fordem2 ფაილურ პროგრამაში, თქვენ უნდა შეცვალოთ ხაზი for loop-ში

S = S + x.^k/ფაქტორული(k);

პროგრამის გაშვებამდე, თქვენ უნდა განსაზღვროთ ცვლადი xბრძანების ხაზზე შემდეგი ბრძანებების გამოყენებით:

>> x = 1,5;
>>Fordem2
S=
3.4817

როგორც xშეიძლება იყოს ვექტორი ან მატრიცა, რადგან Fordem2 ფაილის პროგრამაში, ჯამის დაგროვებისას გამოიყენებოდა ელემენტი ელემენტის ოპერაციები.

Fordem2-ის დაწყებამდე თქვენ უნდა მიანიჭოთ ცვლადი xგარკვეული მნიშვნელობა და ჯამის გამოსათვლელად, მაგალითად, თხუთმეტი ტერმინიდან, მოგიწევთ ცვლილებების შეტანა ფაილური პროგრამის ტექსტში. ბევრად უკეთესია ფაილის უნივერსალური ფუნქციის დაწერა, რომელიც შეყვანის არგუმენტად იღებს მნიშვნელობას xდა თანხის ზედა ზღვარი, ხოლო შაბათ-კვირა - თანხის ღირებულება (x). sumN ფუნქციის ფაილი ნაჩვენებია შემდეგ ჩამონათვალში.

ფაილის ფუნქციის ჩამონათვალი ჯამის გამოსათვლელად

ფუნქცია S = sumN(x, N)
% ფაილის ფუნქცია ჯამის გამოსათვლელად
% x/1!+x^2/2!+ … +x^N/N!
% გამოყენება: S = sumN(x, N)

% გადააყენეთ S თანხის დასაგროვებლად
S = 0;
ციკლში თანხის % დაგროვება
m = 1:1:N-ისთვის
S = S + x.^m/ფაქტორული(მ);
დასასრული

მომხმარებელს შეუძლია გაიგოს sumN ფუნქციის გამოყენების შესახებ ბრძანების სტრიქონში help sumN აკრეფით. პირველი სამი სტრიქონი კომენტარებით გამოჩნდება ბრძანების ფანჯარაში, რომელიც გამოყოფილია ფაილის ფუნქციის ტექსტიდან ცარიელი ხაზით.

გაითვალისწინეთ, რომ ფაილის ფუნქციის ცვლადები არ არის გლობალური (m sumN ფაილის ფუნქციაში). m ცვლადის მნიშვნელობის ნახვის მცდელობა ბრძანების ხაზიდან მიგვიყვანს შეტყობინებაში, რომ m არ არის განსაზღვრული. თუ სამუშაო გარემოში არის გლობალური ცვლადი იგივე სახელით, რომელიც განისაზღვრება ბრძანების ხაზიდან ან ფაილის ფუნქციაში, მაშინ ის არანაირად არ არის დაკავშირებული ფაილის ფუნქციის ლოკალურ ცვლადთან. როგორც წესი, უმჯობესია საკუთარი ალგორითმების ფორმატირება, როგორც ფაილის ფუნქციები, რათა ალგორითმში გამოყენებული ცვლადები არ შეცვალონ სამუშაო გარემოს გლობალური ცვლადების მნიშვნელობები იმავე სახელწოდებით.

For მარყუჟები შეიძლება იყოს ჩადებული ერთმანეთში, მაგრამ ჩადგმული მარყუჟების ცვლადები განსხვავებული უნდა იყოს.

for loop სასარგებლოა განმეორებითი მსგავსი მოქმედებების შესრულებისას, როდესაც მათი რაოდენობა წინასწარ არის განსაზღვრული. უფრო მოქნილი while მარყუჟი საშუალებას გაძლევთ გადალახოთ ეს შეზღუდვა.

6.2. ხოლო მარყუჟის ოპერატორი

განვიხილოთ ჯამის გამოთვლის მაგალითი, წინა აბზაცის მაგალითის მსგავსი. თქვენ უნდა იპოვოთ სერიების ჯამი მოცემულისთვის x(სერიის გაფართოება):
.

ჯამის დაგროვება შეიძლება მანამ, სანამ ტერმინები არ არის ძალიან მცირე, ვთქვათ მეტი მოდული, აქ for loop საკმარისი არ არის, რადგან ტერმინების რაოდენობა წინასწარ უცნობია. გამოსავალი არის while მარყუჟის გამოყენება, რომელიც მუშაობს მაშინ, როცა მარყუჟის პირობა დაკმაყოფილებულია:

ხოლო მარყუჟის მდგომარეობა
MatLab ბრძანებები
დასასრული

ამ მაგალითში, მარყუჟის პირობა ადგენს, რომ მიმდინარე ვადა მეტია. ამ პირობის დასაწერად გამოიყენეთ მეტი ნიშანი (>). ფაილის ფუნქციის mysin ტექსტი, რომელიც ითვლის სერიის ჯამს, მოცემულია შემდეგ ჩამონათვალში.

Mysin ფაილის ფუნქციის ჩამონათვალი, რომელიც ითვლის სინუს სერიების გაფართოებას

ფუნქცია S = mysin(x)
% სინუსის გაანგარიშება სერიების გაფართოებით
% გამოყენება: y = mysin(x), -pi

S = 0;
k = 0;
ხოლო abs(x.^(2*k+1)/ფაქტორული(2*k+1))>1.0e-10
S = S + (-1)^k*x.^(2*k+1)/ფაქტორული(2*k+1);
k = k + 1;
დასასრული

გთხოვთ გაითვალისწინოთ, რომ while მარყუჟს, for მარყუჟისგან განსხვავებით, არ აქვს მარყუჟის ცვლადი, ამიტომ ციკლის დაწყებამდე k უნდა მივანიჭოთ ნულს, ხოლო ციკლის შიგნით k ერთით გავზარდოთ.
while მარყუჟის მდგომარეობა შეიძლება შეიცავდეს არა მხოლოდ > ნიშანს. ციკლის შესრულების პირობების დასაყენებლად ასევე მოქმედებს სხვა რელაციური ოპერაციები, რომლებიც ჩამოთვლილია ცხრილში 1. 1.

ცხრილი 1. ურთიერთობითი ოპერაციები

უფრო რთული პირობების დაყენება ხდება ლოგიკური ოპერატორების გამოყენებით. მაგალითად, პირობა შედგება ორი უტოლობის და , ერთდროული შესრულებისგან და იწერება ლოგიკური ოპერატორის და

და (x >= -1, x< 2)

ან ექვივალენტურად &

(x >= -1) & (x< 2)

ლოგიკური ოპერატორები და მათი გამოყენების მაგალითები მოცემულია ცხრილში. 2.

ცხრილი 2. ლოგიკური ოპერატორები

ოპერატორი

წერს MatLab-ს

ექვივალენტური ჩანაწერი

ლოგიკური "და"

და (x< 3, k == 4)

(x< 3) & (k == 4)

ლოგიკური "OR"

ან (x == 1, x == 2)

(x == 1) | (x == 2)

უარყოფა "არა"

უსასრულო სერიის ჯამის გამოთვლისას აზრი აქვს ტერმინების რაოდენობის შეზღუდვას. თუ სერია განსხვავდება იმის გამო, რომ მისი პირობები არ არის ნულისკენ მიდრეკილი, მაშინ მიმდინარე ტერმინის მცირე მნიშვნელობის პირობა შეიძლება არასოდეს დაკმაყოფილდეს და პროგრამა გადავა ციკლში. შეასრულეთ შეჯამება mysin ფაილის ფუნქციის while loop მდგომარეობაზე ტერმინების რაოდენობის შეზღუდვის დამატებით:

ხოლო (abs(x.^(2*k+1)/ფაქტორული(2*k+1))>1.0e-10)&(k<=10000))

ან ექვივალენტური ფორმით

while and(abs(x.^(2*k+1)/ფაქტორული(2*k+1))>1.0e-10), k<=10000)

განმეორებითი მოქმედებების ორგანიზება ციკლების სახით პროგრამას მარტივს და გასაგებს ხდის, მაგრამ ხშირად საჭიროა ბრძანებების ამა თუ იმ ბლოკის შესრულება გარკვეული პირობებიდან გამომდინარე, ე.ი. გამოიყენეთ ალგორითმის განშტოება.

6.3. პირობითი თუ განცხადება

პირობითი ოპერატორი თუსაშუალებას გაძლევთ შექმნათ განშტოების ალგორითმი ბრძანებების შესასრულებლად, რომელშიც გარკვეული პირობების დაკმაყოფილების შემთხვევაში გადის MatLab ოპერატორების ან ბრძანებების შესაბამისი ბლოკი.

if განცხადება შეიძლება გამოყენებულ იქნას მისი მარტივი ფორმით ბრძანებების ბლოკის შესასრულებლად, როდესაც გარკვეული პირობა დაკმაყოფილებულია, ან if-elseif-else კონსტრუქციაში განშტოების ალგორითმების დასაწერად.
დავუშვათ, ჩვენ უნდა შევაფასოთ გამოხატულება. დავუშვათ, რომ თქვენ ასრულებთ გამოთვლას რეალური რიცხვების დომენში და გსურთ აჩვენოთ გაფრთხილება, რომ შედეგი არის რთული რიცხვი. ფუნქციის გამოთვლამდე უნდა შეამოწმოთ x არგუმენტის მნიშვნელობა და ბრძანების ფანჯარაში აჩვენოთ გაფრთხილება, თუ x-ის მოდული არ აღემატება ერთს. აქ თქვენ უნდა გამოიყენოთ პირობითი if განცხადება, რომლის გამოყენება უმარტივეს შემთხვევაში ასე გამოიყურება:

თუ მდგომარეობა
MatLab ბრძანებები
დასასრული

თუ პირობა დაკმაყოფილებულია, მაშინ MatLab ბრძანებები, რომლებიც მდებარეობს if-სა და end-ს შორის, განხორციელდება, ხოლო თუ პირობა არ არის დაკმაყოფილებული, მაშინ ხდება ბოლოს მდებარე ბრძანებებზე გადასვლა. პირობის დაწერისას გამოიყენება ცხრილში მოცემული ოპერაციები. 1.

ფაილის ფუნქცია, რომელიც ამოწმებს არგუმენტის მნიშვნელობას, ნაჩვენებია შემდეგ ჩამონათვალში. გაფრთხილების ბრძანება გამოიყენება ბრძანების ფანჯარაში გაფრთხილების საჩვენებლად.

Rfun ფაილის ფუნქციის ჩამონათვალი, რომელიც ამოწმებს არგუმენტის მნიშვნელობას

ფუნქცია f = Rfun(x)
% ითვლის sqrt(x^2-1)
% ბეჭდავს გაფრთხილებას, თუ შედეგი რთულია
% გამოყენება y = Rfun(x)

% არგუმენტის შემოწმება
თუ აბს (x)<1
გაფრთხილება ("კომპლექსური შედეგი")
დასასრული
% ფუნქციის შეფასება
f = sqrt(x^2-1);

ახლა Rfun-ის გამოძახება ერთზე ნაკლები არგუმენტიდან გამოიწვევს გამაფრთხილებელ შეტყობინებას ბრძანების ფანჯარაში:

>> y = Rfun(0.2)
შედეგი რთულია
y =
0 + 0.97979589711327i

Rfun ფაილის ფუნქცია მხოლოდ აფრთხილებს, რომ მისი მნიშვნელობა რთულია და მასთან ყველა გამოთვლა გრძელდება. თუ რთული შედეგი ნიშნავს გაანგარიშების შეცდომას, მაშინ უნდა შეწყვიტოთ ფუნქციის შესრულება გაფრთხილების ნაცვლად შეცდომის ბრძანების გამოყენებით.

6.4. ფილიალის ოპერატორი if-elseif-else

ზოგადად, if-elseif-else ფილიალის ოპერატორის აპლიკაცია ასე გამოიყურება:

თუ პირობა 1
MatLab ბრძანებები
სხვა პირობა 2
MatLab ბრძანებები
სხვა პირობა 3
MatLab ბრძანებები
. . . . . . . . . . .
სხვა პირობა N
MatLab ბრძანებები
სხვა
MatLab ბრძანებები
დასასრული

ამა თუ იმ ერთის განხორციელების მიხედვით პირობების შესაბამისად, პროგრამის შესაბამისი ფილიალი მუშაობს, თუ არცერთი არ არის პირობები, მაშინ MatLab ბრძანებები, რომლებიც განთავსებულია სხვაზე, განხორციელდება. რომელიმე ფილიალის შესრულების შემდეგ ოპერატორი გადის. შეიძლება იყოს იმდენი ფილიალი, რამდენიც მოგწონს ან მხოლოდ ორი. ორი განშტოების შემთხვევაში გამოიყენება trailing else და სხვათა გამოტოვება. განცხადება ყოველთვის დასასრულით უნდა დასრულდეს.
if-elseif-else განცხადების გამოყენების მაგალითი მოცემულია შემდეგ ჩამონათვალში.

ფუნქცია ifdem(a)
% if-elseif-else განაცხადის გამოყენების მაგალითი

თუ (a == 0)
გაფრთხილება ("a უდრის ნულს")
სხვა შემთხვევაში a == 1
გაფრთხილება ("a უდრის ერთს")
სხვა შემთხვევაში a == 2
გაფრთხილება ("a უდრის ორს")
სხვა შემთხვევაში a >= 3
გაფრთხილება ("a, სამზე მეტი ან ტოლი")
სხვა
გაფრთხილება ("a არის სამზე ნაკლები და არ არის ნულის ტოლი, ერთი, ორი")
დასასრული

6.5. ფილიალის ოპერატორი შეცვლა

გადართვის განაცხადი შეიძლება გამოყენებულ იქნას მრავალჯერადი შერჩევის ან განშტოების შესასრულებლად . ეს არის if-elseif-else განცხადების ალტერნატივა. ზოგადად, გადართვის ოპერატორის გამოყენება ასე გამოიყურება:

შეცვლა switch_expression
საქმის ღირებულება 1
MatLab ბრძანებები
საქმის ღირებულება 2
MatLab ბრძანებები
. . . . . . . . . . .
საქმე ღირებულება N
MatLab ბრძანებები
საქმე (მნიშვნელობა N+1, მნიშვნელობა N+2, ...)
MatLab ბრძანებები
. . . . . . . . . . . .
საქმე (მნიშვნელობა NM+1, მნიშვნელობა NM+2,…)
წინააღმდეგ შემთხვევაში
MatLab ბრძანებები
დასასრული

ამ განცხადებაში პირველად გამოითვლება switch_expression-ის მნიშვნელობა (ეს შეიძლება იყოს სკალარული რიცხვითი მნიშვნელობა ან სიმბოლოების სტრიქონი). შემდეგ ეს მნიშვნელობა შედარებულია მნიშვნელობებთან: მნიშვნელობა 1, მნიშვნელობა 2, ..., მნიშვნელობა N, მნიშვნელობა N+1, მნიშვნელობა N+2, ..., მნიშვნელობა NM+1, მნიშვნელობა NM+2, ... რომელიც ასევე შეიძლება იყოს რიცხვითი ან სტრიქონი) . თუ დამთხვევა მოიძებნება, MatLab ბრძანებები შესრულდება შესაბამისი ქეისის სიტყვის შემდეგ. წინააღმდეგ შემთხვევაში, MatLab ბრძანებები, რომლებიც მდებარეობს სხვა და ბოლოს საკვანძო სიტყვებს შორის, შესრულდება.

შეიძლება იყოს ნებისმიერი რაოდენობის სტრიქონი საკვანძო სიტყვით, მაგრამ საკვანძო სიტყვასთან ერთად უნდა იყოს მხოლოდ ერთი ხაზი.

რომელიმე განშტოების შესრულების შემდეგ გადამრთველი გადის და სხვა შემთხვევებში მითითებული მნიშვნელობები არ მოწმდება.

გადამრთველის გამოყენება ილუსტრირებულია შემდეგი მაგალითით:

ფუნქცია demswitch (x)
a = 10/5 + x
შეცვლა ა
საქმე -1
გაფრთხილება ("a = -1")
შემთხვევა 0
გაფრთხილება ("a = 0")
შემთხვევა 1
გაფრთხილება ("a = 1")
საქმე (2, 3, 4)
გაფრთხილება ("a უდრის 2 ან 3 ან 4")
წინააღმდეგ შემთხვევაში
გაფრთხილება ("a არ არის ტოლი -1, 0, 1, 2, 3, 4")
დასასრული

>> x = -4
ამომრთველი (x)
a =
1
გაფრთხილება: a = 1
>> x = 1
ამომრთველი (x)
a =
6
გაფრთხილება: a არ უდრის -1, 0, 1, 2, 3, 4

6.6. მარყუჟის გაწყვეტის ოპერატორი შესვენება

ციკლური გამოთვლების ორგანიზებისას ყურადღება უნდა მიექცეს, რომ არ მოხდეს შეცდომები მარყუჟის შიგნით. მაგალითად, დავუშვათ, რომ გეძლევათ მთელი რიცხვებისგან შემდგარი x მასივი და გსურთ შექმნათ ახალი y მასივი y(i) = x(i+1)/x(i) წესის მიხედვით. ცხადია, პრობლემის მოგვარება შესაძლებელია for loop-ის გამოყენებით. მაგრამ თუ თავდაპირველი მასივის ერთ-ერთი ელემენტი ნულია, მაშინ გაყოფა გამოიწვევს inf-ს და შემდგომი გამოთვლები შეიძლება უსარგებლო იყოს. ამ სიტუაციის თავიდან აცილება შესაძლებელია ციკლიდან გასვლით, თუ x(i)-ის მიმდინარე მნიშვნელობა ნულის ტოლია. პროგრამის შემდეგი ფრაგმენტი გვიჩვენებს შესვენების განაცხადის გამოყენებას ციკლის შეწყვეტისთვის:

x = 1:20-ისთვის
z = x-8;
თუ z==0
შესვენება
დასასრული
y = x/z
დასასრული

როგორც კი z ცვლადი გახდება 0, ციკლი წყდება.

break განაცხადი საშუალებას გაძლევთ ადრე შეწყვიტოთ for და while მარყუჟების შესრულება. ამ მარყუჟების გარეთ, შესვენების განცხადება არ მუშაობს.

როდესაც შესვენების განცხადება გამოიყენება წყობილ მარყუჟში, ის გადის მხოლოდ შიდა მარყუჟიდან.

ფაილები საკმაოდ გავრცელებული MATLAB ობიექტებია. ზოგიერთი ფაილის ტიპი უკვე განხილულია წინა თავებში. ეს გაკვეთილი განიხილავს ფაილის თვისებებს, რომლებიც არ არის დამოკიდებული მათ ტიპზე და ვრცელდება ნებისმიერ ფაილზე.

ფაილიჩვეულებრივ არის მონაცემთა ერთობლიობა, რომელიც გაერთიანებულია ერთი სახელით. ფაილის ტიპი ჩვეულებრივ განისაზღვრება მისი გაფართოებით. ჩვენ განვიხილავთ ფაილს მთლიანობაში, თუმცა ფიზიკურად დისკზე ის შეიძლება იყოს წარმოდგენილი რამდენიმე ზონით - ამბობენ, რომ ამ შემთხვევაში ფაილი ფრაგმენტულია.

ნებისმიერი ფაილის გამოყენებამდე ის უნდა იყოს გახსნადა გამოყენების დასრულების შემდეგ - დახურული. ბევრი ფაილი შეიძლება იყოს გახსნილი და იკითხება ერთდროულად. მოდით გადავხედოთ ფაილების გახსნისა და დახურვის ბრძანებებს.

  • გუნდი ღია სახელი, სადაც სახელი უნდა შეიცავდეს სიმბოლოთა მასივს ან სიმბოლოების ცვლადს, ხსნის ფაილებს სახელის პარამეტრის ანალიზისა და სახელის გაფართოების მიხედვით:
    • ცვლადი- ხსნის სახელით დასახელებულ მასივს Array Editor-ში;
    • .მათი- ხსნის ფაილს, ინახავს ცვლადებს სტრუქტურაში სამუშაო სივრცეში;
    • .ნახ- ხსნის მას აღწერის გრაფიკულ რედაქტორში Property Editor;
    • .მ- ხსნის m-ფაილს editor-debugger-ში;
    • .მდლ- ხსნის მოდელს Simulink-ში;
    • .რ- იხსნება, თუ არის ერთი, m-ფაილი ამავე სახელწოდებით;
    • .html- ხსნის HTML დოკუმენტს დამხმარე ბრაუზერში.

თუ გაფართოების მქონე ფაილები არსებობს MATLAB გზაზე, მაშინ ფაილი, რომელიც ბრუნდება ბრძანებით, რომელი სახელი იხსნება, თუ არა, მაშინ ფაილი ფაილური სისტემიდან. თუ ფაილს არ აქვს სახელის გაფართოება, მაშინ ის იხსნება პროგრამის მიერ, რომლის ფაილის ფორმატი იქნება გამოვლენილი რომელი ფუნქციით („ფაილის სახელი“). ნაგულისხმევად, openother იძახება ყველა ფაილს დაბოლოებით, გარდა ზემოთ ჩამოთვლილი. . Open იძახებს ფუნქციებს orepxxx, სადაც xxx არის ფაილის გაფართოება. გამონაკლისია სამუშაო სივრცის ცვლადები, რომლებისთვისაც არის openvar-ის გამოძახება და ნახაზები, რომლებისთვისაც openim არის გამოძახებული. t-ფაილების შექმნით, სახელად orepxxx, მომხმარებლებს შეუძლიათ შეცვალონ ფაილების დამუშავება და სიაში ახალი გაფართოებების დამატება. თქვენ უნდა დახუროთ ფაილები, რომლებიც გახსნილია ღია რედაქტორებიდან, სახელწოდებით openxxx.

  • = uigetfile(FILTERSPEC.Title). ხსნის დიალოგს სახელწოდებით Title და FILTERSPEC ფილტრით (მაგალითად, უჯრედების მასივი, რომელიც შეიცავს ფაილის გაფართოებებს) და აბრუნებს მომხმარებლის მიერ არჩეულ ფაილს და მის გზას. აბრუნებს FILENAME=0-ს, თუ ფაილი არ არსებობს ან თუ მომხმარებელმა დააწკაპუნა გაუქმებაზე. = uigetfile(FILTERSPEC, Title. X. Y) ათავსებს დიალოგს X, Y-ზე (პიქსელის კოორდინატები).

Uigetfile("*.m;*.fig;*.mat:*.mdl" , "ყველა MATLAB ფაილი (*.m, *.fig, *.mat. *.mdl)")...

  • = uiputfile (FILTERSPEC. TITLE)ინახავს ფაილს მომხმარებლის მიერ კონტროლირებად დიალოგში. პარამეტრები იგივეა, რაც uigetfile ფუნქციაში.
  • გუნდი ui გახსნახსნის დიალოგს და თუ მომხმარებელმა შეარჩია ფაილი ცნობილი გაფართოებით, უწოდებს მას open-ის გამოყენებით, ან თუ ფაილის სახელს აქვს უცნობი გაფართოება, მაშინ გამოიძახება uigetfile. uiopen შეყვანის არგუმენტები შეიძლება იყოს mat lab, load, figure, simullink, editor. შეყვანის არგუმენტების ან matlab-ის შეყვანის არგუმენტის გარეშე, დიალოგური ფანჯარა მოგთხოვთ აირჩიოთ *.m, *.fig, *.mat, *.mdl (თუ Simulink დაინსტალირებულია), *.cdr (თუ დაინსტალირებულია მდგომარეობის ნაკადი), *.rtw, *. tmf, *.tlc, *.c, *.h, *.ads, *.adb (თუ რეალურ დროში სემინარი დაინსტალირებულია). დატვირთვის არგუმენტით - *.mat. ფიგურის არგუმენტით *.fig; simul ink - *.mdl, რედაქტორი - *.m, *.mdt *.cdr, *.rtw, *.tmf, *.tlc, *.c, *.h, *.ads, *.adb.

ღია ფიგურა

  • გუნდი uiloadხსნის ფაილს მომხმარებლის მიერ კონტროლირებად დიალოგში ბრძანების გამოყენებით დატვირთვა.

ფუნქცია ui იმპორტიგაშვება იმპორტის ოსტატი(Import Wizard), რომლის იმპორტი ხდება მიმდინარე საქაღალდეში ან Windows ბუფერში არსებული ფაილიდან. არჩევანს ემთხვევა მონაცემების იმპორტიმენიუდან ფაილიან არჩევანი პასტა სპეციალურიმენიუდან რედაქტირება MATLAB.

  • UI იმპორტი (FILENAME)- იწყებს იმპორტის ოსტატს, ხსნის ფაილს FILENAME. იმპორტის ოსტატი აჩვენებს მონაცემთა გადახედვას. მონაცემები და მისი წარმოდგენა MATLAB ცვლადების სახით გამოჩნდება გადახედვის ფანჯარაში. ფაქტობრივი მონაცემები, ტექსტი და სათაურები წარმოდგენილია MATLAB-ის სხვადასხვა ცვლადით. ASCII მონაცემებისთვის, თქვენ უნდა დარწმუნდეთ, რომ იმპორტის ოსტატი ამოიცნობს სვეტების დელიმიტერებს. დამოუკიდებლად, მას შეუძლია ამოიცნოს მხოლოდ ჩანართის სიმბოლო, სივრცე, მძიმე ან მძიმით. თქვენ უნდა დააჭიროთ ღილაკს შემდეგიდა შემდეგ ფანჯარაში ან დაადასტურეთ Wizard-ის მიერ გაკეთებული გამყოფის არჩევანი, ან აირჩიეთ სხვადა შეიყვანეთ ნებისმიერი გამყოფი.
  • ui იმპორტი (" -ფაილი")- პირველად აჩვენებს ფაილის შერჩევის დიალოგს.
  • ui იმპორტი ("-pastespecial")- პირველ რიგში აჩვენებს Windows ბუფერში არსებულ შიგთავსს გადახედვისთვის.
  • S = ui იმპორტი (...)ინახავს მიღებულ ცვლადებს S სტრუქტურის ველებად.
  • გუნდი uisave- მომხმარებლის მიერ კონტროლირებადი შენახვა (შენახვის ბრძანება აღწერილია მე-2 გაკვეთილზე) Windows დიალოგით.
  • ფუნქცია შეინახე როგორც- ინახავს ნახატს ან Simulink მოდელს სასურველ ფორმატში შესანახ საშუალებაზე ან მოწყობილობაზე, რომელიც ჩართულია ბეჭდვით.
  • ფუნქცია saveas (H, "FILENAME")- ინახავს მონაცემებს აღწერის გრაფიკული ბრძანების H შესაბამისად ფაილში FILENAME. ფაილის ფორმატი განისაზღვრება FILENAME სახელის გაფართოებით.
  • ფუნქცია saveas (H. "FILENAME". "FORMAT")- აკეთებს იგივეს, მაგრამ FORMAT პარამეტრით (ფორმატი დაყენებულია ისევე, როგორც ფაილის სახელის გაფართოება და შეიძლება განსხვავდებოდეს მისგან). FORMAT უპირატესობას ანიჭებს ფაილის სახელის გაფართოებას. ფუნქციის პარამეტრები:
    • "ლეღვი"- შეინახეთ ნახატი (გრაფიკი) ორობითი ლეღვის ფაილში;
    • "მ"ან "mfig"- შეინახეთ ნახატი ბინარულ ფიგურულ ფაილში და შექმენით m-ფაილი მისი ჩასატვირთად;
    • "მმატ"- შეინახეთ ნახატი m-ფაილში, როგორც ბრძანებების თანმიმდევრობა ნახატის შესაქმნელად. შეიძლება არ ჰქონდეს უახლესი გრაფიკული ფუნქციების მხარდაჭერა.

Saveas(gcf. "output" , "fig") saveas(gcf, "output" , "bmp")

ბრძანება ან ფუნქცია წაშლაწაშლის ფაილს ან გრაფიკულ ობიექტს.

MATLAB ფაილის გახსნასთან დაკავშირებული პრობლემების ყველაზე გავრცელებული მიზეზი უბრალოდ თქვენს კომპიუტერში დაინსტალირებული შესაბამისი აპლიკაციების ნაკლებობაა. ამ შემთხვევაში, საკმარისია იპოვოთ, ჩამოტვირთოთ და დააინსტალიროთ პროგრამა, რომელიც ემსახურება ფაილებს MATLAB ფორმატში - ასეთი პროგრამები ხელმისაწვდომია ქვემოთ.

საძიებო სისტემა

შეიყვანეთ ფაილის გაფართოება

დახმარება

ნახავ

გთხოვთ გაითვალისწინოთ, რომ ზოგიერთი დაშიფრული მონაცემი ფაილებიდან, რომლებსაც ჩვენი კომპიუტერი არ კითხულობს, ზოგჯერ შეიძლება ნახოთ Notepad-ში. ამ გზით წავიკითხავთ ტექსტის ან რიცხვების ფრაგმენტებს - ღირს შემოწმება, მუშაობს თუ არა ეს მეთოდი MATLAB ფაილების შემთხვევაში.

რა უნდა გააკეთოს, თუ განაცხადი სიიდან უკვე დაინსტალირებულია?

ხშირად დაინსტალირებული აპლიკაცია ავტომატურად უნდა დაუკავშირდეს MATLAB ფაილს. თუ ეს არ მოხდა, მაშინ MATLAB ფაილი წარმატებით შეიძლება ხელით დაუკავშირდეს ახლად დაყენებულ აპლიკაციას. უბრალოდ დააწკაპუნეთ მაუსის მარჯვენა ღილაკით MATLAB ფაილზე და შემდეგ არსებულიდან აირჩიეთ „აირჩიე ნაგულისხმევი პროგრამა“. შემდეგ თქვენ უნდა აირჩიოთ "ნახვა" ვარიანტი და იპოვოთ თქვენი საყვარელი აპლიკაცია. შეყვანილი ცვლილებები უნდა დამტკიცდეს "OK" ოფციის გამოყენებით.

პროგრამები, რომლებიც ხსნიან MATLAB ფაილს

ფანჯრები

რატომ არ შემიძლია MATLAB ფაილის გახსნა?

MATLAB ფაილებთან დაკავშირებული პრობლემები შესაძლოა სხვა მიზეზების გამო იყოს. ზოგჯერ თქვენს კომპიუტერში პროგრამული უზრუნველყოფის დაყენებაც კი, რომელიც მხარს უჭერს MATLAB ფაილებს, არ გადაჭრის პრობლემას. MATLAB ფაილის გახსნისა და მუშაობის შეუძლებლობის მიზეზი ასევე შეიძლება იყოს:

შეუსაბამო MATLAB ფაილების ასოციაციები რეესტრის ჩანაწერებში
- ჩვენს მიერ გახსნილი MATLAB ფაილის კორუფცია
- MATLAB ფაილის ინფექცია (ვირუსები)
- ძალიან ცოტა კომპიუტერული რესურსი
- მოძველებული მძღოლები
- MATLAB გაფართოების ამოღება Windows რეესტრიდან
- პროგრამის არასრული ინსტალაცია, რომელიც მხარს უჭერს MATLAB გაფართოებას

ამ პრობლემების გამოსწორებამ უნდა გამოიწვიოს MATLAB ფაილების გახსნა და მუშაობა მარტივად. იმ შემთხვევაში, თუ თქვენს კომპიუტერს კვლავ აქვს პრობლემები ფაილებთან, თქვენ უნდა მიმართოთ ექსპერტს, რომელიც დაადგენს ზუსტ მიზეზს.

ჩემი კომპიუტერი არ აჩვენებს ფაილის გაფართოებებს, რა უნდა გავაკეთო?

Windows სისტემის სტანდარტულ ინსტალაციაში კომპიუტერის მომხმარებელი ვერ ხედავს MATLAB ფაილის გაფართოებას. ეს შეიძლება წარმატებით შეიცვალოს პარამეტრებში. უბრალოდ გადადით "საკონტროლო პანელზე" და აირჩიეთ "ნახვა და პერსონალიზაცია". შემდეგ თქვენ უნდა გადახვიდეთ "Folder Options"-ში და გახსენით "View". "View" ჩანართში არის ვარიანტი "ცნობილი ფაილის ტიპების გაფართოებების დამალვა" - თქვენ უნდა აირჩიოთ ეს ვარიანტი და დაადასტუროთ ოპერაცია ღილაკზე "OK" დაჭერით. ამ ეტაპზე, ყველა ფაილის გაფართოება, მათ შორის MATLAB, უნდა იყოს დალაგებული ფაილის სახელის მიხედვით.

ვიმედოვნებთ, რომ დაგეხმარეთ პრობლემის მოგვარებაში MATLAB ფაილთან დაკავშირებით. თუ არ იცით, სად შეგიძლიათ ჩამოტვირთოთ აპლიკაცია ჩვენი სიიდან, დააწკაპუნეთ ბმულზე (ეს არის პროგრამის სახელი) - თქვენ იხილავთ უფრო დეტალურ ინფორმაციას, თუ სად უნდა ჩამოტვირთოთ საჭირო აპლიკაციის უსაფრთხო ინსტალაციის ვერსია.

ამ გვერდის მონახულება დაგეხმარებათ კონკრეტულად უპასუხოთ ამ ან მსგავს კითხვებს:

  • როგორ გავხსნათ ფაილი MATLAB გაფართოებით?
  • როგორ გადავიტანოთ MATLAB ფაილი სხვა ფორმატში?
  • რა არის MATLAB ფაილის ფორმატის გაფართოება?
  • რა პროგრამები ემსახურება MATLAB ფაილს?

თუ ამ გვერდზე მასალების ნახვის შემდეგ მაინც ვერ მიიღებთ დამაკმაყოფილებელ პასუხს ზემოთ მოცემულ არცერთ კითხვაზე, ეს ნიშნავს, რომ აქ წარმოდგენილი ინფორმაცია MATLAB ფაილის შესახებ არასრულია. დაგვიკავშირდით საკონტაქტო ფორმის გამოყენებით და დაწერეთ რა ინფორმაცია ვერ იპოვეთ.

კიდევ რა შეიძლება გამოიწვიოს პრობლემები?

შეიძლება არსებობდეს მეტი მიზეზი, რის გამოც თქვენ ვერ გახსნით MATLAB ფაილს (და არა მხოლოდ შესაბამისი აპლიკაციის არარსებობა).
ჯერ ერთი- MATLAB ფაილი შეიძლება არასწორად იყოს მიბმული (შეუთავსებელი) დაინსტალირებულ აპლიკაციასთან მის მოსამსახურებლად. ამ შემთხვევაში, თქვენ თავად უნდა შეცვალოთ ეს კავშირი. ამისათვის დააწკაპუნეთ მაუსის მარჯვენა ღილაკით MATLAB ფაილზე, რომლის რედაქტირებაც გსურთ, დააწკაპუნეთ ოფციაზე "გახსნით"და შემდეგ აირჩიეთ სიიდან დაინსტალირებული პროგრამა. ამ მოქმედების შემდეგ, MATLAB ფაილის გახსნასთან დაკავშირებული პრობლემები მთლიანად უნდა გაქრეს.
მეორეც- ფაილი, რომლის გახსნაც გსურთ, შეიძლება უბრალოდ დაზიანდეს. ამ შემთხვევაში, უმჯობესი იქნება მისი ახალი ვერსიის პოვნა, ან ხელახლა გადმოტვირთვა იმავე წყაროდან (შესაძლოა, წინა სესიაზე რაიმე მიზეზის გამო, MATLAB ფაილის ჩამოტვირთვა არ დასრულებულა და მისი სწორად გახსნა ვერ მოხერხდა) .

გნებავთ დახმარება?

თუ თქვენ გაქვთ დამატებითი ინფორმაცია MATLAB ფაილის გაფართოების შესახებ, მადლობელი ვიქნებით, თუ მას გაუზიარებთ ჩვენი საიტის მომხმარებლებს. გამოიყენეთ მოწოდებული ფორმა და გამოგვიგზავნეთ თქვენი ინფორმაცია MATLAB ფაილის შესახებ.