نحوه راه اندازی گوشی های هوشمند و رایانه های شخصی پرتال اطلاعاتی

فایل متلب را باز کنید. تبادل داده بین MatLab و Excel

). در میان ابزارهای همه منظوره مورد استفاده در شیمی سنجی، پکیج MatLab جایگاه ویژه ای را به خود اختصاص داده است. محبوبیت آن بسیار بالاست. این به این دلیل است که MatLab یک پردازش داده چند بعدی قدرتمند و همه کاره است. ساختار بسته آن را به ابزاری مناسب برای انجام محاسبات ماتریسی تبدیل می کند. طیف وسیعی از مشکلات، که مطالعه آنها می تواند با استفاده از MatLab انجام شود، شامل: تجزیه و تحلیل ماتریس، پردازش سیگنال و تصویر، شبکه های عصبیو خیلی های دیگر. MatLab یک زبان سطح بالا است متن باز، که به کاربران باتجربه امکان می دهد الگوریتم های برنامه ریزی شده را درک کنند. یک زبان برنامه نویسی داخلی ساده ایجاد الگوریتم های خود را آسان می کند. برای چندین سال استفاده از MatLab، مقدار زیادیتوابع و جعبه ابزار (بسته های ابزار تخصصی). محبوب ترین جعبه ابزار PLS از Eigenvector Research, Inc.

1. اطلاعات اولیه

1.1. محیط کاری MatLab

برای شروع برنامه روی آیکون آن دوبار کلیک کنید. محیط کاری که در شکل نشان داده شده است در مقابل شما باز می شود.

فضای کاری MatLab 6.xکمی متفاوت از محیط کاری نسخه های قبلی است، رابط کاربری راحت تری برای دسترسی به بسیاری از عناصر کمکی دارد

فضای کاری MatLab 6.xشامل موارد زیر:

    یک نوار ابزار با دکمه ها و یک لیست کشویی.

    Launch Pad پنجره تب دار و فضای کاریکه از آن می توانید دسترسی داشته باشید ماژول های مختلفجعبه ابزار و به محتویات محیط کار.

    پنجره زبانه دار تاریخچه فرمانو پوشه کنونی، برای مشاهده و فراخوانی دستورات وارد شده قبلی و همچنین برای تنظیم دایرکتوری فعلی در نظر گرفته شده است.

    پنجره فرمان، که حاوی دستور "و یک مکان نما عمودی چشمک زن است.

    نوار وضعیت

اگر در محیط کاری باشد MatLab 6.xبرخی از پنجره های نشان داده شده در شکل وجود ندارد، سپس موارد مناسب را در منوی View انتخاب کنید: پنجره فرمان, Command History, Current Directory, Workspase, Launch Pad.

دستورات باید در پنجره فرمان تایپ شوند. برای نشان دادن خط فرمان، نیازی به تایپ "شخصیت" ندارید. برای مشاهده منطقه کاراستفاده از نوارهای اسکرول یا صفحه اصلی، کلیدهای پایان برای حرکت به چپ یا راست، و PageUp، PageDown برای حرکت به بالا یا پایین راحت است. اگر به طور ناگهانی، پس از حرکت در منطقه کاری پنجره فرمان، خط فرمان با مکان نما چشمک زن ناپدید شد، کافی است Enter را فشار دهید.

مهم است که به یاد داشته باشید که مجموعه هر دستور یا عبارتی باید با فشار دادن Enter به پایان برسد تا MatLab این دستور را اجرا کند یا عبارت را محاسبه کند.

1.2. ساده ترین محاسبات

1 + 2 را در خط فرمان تایپ کرده و Enter را فشار دهید. در نتیجه، موارد زیر در پنجره دستور MatLab نمایش داده می شود:

برنج. 2 نمایش گرافیکی تجزیه و تحلیل مؤلفه اصلی

MatLab چه کرد؟ ابتدا مجموع 1 + 2 را محاسبه کرد، سپس نتیجه را روی متغیر ویژه ans نوشت و مقدار آن را برابر با 3 در پنجره فرمان چاپ کرد. در زیر پاسخ یک خط فرمان با مکان نما چشمک زن وجود دارد که نشان می دهد MatLab برای محاسبات بیشتر آماده است. می توانید عبارات جدید را در خط فرمان تایپ کنید و مقادیر آنها را پیدا کنید. اگر نیاز به ادامه کار با عبارت قبلی دارید، مثلاً (1 + 2) /4.5 را محاسبه کنید، ساده ترین راه استفاده از نتیجه موجود است که در متغیر ans ذخیره می شود. ans / 4.5 را تایپ کنید (در هنگام وارد کردن کسری اعشاری از نقطه استفاده می شود) و فشار دهید وارد، معلوم می شود

برنج. 3 نمایش گرافیکی تجزیه و تحلیل مؤلفه اصلی

1.3. دستورات اکو

هر دستوری که در MatLab اجرا می‌شود، تکرار می‌شود. در مثال بالا، این پاسخ ans = 0.6667 است. اغلب اکو درک کار برنامه را دشوار می کند و سپس می توان آن را خاموش کرد. برای انجام این کار، دستور باید با نقطه ویرگول به پایان برسد. برای مثال

برنج. 4 مثالی از وارد کردن تابع ScoresPCA

1.4. حفظ محیط کار. فایل های MAT

ساده ترین راه برای ذخیره همه مقادیر متغیر، استفاده از آیتم Save Workspase As در منوی File است. کادر محاوره ای Save Workspase Variables ظاهر می شود که در آن باید فهرست و نام فایل را مشخص کنید. به طور پیش فرض، پیشنهاد می شود فایل را در زیر شاخه کاری دایرکتوری اصلی MatLab ذخیره کنید. این برنامه نتایج کار را در یک فایل با پسوند mat ذخیره می کند. اکنون می توانید MatLab را ببندید. در جلسه بعد، برای بازیابی مقادیر متغیرها، این فایل ذخیره شده را با استفاده از زیرمجموعه Open از منوی File باز کنید. اکنون تمام متغیرهای تعریف شده در جلسه قبل دوباره در دسترس هستند. آنها را می توان در دستورات تازه وارد شده استفاده کرد.

1.5. مجله

MatLab توانایی نوشتن را دارد دستورات اجراییو نتایج را به یک فایل متنی (نگهداری از کار) که می توان آن را از یک ویرایشگر متن خواند یا چاپ کرد. برای شروع ورود به سیستم، از دستور استفاده کنید دفتر خاطرات... به عنوان یک استدلال دستوری دفتر خاطراتشما باید نام فایلی که گزارش کار در آن ذخیره می شود را مشخص کنید. دستورات بیشتر تایپ شده و نتایج اجرای آنها در این فایل نوشته می شود، به عنوان مثال، دنباله ای از دستورات

اقدامات زیر را انجام می دهد:

    لاگ را در فایل exampl-1.txt باز می کند.

    محاسبات را انجام می دهد؛

    همه متغیرها را در فایل MAT work-1.mat ذخیره می کند.

    گزارش را در فایل examp-1.txt در زیر شاخه کاری دایرکتوری ریشه MatLab ذخیره می کند و MatLab را می بندد.

به محتویات فایل examp-1.txt در برخی نگاه کنید ویرایشگر متن... فایل حاوی متن زیر خواهد بود:

a1 = 3;
a2 = 2.5;
a3 = a1 + a2

صرفه جویی در کار-1
ترک کردن

1.6. سیستم راهنما

پنجره راهنمای MatLab پس از انتخاب گزینه Help Window در منوی Help یا با کلیک بر روی دکمه سوال در نوار ابزار ظاهر می شود. همین عملیات را می توان با تایپ دستور انجام داد helpwin... برای نمایش یک پنجره راهنما برای بخش های جداگانه، تایپ کنید موضوع helpwin... پنجره راهنما اطلاعاتی مشابه دستور help در اختیار شما قرار می دهد، اما رابط پنجره ای اطلاعات بیشتری را ارائه می دهد ارتباط راحتبا سایر موضوعات کمکی با استفاده از آدرس وب سایت Math Works، می توانید وارد سرور شرکت شوید و آخرین اطلاعات مربوط به سوالات خود را دریافت کنید. می توانید با محصولات نرم افزاری جدید آشنا شوید یا در صفحه پشتیبانی فنی پاسخی برای مشکلات خود بیابید.

2. ماتریس ها

2.1. اسکالرها، بردارها و ماتریس ها

در MatLab می توان از اسکالرها، بردارها و ماتریس ها استفاده کرد. برای وارد کردن یک اسکالر کافی است که مقدار آن را مثلاً به یک متغیر اختصاص دهید

توجه داشته باشید که MatLab بین حروف بزرگ و حروف بزرگبنابراین p و P متغیرهای متفاوتی هستند. برای وارد کردن آرایه‌ها (بردارها یا ماتریس‌ها)، عناصر آن‌ها در پرانتز قرار می‌گیرند. بنابراین برای وارد کردن یک بردار خط 1×3 از دستور زیر استفاده کنید که در آن عناصر خط با فاصله یا کاما از هم جدا می شوند.

هنگام وارد کردن بردار ستونی، موارد را با نقطه ویرگول از هم جدا کنید. برای مثال،

وارد کردن ماتریس های کوچک به طور مستقیم از خط فرمان راحت است. همانطور که شما تایپ می کنید، یک ماتریس را می توان به عنوان یک بردار ستونی در نظر گرفت که هر عنصر آن یک بردار ردیف است.

یا یک ماتریس را می توان به عنوان یک بردار ردیفی در نظر گرفت که هر عنصر آن یک بردار ستونی است.

2.2. دسترسی به عناصر

عناصر ماتریس با استفاده از دو شاخص - اعداد سطر و ستون، محصور در آن قابل دسترسی هستند براکت های گردبه عنوان مثال، دستور B (2،3) عنصر ردیف دوم و ستون سوم ماتریس B را برمی گرداند. برای انتخاب یک ستون یا سطر از یک ماتریس، از شماره ستون یا سطر ماتریس به عنوان یکی از شاخص ها استفاده کنید و شاخص دیگر را با دو نقطه جایگزین کنید. برای مثال، ردیف دوم ماتریس A را در بردار z می نویسیم

همچنین می‌توانید بلوک‌های ماتریس را با استفاده از دو نقطه برجسته کنید. به عنوان مثال، از ماتریس P بلوکی که با رنگ مشخص شده است را انتخاب کنید

اگر نیاز به مشاهده متغیرهای محیط کاری دارید، در خط فرمان باید دستور را تایپ کنید چه کسی .

می بینید که فضای کاری شامل یک اسکالر (p)، چهار ماتریس (A، B، P، P1) و یک بردار ردیف (z) است.

2.3. عملیات اصلی ماتریس

هنگام استفاده از عملیات ماتریس، به یاد داشته باشید که برای جمع یا تفریق، ماتریس ها باید هم اندازه باشند و در هنگام ضرب، تعداد ستون های ماتریس اول باید برابر با تعداد ردیف های ماتریس دوم باشد. جمع و تفریق ماتریس ها و همچنین اعداد و بردارها با استفاده از علائم مثبت و منفی انجام می شود.

و ضرب با یک ستاره * نشان داده می شود. یک ماتریس 3×2 معرفی کنید

ضرب یک ماتریس در یک عدد نیز با استفاده از یک ستاره انجام می شود و می توانید در یک عدد در سمت راست و چپ ضرب کنید. نعوظ ماتریس مربعبه یک توان عدد صحیح با استفاده از عملگر ^ تولید می شود

نتیجه خود را با ضرب ماتریس P در خودش بررسی کنید.

2.4. ایجاد ماتریس های خاص

پر کردن یک ماتریس مستطیلی با صفر توسط تابع داخلی انجام می شود صفرها

ماتریس هویت با استفاده از تابع ایجاد می شود چشم

در نتیجه فراخوانی تابع، ماتریسی متشکل از یک ها تشکیل می شود آنهایی که

MatLab توانایی پر کردن ماتریس ها با اعداد تصادفی را فراهم می کند. نتیجه عملکرد رندماتریسی از اعداد است که به طور مساوی بین صفر و یک و توابع توزیع شده اند راندن- ماتریس اعداد توزیع شده بر اساس قانون نرمال با میانگین صفر و واریانس واحد.

عملکرد دیگبا چیدمان مورب عناصر، یک ماتریس مورب از یک بردار تشکیل می دهد.

2.5. محاسبات ماتریسی

MatLab شامل بسیاری از توابع مختلف برای کار با ماتریس است. بنابراین، به عنوان مثال، یک ماتریس با استفاده از آپوستروف منتقل می شود "

یافته ماتریس معکوسبا استفاده از تابع انجام می شود invبرای ماتریس های مربع

3. یکپارچه سازی MatLab و Excel

ادغام MatLab و Excel به کاربر اکسل اجازه می دهد تا به چندین توابع MatLab برای پردازش داده ها، محاسبات مختلف و تجسم نتیجه دسترسی پیدا کند. افزونه excllink.xla این پیشرفت اکسل را پیاده سازی می کند. برای ارتباط بین MatLab و Excel، توابع خاصی تعریف شده است.

3.1. پیکربندی اکسل

قبل از تنظیم اکسل روی کار مشترکبا MatLab، باید مطمئن شوید که Excel Link در نسخه نصب شده MatLab موجود است. فایل الحاقی excllink.xla باید در زیر شاخه exclink دایرکتوری اصلی MatLab یا زیر شاخه جعبه ابزار قرار داشته باشد. اکسل را راه اندازی کنید و از منوی Tools گزینه Add-ins را انتخاب کنید. یک کادر محاوره ای باز می شود که حاوی اطلاعاتی در مورد موجود است این لحظهروبناها از دکمه Browse برای تعیین مسیر فایل excllink.xla استفاده کنید. در لیست افزونه ها کادر محاوره اییک خط ظاهر می شود Excel Link 2.0 برای استفاده با MatLabبا مجموعه پرچم روی OK کلیک کنید، افزونه مورد نیاز به اکسل اضافه شده است.

توجه داشته باشید که اکسل اکنون یک پنل دارد ابزارهای اکسلپیوند حاوی سه دکمه: putmatrix، getmatrix، evalstring. این دکمه ها اقدامات اصلی مورد نیاز برای اجرای رابطه بین Excel و MatLab - تبادل داده های ماتریس، و اجرای دستورات MatLab از محیط اکسل را اجرا می کنند. در پرتاب های مکرر افزونه اکسل excllink.xla به طور خودکار متصل می شود.

کار هماهنگ Excel و MatLab به چند تنظیمات دیگر نیاز دارد که به طور پیش فرض در اکسل پذیرفته شده است (اما قابل تغییر است). در منوی ابزار، به گزینه ها بروید، کادر محاوره ای گزینه ها باز می شود. تب General را انتخاب کنید و مطمئن شوید که پرچم سبک مرجع R1C1 خاموش است، یعنی. سلول ها A1، A2 و غیره شماره گذاری می شوند. در تب Edit، انتخاب Move after Enter باید تنظیم شود.

3.2. تبادل داده بین MatLab و Excel

اکسل را راه اندازی کنید، بررسی کنید همه چیز انجام شده است تنظیمات مورد نیازهمانطور که در بخش قبل توضیح داده شد (MatLab باید بسته شود). یک ماتریس در سلول های A1 تا C3 وارد کنید، از یک نقطه برای جدا کردن اعداد اعشار مطابق با الزامات اکسل استفاده کنید.

داده های سلولی را در برگه انتخاب کنید و دکمه putmatrix را فشار دهید، یک پنجره اکسل با اخطار اجرا نشدن MatLab ظاهر می شود. روی OK کلیک کنید، منتظر بمانید تا MatLab باز شود.

یک کادر محاوره ای Excel با یک خط ورودی برای تعریف نام متغیر کاری ظاهر می شود محیط های MatLab، که می خواهید داده ها را از سلول های اکسل انتخاب شده به آن صادر کنید. برای مثال M را وارد کرده و با دکمه OK پنجره را ببندید. به پنجره دستور MatLab بروید و مطمئن شوید که یک متغیر M در محیط تولید ایجاد شده است که حاوی یک آرایه سه در سه است:

برخی از عملیات را در MatLab با ماتریس M انجام دهید، به عنوان مثال، آن را معکوس کنید.

زنگ زدن invبرای معکوس کردن ماتریس، مانند هر دستور دیگر MatLab، می توانید مستقیماً از اکسل انجام دهید. با فشار دادن دکمه evalstring، واقع در پنل Excel Link، یک کادر محاوره ای ظاهر می شود که در خط ورودی آن باید دستور MatLab را تایپ کنید.

IM = inv (M).

نتیجه مشابه نتیجه ای است که هنگام اجرای دستور در محیط MatLab به دست می آید.

به اکسل برگردید، سلول A5 را فعلی کنید و روی دکمه getmatrix کلیک کنید. یک کادر محاوره ای با یک خط ورودی ظاهر می شود که از شما می خواهد نام متغیری را که قرار است به اکسل وارد شود وارد کنید. V در این موردچنین متغیری IM است. روی OK کلیک کنید، سلول های A5 تا A7 با عناصر ماتریس معکوس پر می شوند.

بنابراین، برای صادرات یک ماتریس به MatLab، باید سلول های مناسب را انتخاب کنید کاربرگ اکسلو برای import کافی است یک سلول را مشخص کنید که عنصر سمت چپ بالای آرایه وارداتی خواهد بود. بقیه عناصر با توجه به اندازه آرایه در سلول‌های صفحه نوشته می‌شوند و داده‌های موجود در آنها را بازنویسی می‌کنند، بنابراین هنگام وارد کردن آرایه‌ها باید مراقب باشید.

رویکرد فوق بیشتر است به روشی سادهتبادل اطلاعات بین برنامه ها - داده های اولیه در اکسل قرار می گیرند، سپس به MatLab صادر می شوند، به نحوی در آنجا پردازش می شوند و نتیجه به اکسل وارد می شود. کاربر داده ها را با استفاده از دکمه های نوار ابزار Excel Link منتقل می کند. اطلاعات را می توان در قالب یک ماتریس ارائه کرد، به عنوان مثال. ناحیه مستطیلی صفحه کار سلول های مرتب شده در یک ردیف یا ستون به ترتیب به بردارهای ردیف و بردار ستون MatLab صادر می شوند. وارد کردن بردارهای ردیف و بردار ستون در اکسل به روشی مشابه انجام می شود.

4. برنامه نویسی

4.1. M-فایل ها

اگر بخواهید دستورات زیادی را وارد کرده و اغلب آنها را تغییر دهید، کار از خط فرمان MatLab دشوار است. یادداشت روزانه با دستور دفتر خاطراتو حفظ محیط کار کار را کمی آسان می کند. راحت‌ترین راه برای اجرای گروه‌های دستورات MatLab استفاده از فایل‌های M است که در آن می‌توانید دستورات را تایپ کنید، همه آنها را به یکباره یا به صورت قسمتی اجرا کنید، آنها را در یک فایل ذخیره کنید و بعداً از آنها استفاده کنید. ویرایشگر M-file برای کار با M-file در نظر گرفته شده است. با کمک آن، می توانید توابع خود را ایجاد کرده و آنها را فراخوانی کنید، از جمله از پنجره فرمان.

منوی File پنجره اصلی MatLab را باز کنید و در آیتم New زیرمجموعه M-file را انتخاب کنید. فایل جدید در پنجره ویرایشگر M-file باز می شود که در شکل نشان داده شده است.

دو نوع فایل M در MatLab وجود دارد: فایل برنامه ( اسکریپت M-Files) حاوی دنباله ای از دستورات و توابع فایل ( تابع M-Files) که توابع تعریف شده توسط کاربر را توصیف می کند.

4.2. برنامه فایل

دستوراتی را در ویرایشگر تایپ کنید که منجر به ساخت دو نمودار در یک پنجره گرافیکی می شود

حال فایلی به نام mydemo.m را در زیر شاخه کاری دایرکتوری اصلی MatLab با انتخاب آیتم Save as در منوی File ویرایشگر ذخیره کنید. برای اجرای تمام دستورات موجود در فایل برای اجرا، آیتم Run را در منوی Debug انتخاب کنید. یک پنجره گرافیکی روی صفحه ظاهر می شود. شکل 1حاوی نمودارهای توابع

خروجی دستورات فایل-برنامه به پنجره فرمان. برای سرکوب خروجی، دستورات را با نقطه ویرگول پایان دهید. اگر هنگام تایپ خطایی رخ داد و MatLab نتواند دستور را تشخیص دهد، دستورات تا زمانی که اشتباه وارد شده اجرا می‌شوند و پس از آن پیام خطا در پنجره فرمان نمایش داده می‌شود.

خیلی فرصت مناسبتهیه شده توسط ویرایشگر فایل M، اجرای بخشی از دستورات است. پنجره گرافیک را ببندید شکل 1... با ماوس در حالی که دکمه سمت چپ را نگه داشته اید یا با کلیدهای جهت دار در حالی که پایین نگه داشته اید انتخاب کنید تغییر مکان، چهار دستور اول را و از آیتم Text اجرا کنید. لطفاً توجه داشته باشید که تنها یک نمودار در پنجره گرافیکی نمایش داده می شود که مربوط به دستورات اجرا شده: است. به یاد داشته باشید که برای اجرای برخی از دستورات، آنها را انتخاب کرده و کلید F9 را فشار دهید.

بلوک های جداگانه فایل M را می توان با نظراتی ارائه کرد که در حین اجرا نادیده گرفته می شوند، اما هنگام کار با فایل M راحت هستند. نظرات با علامت درصد شروع می شوند و به طور خودکار با رنگ سبز برجسته می شوند، به عنوان مثال:

یک فایل M موجود با استفاده از آیتم Open از منوی File محیط کاری یا ویرایشگر M-file باز می شود.

4.3. تابع فایل

فایل-برنامه فوق فقط دنباله ای از دستورات MatLab است و هیچ آرگومان ورودی و خروجی ندارد. برای استفاده از روش‌های عددی و هنگام برنامه‌نویسی برنامه‌های کاربردی خود در MatLab، باید بتوانید توابع فایلی را بنویسید که تولید می‌کنند. اقدامات لازمبا آرگومان های ورودی و برگرداندن نتیجه عمل در آرگومان های خروجی. بیایید به چند مثال ساده نگاه کنیم تا به شما در درک نحوه کار با توابع فایل کمک کند.

تمرکز اغلب در پیش پردازش داده های تجزیه و تحلیل کمومتری چند متغیره استفاده می شود. منطقی است که یک تابع فایل را یک بار بنویسید، و سپس آن را در هر کجا که لازم است در مرکز فراخوانی کنید. یک فایل جدید در ویرایشگر M-file باز کنید و تایپ کنید

کلمه تابع در خط اول مشخص می کند که این فایل حاوی یک فایل تابع است. خط اول هدر تابع است که حاوی نام تابع و لیست آرگومان های ورودی و خروجی است. در مثال، نام تابع مرکز، یک آرگومان ورودی X و یک خروجی Xc است. بعد از عنوان، نظرات و سپس بدنه تابع (در این مثال از دو خط تشکیل شده است) که مقدار آن محاسبه می شود. مهم است که مقدار محاسبه شده به Xc نوشته شود. برای جلوگیری از نمایش اطلاعات غیر ضروری روی صفحه، حتماً یک نقطه ویرگول قرار دهید. اکنون فایل را در پوشه کاری خود ذخیره کنید. توجه داشته باشید که با انتخاب گزینه Save یا Save به عنوان از منوی File یک کادر محاوره ای ذخیره فایل ظاهر می شود که قسمت File name از قبل شامل مرکز نام است. آن را تغییر ندهید، فایل تابع را در یک فایل با نام پیشنهادی ذخیره کنید!

اکنون تابع ایجاد شده را می توان به همان روشی که داخلی sin، cos و غیره استفاده کرد. توابع خود را می توان از یک فایل برنامه و از یک تابع فایل دیگر فراخوانی کرد. سعی کنید خودتان یک تابع فایل بنویسید که ماتریس ها را مقیاس بندی کند. هر ستون را بر انحراف استاندارد آن ستون تقسیم کنید.

می توانید یک فایل تابع با چندین آرگومان ورودی بنویسید که در لیستی جدا شده با کاما قرار می گیرند. همچنین می توانید توابعی ایجاد کنید که چندین مقدار را برمی گرداند. برای انجام این کار، آرگومان‌های خروجی به فهرست آرگومان‌های خروجی با کاما از هم جدا می‌شوند و خود فهرست در براکت‌های مربع قرار می‌گیرد. یک مثال خوب تابعی است که زمان را بر حسب ثانیه به ساعت، دقیقه و ثانیه تبدیل می کند.

هنگام فراخوانی توابع فایل با چندین آرگومان خروجی، نتیجه باید در بردار با طول متناظر نوشته شود.

4.4 ایجاد یک برنامه زمان بندی

MatLab فرصت های زیادی برای تصویر گرافیکیبردارها و ماتریس ها و همچنین برای ایجاد نظرات و چاپ نمودارها. بیایید چندین عملکرد گرافیکی مهم را شرح دهیم.

عملکرد طرحدارای اشکال مختلف مرتبط با پارامترهای ورودی است، برای مثال نمودار (y) یک نمودار خطی تکه تکه از وابستگی عناصر y به شاخص های آنها ایجاد می کند. اگر دو بردار به عنوان آرگومان داده شود، نمودار (x, y) y را در مقابل x رسم می کند. به عنوان مثال، برای رسم تابع sin از 0 تا 2π، به صورت زیر عمل کنید

این برنامه یک نمودار وابستگی ساخته است که در پنجره نمایش داده می شود شکل 1

MatLab به طور خودکار رنگ خود را به هر نمودار اختصاص می دهد (به جز زمانی که کاربر این کار را انجام می دهد)، که به شما امکان می دهد بین مجموعه های داده تمایز قائل شوید.

تیم صبر کنبه شما امکان می دهد منحنی ها را به یک نمودار موجود اضافه کنید. عملکرد طرح فرعیبه شما امکان می دهد چندین نمودار را در یک پنجره نمایش دهید

4.5 چاپ نمودارها

آیتم Print در منوی File و دستور چاپچاپ گرافیک MatLab منوی چاپ یک کادر محاوره ای ظاهر می شود که به شما امکان می دهد گزینه های معمول چاپ استاندارد را انتخاب کنید. تیم چاپانعطاف پذیری بیشتری در خروجی خروجی فراهم می کند و به شما امکان می دهد چاپ را از فایل های M کنترل کنید. نتیجه را می توان مستقیماً به چاپگر پیش فرض ارسال کرد یا در یک فایل مشخص ذخیره کرد.

5. نمونه برنامه ها

این بخش متداول ترین الگوریتم های مورد استفاده در تجزیه و تحلیل داده های چند بعدی را فهرست می کند. در نظر گرفته شده هر دو ساده ترین روش تبدیل داده، مرکز و مقیاس بندی، و الگوریتم برای تجزیه و تحلیل داده ها - PCA، PLS.

5.1. مرکز و مقیاس بندی

تجزیه و تحلیل اغلب نیاز به تبدیل داده های اصلی دارد. پرکاربردترین روش‌های تبدیل داده‌ها، مرکزیت و مقیاس‌بندی هر متغیر بر اساس انحراف استاندارد است. در کد تابع برای مرکزیت ماتریس آورده شده است. بنابراین فقط کد تابع در زیر نشان داده شده است که ترازوداده ها. لطفاً توجه داشته باشید که ماتریس اصلی باید در مرکز قرار گیرد

تابع Xs = مقیاس بندی (X)
مقیاس بندی درصد: ماتریس خروجی Xs است
% ماتریس X باید در مرکز قرار گیرد

Xs = X * inv (diag (std (X)));

% پایان مقیاس بندی

5.2. SVD / PCA

اکثر راه محبوبفشرده سازی داده ها در تحلیل چند متغیره، تحلیل مؤلفه اصلی (PCA) است. از نظر ریاضی، PCA تجزیه ماتریس اصلی است ایکس، یعنی نمایش آن به عنوان حاصل ضرب دو ماتریس تیو پ

ایکس = TP t + E

ماتریس تیماتریس امتیازات نامیده می شود، ماتریس ماتریس باقیمانده نامیده می شود.

ساده ترین راه برای یافتن ماتریس ها تیو پ- از تجزیه SVD از طریق یک تابع استاندارد MatLab به نام استفاده کنید svd .

تابع = pcasvd (X)

Svd (X);
T = U * D;
P = V;

% انتهای pcasvd

5.3 PCA / NIPALS

برای ایجاد حساب‌ها و بارهای PCA، از الگوریتم تکرارشونده NIPALS استفاده می‌شود که در هر مرحله یک جزء را محاسبه می‌کند. ابتدا ماتریس اولیه ایکستبدیل می شود (حداقل - در مرکز، ببینید) و به یک ماتریس تبدیل می شود E 0 , آ= 0. سپس الگوریتم زیر اعمال می شود.

تی 2. پ t = تیتی Eآ / تیتی تی 3. پ = پ / (پتی پ) ½ 4. تی = Eآ پ / پتی پ 5. همگرایی را بررسی کنید، اگر نه، به 2 بروید

پس از محاسبه بعدی ( آث) اجزاء، ما فرض می کنیم تیآ=تیو پآ=پ E آ+1 = Eآتی پ آبر روی آ+1.

کد الگوریتم NIPALS را خود خوانندگان می توانند بنویسند؛ در این آموزش نویسندگان نسخه خود را ارائه می دهند. هنگام محاسبه PCA، می توانید تعداد اجزای اصلی (تغییر متغیر PC) را وارد کنید. اگر نمی دانید چند جزء مورد نیاز است، باید = pcanipals (X) را در خط فرمان بنویسید و سپس برنامه تعداد مؤلفه ها را برابر با کوچکترین ابعاد ماتریس اصلی قرار می دهد. ایکس.

تابع = pcanipals (X, numberPC)

٪ محاسبه تعداد اجزا
= اندازه (X)؛ P =; T =;

اگر سمت چپ (numberPC)> 0 باشد
pc = تعدادPC (1)؛
elseif (طول (numberPC) == 0) و X_r< X_c
pc = X_r;
دیگر
pc = X_c;
پایان؛

برای k = 1: pc
P1 = رند (X_c، 1)؛ T1 = X * P1; d0 = T1 "* T1;
P1 = (T1 "* X / (T1" * T1)) "؛ P1 = P1 / هنجار (P1)؛ T1 = X * P1؛ d = T1" * T1.

در حالی که d - d0> 0.0001;
P1 = (T1 "* X / (T1" * T1)); P1 = P1 / هنجار (P1)؛ T1 = X * P1; d0 = T1 "* T1;
P1 = (T1 "* X / (T1" * T1)); P1 = P1 / هنجار (P1)؛ T1 = X * P1; d = T1 "* T1;
پایان

X = X - T1 * P1; P = گربه (1، P، P1 ")؛ T =؛
پایان

نحوه محاسبه PCA با استفاده از افزودنی Chemometrics در آموزش توضیح داده شده است

5.4 PLS1

محبوب ترین روش برای کالیبراسیون چند متغیره، روش طرح ریزی پنهان (PLS) است. این روش تجزیه همزمان ماتریس پیش بینی را انجام می دهد ایکسو ماتریس های پاسخ Y:

ایکس=TP t + E Y=Uq t + اف تی=XW(پتی دبلیو) –1

طرح ریزی به طور مداوم ساخته می شود - به طوری که همبستگی بین بردارهای مربوطه را به حداکثر می رساند ایکس-حساب ها تیآو Y-حساب ها توآ... اگر بلوک داده Yشامل پاسخ های متعدد (به عنوان مثال ک> 1)، می توانید دو پیش بینی از داده های اولیه ایجاد کنید - PLS1 و PLS2. در حالت اول، برای هر یک از پاسخ ها y کزیرفضای طرح ریزی خودش ساخته شده است. در عین حال حساب ها تی (U) و بارگذاری کنید پ (دبلیو, س) بستگی به پاسخی دارد که استفاده می شود. این رویکرد PLS1 نامیده می شود. برای روش PLS2، تنها یک فضای طرح ریزی ساخته شده است که برای همه پاسخ ها مشترک است.

شرح مفصلی از روش PLS در این کتاب آورده شده است.برای ساخت حساب ها و بارهای PLS1، از الگوریتم بازگشتی استفاده شده است. ابتدا ماتریس های اولیه ایکسو Yمرکز

= mc (X)؛
= mc (Y)؛

و به یک ماتریس تبدیل می شوند E 0 و بردار f 0 , آ= 0. سپس الگوریتم زیر برای آنها اعمال می شود

1. w t = fآتی E آ 2. w = w / (wتی w) ½ 3. تی = Eآ w 4. q = تیتی fآ / تیتی تی 5. تو = qfآ / q 2 6. پ t = تیتی Eآ / تیتی تی

پس از محاسبه بعدی ( آث) اجزاء، ما فرض می کنیم تیآ=تیو پآ=پ... برای به دست آوردن مولفه بعدی، باید باقیمانده ها را محاسبه کنید E آ+1 = Eآتی پ t و همان الگوریتم را برای آنها اعمال کنید و شاخص را جایگزین کنید آبر روی آ+1.

در اینجا کد این الگوریتم است که از کتاب گرفته شده است

تابع = pls (x، y)
% PLS: یک جزء PLS را محاسبه می کند.
% بردارهای خروجی w، t، u، q و p هستند.
%
% یک بردار از y را به عنوان بردار اولیه u انتخاب کنید.

u = y (:، 1);

% معیار همگرایی بسیار بالا تنظیم شده است.
کری = 100;

% دستورات از اینجا تا انتها تا زمان همگرایی تکرار می شوند.
در حالی که (kri> 1e - 10)

٪ هر بردار شروع u به عنوان uold ذخیره می شود.
uold = u; w = (u "* x)"؛ w = w / هنجار (w)؛
t = x * w; q = (t "* y)" / (t "* t);
u = y * q / (q "* q);

% معیار همگرایی هنجار u-uold تقسیم بر هنجار u است.
kri = هنجار (uold - u) / norm (u);
پایان؛

% پس از همگرایی، p را محاسبه کنید.
p = (t "* x)" / (t "* t);

% پایان pls

درباره محاسبه PLS1 با افزونه شیمی سنجیاضافه کردن دردر کتابچه راهنمای Projection Methods در Excel توضیح داده شده است.

5.5 PLS2

برای PLS2، الگوریتم به شرح زیر است. ابتدا ماتریس های اولیه ایکسو Yتبدیل (حداقل - مرکز؛ ببینید) و آنها به ماتریس تبدیل می شوند E 0 و اف 0 , آ= 0. سپس الگوریتم زیر برای آنها اعمال می شود.

1. بردار شروع را انتخاب کنید تو 2. w t = توتی E آ 3. w = w / (wتی w) ½ 4. تی = Eآ w 5. q t = تیتی افآ / تیتی تی 6. تو = افآ q/ qتی q 7. همگرایی را بررسی کنید، اگر نه، به 2 8 بروید. پ t = تیتی Eآ / تیتی تی

پس از محاسبه بعدی ( آ-ام) اجزای PLS2 باید قرار داده شوند: تیآ=تی, پآ=p, wآ=w, توآ=توو q a = q... برای به دست آوردن مولفه بعدی، باید باقیمانده ها را محاسبه کنید E آ+1 = Eآt pتی و افآ +1 = اف آtq t و همان الگوریتم را برای آنها اعمال کنید و شاخص را جایگزین کنید آبر روی آ+1.

در اینجا رمزی است که آن نیز از کتاب به عاریت گرفته شده است.

تابع = plsr (x، y، a)
% PLS: یک جزء PLS را محاسبه می کند.
% ماتریس های خروجی W، T، U، Q و P هستند.
% B شامل ضرایب رگرسیون و SS مجموع ضرایب است
٪ مربع برای باقیمانده ها.
٪ a تعداد اجزا است.
%
% برای یک مؤلفه: از تمام دستورات برای پایان دادن استفاده کنید.

برای i = 1: a
% مجموع مربع ها را محاسبه کنید. از تابع ss استفاده کنید.
sx =;
sy =;

% برای محاسبه یک جزء از تابع pls استفاده کنید.
= pls (x، y)؛

% باقیمانده ها را محاسبه کنید.
x = x - t * p ";
y = y - t * q ";

% بردارها را در ماتریس ها ذخیره کنید.
W =;
T =;
U =;
Q =;
P =;
پایان؛

% ضرایب رگرسیون بعد از حلقه را محاسبه کنید.
B = W * inv (P "* W) * Q";

% SS باقیمانده نهایی را به مجموع بردارهای مربع اضافه کنید.
sx =;
sy =;

% ماتریسی از بردارهای ss برای X و Y بسازید.
SS =;

% کسر SS مورد استفاده را محاسبه کنید.
= اندازه (SS)؛
tt = (SS * diag (SS (1,:). ^ (- 1)) - ones (a, b)) * (-1)

% پایان plsr

تابع = ss (x)
% SS: مجموع مربع های یک ماتریس X را محاسبه می کند.
%

ss = جمع (جمع (x. * x));
% پایان ss

درباره محاسبه PLS2 با افزونه شیمی سنجیاضافه کردن دردر کتابچه راهنمای Projection Methods در Excel توضیح داده شده است.

نتیجه

MatLab یک ابزار تجزیه و تحلیل داده بسیار محبوب است. طبق این نظرسنجی، تا یک سوم از تمام محققان از آن استفاده می کنند، در حالی که برنامه Unsrambler تنها توسط 16٪ از دانشمندان استفاده می شود. عیب اصلی MatLab قیمت بالای آن است. علاوه بر این، MatLab برای محاسبات معمولی خوب است. فقدان تعامل باعث می شود هنگام انجام جستجو، محاسبات تحقیق برای مجموعه داده های جدید و ناشناخته ناخوشایند باشد.

امیدواریم در حل مشکل فایل متلب به شما کمک کرده باشیم. اگر نمی دانید کجا می توانید یک برنامه را از لیست ما بارگیری کنید، روی پیوند کلیک کنید (این نام برنامه است) - اطلاعات دقیق تری در مورد مکان دانلود نسخه نصب ایمن برنامه مورد نیاز پیدا خواهید کرد. .

بازدید از این صفحه به شما کمک می کند به طور خاص به این سوالات یا سوالات مشابه پاسخ دهید:

  • چگونه یک فایل با پسوند متلب باز کنیم؟
  • چگونه می توانم یک فایل متلب را به فرمت دیگری تبدیل کنم؟
  • پسوند فرمت فایل متلب چیست؟
  • چه برنامه هایی از فایل متلب پشتیبانی می کنند؟

اگر پس از مشاهده مطالب موجود در این سایت، هنوز پاسخ قانع کننده ای برای هیچ یک از سوالات بالا دریافت نکرده اید، به این معنی است که اطلاعات مربوط به فایل متلب ارائه شده در اینجا کامل نیست. با استفاده از فرم تماس با ما تماس بگیرید و اطلاعاتی را که پیدا نکردید بنویسید.

چه چیز دیگری می تواند باعث ایجاد مشکل شود؟

ممکن است دلایل بیشتری وجود داشته باشد که چرا نمی توانید یک فایل MATLAB را باز کنید (نه تنها عدم وجود برنامه مربوطه).
اولا- فایل MATLAB ممکن است به اشتباه (ناسازگار) با برنامه نصب شده برای نگهداری آن پیوند داده شده باشد. در این صورت باید خودتان این لینک را تغییر دهید. برای این منظور روی فایل متلبی که می خواهید ویرایش کنید کلیک راست کرده و روی گزینه کلیک کنید "برای باز کردن با"و سپس برنامه ای را که نصب کرده اید از لیست انتخاب کنید. پس از انجام این کار، مشکلات باز کردن فایل متلب باید کاملا از بین برود.
دوما- فایلی که می خواهید باز کنید ممکن است به سادگی آسیب دیده باشد. سپس بهترین راه حل این است که یک نسخه جدید پیدا کنید یا دوباره آن را از همان منبع قبلی دانلود کنید (شاید به دلایلی در جلسه قبل دانلود فایل متلب کامل نشده باشد و به درستی باز نشود).

ایا میخواهید کمک کنید؟

اگر اطلاعات بیشتری در مورد پسوند فایل متلب دارید، اگر آن را با کاربران سایت ما به اشتراک بگذارید سپاسگزار خواهیم بود. از فرم ارائه شده استفاده کنید و اطلاعات فایل متلب خود را برای ما ارسال کنید.

درس شماره 19.

کار با فایل ها

    باز کردن و بستن فایل ها

    عملیات فایل باینری

    عملیات فایل های فرمت شده

    موقعیت یابی فایل

    فایل های تخصصی

فایل ها اشیای نسبتاً رایج در سیستم متلب هستند. برخی از انواع فایل ها قبلاً در فصل های قبلی مورد بحث قرار گرفته اند. این درس ویژگی های فایل را پوشش می دهد که مستقل از نوع آنها هستند و برای هر فایلی اعمال می شوند.

باز کردن و بستن فایل ها

فایلمعمولاً مجموعه ای از داده ها که با یک نام متحد می شوند. نوع فایل معمولا با پسوند آن تعیین می شود. ما فایل را به عنوان یک کل در نظر می گیریم، اگرچه از نظر فیزیکی روی دیسک می توان آن را با چندین ناحیه نشان داد - آنها می گویند که در این مورد فایل تکه تکه شده است.

قبل از استفاده از هر فایلی باید باشد باز کن،و در پایان استفاده - بستهبسیاری از فایل ها را می توان همزمان باز و خواندنی کرد. بیایید دستورات باز و بسته کردن فایل ها را در نظر بگیریم.

    دستور open name، جایی که نام باید دارای آرایه ای از کاراکترها یا یک متغیر نمادین باشد، بسته به تجزیه و تحلیل پارامتر نام و پسوند در نام، فایل ها را باز می کند:

    • متغیر - آرایه ای را با نام در ویرایشگر آرایه باز می کند.

      Mat - یک فایل را باز می کند، متغیرها را در یک ساختار در فضای کاری ذخیره می کند.

      Fig - آن را در Property Editor باز می کند.

      M - یک فایل m را در ویرایشگر دیباگر باز می کند.

      Mdl - مدل را در Simulink باز می کند.

      R - در صورت وجود، یک فایل m با همین نام را باز می کند.

      Html - یک سند HTML را در مرورگر راهنما باز می کند.

اگر فایل هایی با پسوند در مسیر MATLAB وجود داشته باشند، فایلی که با دستور name برگردانده می شود باز می شود و اگر نه، فایل از سیستم فایل باز می شود. اگر فایل پسوند نامی نداشته باشد، توسط برنامه‌ای که فرمت فایل آن توسط تابع igpsiGname شناسایی می‌شود، باز می‌شود.") به طور پیش‌فرض، برای همه فایل‌هایی که انتهایی غیر از موارد ذکر شده در بالا دارند، openother فراخوانی می‌شود. تماس‌ها را باز کنید. توابع orepxxx که xxx پسوند فایل است. استثناها متغیرهای فضای کاری هستند که openvar برای آنها فراخوانی می شود و گرافیک ها که openim برای آنها فراخوانی می شود. با ایجاد فایل های t به نام orepxxx، کاربران می توانند مدیریت فایل را تغییر داده و اضافه کنند. پسوندهای جدید به لیست بسته شدن فایل ها زمانی که باز شد کمک به باز کردن، از ویرایشگرهایی که توسط onxxx فراخوانی شده است نیاز دارید.

    Uigetfile (FILTERSPEC. عنوان). گفتگویی به نام 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.

    دستور open UI یک دیالوگ را باز می کند، و اگر کاربر یک فایل را انتخاب کرد پسوند معروف، آن را با استفاده از open یا در صورت وجود نام فایل فراخوانی می کند پسوند ناشناختهسپس uigetfile فراخوانی می شود. آرگومان های ورودی uiopen می توانند mat lab، load، figure، simulink، editor باشند. بدون آرگومان های ورودی یا با matlab آرگومان ورودی، کادر محاوره ای از شما می خواهد که * .m، * .fig، * .mat، را انتخاب کنید.* .mdl (در صورت نصب سیمولینک)، *. cdr (اگر جریان حالت تنظیم شده باشد)، * rtw. * .tmf، * .tlc، * .c، * .h، * .ads، * .adb (اگر کارگاه Real-Time نصب شده باشد). با آرگومان بار - * mat. با آرگومان شکل، * .fig ارائه می شود. simul ink - * .mdl، ویرایشگر - * .m، * .mdt * .cdr، * .rtw، * .tmf، * .tlc، * .c، * .h، * .ads، * .adb.

مثال:

شکل uiopen

    دستور uiload یک فایل را در یک گفتگوی کنترل شده توسط کاربر با استفاده از دستور load باز می کند.

تابع import UI، Import Wizard را راه اندازی می کند، که از یک فایل در پوشه فعلی یا کلیپ بورد ویندوز وارد می شود. این مربوط به انتخاب Import Data از منوی File یا انتخاب Paste Special از منوی ویرایش MATLAB است.

    وارد کردن رابط کاربری (FILENAME) - با باز کردن FILENAME، جادوگر واردات را راه‌اندازی می‌کند. جادوگر واردات داده ها را برای پیش نمایش نشان می دهد. داده ها و نمایش آن به عنوان متغیرهای MATLAB در پنجره پیش نمایش ظاهر می شوند. داده ها، متن و هدرهای واقعی توسط متغیرهای متلب مختلف نمایش داده می شوند. برای داده های ASCII، باید مطمئن شوید که Import Wizard جداکننده های ستون را تشخیص می دهد. به خودی خود، فقط می تواند یک تب، فاصله، کاما یا نقطه ویرگول را تشخیص دهد. باید روی دکمه Next کلیک کنید و در پنجره بعدی یا انتخاب جداکننده ساخته شده توسط Wizard را تایید کنید یا Other را انتخاب کنید و هر جداکننده را وارد کنید.

    UI import ("-f i le") - ابتدا گفتگوی انتخاب فایل را نمایش می دهد.

    UI import ("-pastespecial") - ابتدا محتویات کلیپ بورد ویندوز را برای پیش نمایش نمایش می دهد.

    S = ui import (...) متغیرهای حاصل را به عنوان فیلدهای ساختار S ذخیره می کند.

    دستور uisave یک ذخیره کنترل شده توسط کاربر است (فرمان ذخیره در درس 2 توضیح داده شده است) با یک گفتگوی ویندوز.

    عملکرد Saveas - یک طراحی یا مدل Simulink را با فرمت دلخواه در یک رسانه ذخیره سازی یا در دستگاهی با قابلیت چاپ ذخیره می کند.

    تابع saveas (H، "FILENAME") - داده ها را مطابق با دستور گرافیکی توصیفگر H در فایل FILENAME ذخیره می کند. فرمت فایل با پسوند نام FILENAME تعیین می شود.

    تابع saveas (H. "FILENAME". "FORMAT") - همین کار را می کند، اما با پارامتر FORMAT (فرمت به همان روش پسوند نام فایل مشخص شده است و ممکن است با آن متفاوت باشد). FORMAT بر پسوند نام فایل اولویت دارد. پارامترهای تابع:

مثال ها:

saveas (gcf. "output"، "fig") saveasCgcf، "output"، "bmp")

دستور یا تابع delete یک فایل یا شیء گرافیکی را حذف می کند.

    Delete filename فایل موجود در پوشه فعلی را حذف می کند. می تواند به کار رود *. استفاده ترجیحی با ورودی به شکل تابع حذف ("فایل mw") زمانی که نام فایل یک رشته باشد.

    حذف (H) حذف می کند شیء گرافیکیبا توصیفگر N. اگر این شی یک پنجره است، از قبل بسته می شود.

    تابع بستن (H) فقط پنجره های گرافیکی را می بندد. برای بستن فایل ها از دستور f close استفاده کنید.

برای نوشتن فایل ها روی دیسک، از دستور save استفاده کنید که به شکل های نسبتا واضح استفاده می شود:

صرفه جویی

ذخیره نام فایل ذخیره نام فایل varl var2 ... ذخیره ... گزینه save ("نام فایل"، ...)

بر این اساس، دستور load برای خواندن فایل ها از دیسک استفاده می شود:

بار

بارگذاری نام فایل بارگذاری نام فایل X Y Z

بارگذاری نام فایل -ascii بار نام فایل -mat

در این دستورات، نام فایل طبق قوانین اتخاذ شده در آن مشخص می شود سیستم های عاملکلاس MS-DOS. این دستورات معمولاً توسط دکمه های نوار ابزار و مرورگر فایل کپی می شوند.

عملیات فایل باینری

دودویی،یا دودویی،به فایل هایی گفته می شود که داده های آنها کدهای ماشین هستند. عملیات اساسی با چنین کدهایی در زیر فهرست شده است.

    fopen (نام فایل، مجوز) - فایلی را با نام فایل و پارامتر مشخص شده در مجوز باز می کند و شناسه fid را با مقدار: 0 - خواندن از صفحه کلید باز می کند (مجوز روی "r" تنظیم شده است). 1 - خروجی به نمایشگر (مجوز روی "a" تنظیم شده است). 2 - نمایش یک پیام خطا (مجوز روی "a" تنظیم شده است). -1 - باز نشدن فایل با خروجی پیام های پیامدر مورد نوع خطا fid اغلب به عنوان آرگومان توسط توابع دیگر و برنامه های I/O استفاده می شود. نام فایل نام فایل می تواند شامل مسیر فایل باشد.

اگر فایلی که برای خواندن باز می شود در دایرکتوری فعلی یافت نشد، تابع fopen فایل را در مسیر مشخص شده در متلب جستجو می کند.

پارامتر مجوز می تواند یکی از مقادیر اساسی زیر را بگیرد (برای سایرین، نگاه کنید به سیستم کمکی):

    "r" - فایل باز برای خواندن (پیش فرض)؛

    "r +" - فایل باز برای خواندن و نوشتن؛

    "w" - محتویات یک فایل موجود را حذف کنید یا یک فایل جدید ایجاد کنید و آن را برای نوشتن باز کنید.

    "a" - ایجاد و باز کردن یک فایل جدید یا باز کردن یک فایل موجود برایسوابق اضافه شده به انتهای فایل

افزودن یک "b" به این خط (پیش‌فرض) به سیستم می‌گوید فایل را در حالت باینری باز کند.

افزودن "t" به جای b به این خط، به عنوان مثال "rt"، در سیستم عامل هایی که بین فایل های متنی و باینری تمایز قائل می شوند، به سیستم دستور می دهد که فایل را در حالت متنی باز کند. به عنوان مثال، در تمام نسخه های MATLAB برای Windows / MS-DOS و VMS، نمی توانید یک فایل متنی را بدون پارامتر "rt" باز کنید. هنگام وارد کردن فایل‌ها با استفاده از fopen در حالت متنی، قبل از اینکه کاراکتر حذف شود، همه محموله‌ها برمی‌گردند خط جدید.

    Fopentfilename.permission، قالب) - یک فایل را همانطور که در بالا توضیح داده شد باز می کند و یک شناسه فایل و پیام را برمی گرداند. علاوه بر این، مقدار پارامتر فرمت به شما امکان می دهد تا به دقت تعیین کنید قالب شماره... 8 فرمت ممکن وجود دارد که شرح آنها را می توانید در سیستم راهنما بیابید. به طور خاص، رشته فرمت می تواند "بومی" (فرمت رایانه ای که سیستم روی آن نصب شده است)، "vax"، "sgau" (کامپیوترهای VAX و Cray) و غیره باشد.

برخی از فراخوان‌های فرید یا fwrite می‌توانند قالب عددی مشخص‌شده در فراخوانی برای باز کردن را لغو کنند.

    fids = fopen С all ") - یک رشته برداری حاوی شناسه های همه فایل های باز، به استثنای جریان های استاندارد О، 1 و 2 را برمی گرداند. تعداد عناصر برداری برابر با تعداد فایل های باز شده توسط کاربر است.

    Fopen (fid) - برمی گرداند نام و نام خانوادگیفایل، خط مجوز. و خط قالب. اگر از مقادیر fid نامعتبر استفاده شود، رشته های خالی برای همه آرگومان های خروجی برگردانده می شوند.

دستور fclose فایل را می بندد. گزینه های زیر را دارد.

    وضعیت = fclose (fid) - اگر فایل باز باشد بسته می شود. وضعیت وضعیت فایل را در صورت موفقیت آمیز بودن بسته شدن برابر با 0 و در غیر این صورت -1 برمی گرداند. آرگومان fid شناسه مرتبط با فایل باز است (برای توضیحات بیشتر به تابع fopen مراجعه کنید).

    status = fclose ("همه") همه فایل های باز را می بندد. در صورت موفقیت 0 و در غیر این صورت -1 را برمی گرداند.

نمونه ای از باز کردن و بستن یک فایل:

"Fid = fopen (" c: \ ex "." A + ") fid = 4

»Fclose (4)

ans =

    Fread (fid، اندازه، دقت) - داده های باینری را از فایل داده شده می خواند و آن را در ماتریس A قرار می دهد. شمارش آرگومان خروجی شامل تعداد عناصری است که با موفقیت خوانده شده اند. مقدار fid یک عدد صحیح است که توسط تابع fopen برگردانده می شود. اندازه یک آرگومان است که مقدار داده برای خواندن را مشخص می کند. اگر اندازه مشخص نشده باشد، f read داده ها را تا انتهای فایل می خواند.

پارامترهای اندازه زیر استفاده می شود:

    n - خواندن n عنصر در بردار ستون.

    به تعداد عناصر مورد نیاز برای پر کردن ماتریس می خواند thp.

پر کردن توسط ستون ها انجام می شود. اگر عناصر کمی در فایل وجود داشته باشد، ماتریس با صفر پر می شود. اگر خواندن بدون پر کردن ماتریس اندازه مورد نیاز به انتهای فایل برسد، ماتریس با صفر پر می شود. اگر خطایی رخ دهد، خواندن در آخرین مقدار خوانده شده متوقف می شود. پارامتر دقت رشته ای است که دقت عددی مقادیر خواندن را تعیین می کند، تعداد بیت های خوانده شده برای هر مقدار را کنترل می کند و این بیت ها را به عنوان یک عدد صحیح، ممیز شناور یا به عنوان یک کاراکتر تفسیر می کند.

    Fread (fid, size.precision, skip) - شامل یک آرگومان پرش دلخواه است که تعداد بایت هایی را که باید پس از هر خواندن رد شوند را مشخص می کند. این می تواند هنگام استخراج داده ها در مناطق غیر پیوسته از رکوردهای با طول ثابت مفید باشد. اگر دقت در قالب بیتی مانند "bitN 1 یا" ubitN " باشد، مقدار پرش مشخص می شود. ~ بیت ها لیست گسترده مقادیر ممکنپارامتر دقت را می توان در سیستم راهنمای MATLAB یافت.

    count = fwrite (fid، A، دقت) - عناصر ماتریس A را در یک فایل می نویسد و آنها را با دقت مشخص نشان می دهد. داده ها در فایل ستون به ستون نوشته می شوند و آرگومان خروجی count حاوی تعداد عناصری است که با موفقیت نوشته شده اند. مقدار fid یک عدد صحیح از تابع باز f است. قبل از شروع یک خط جدید، برگشت های کالسکه را اضافه می کند.

    count = fwrite (fid.A, precision, skip) - همین کار را انجام می دهد، اما شامل یک آرگومان پرش دلخواه است که تعداد بایت هایی را که باید قبل از هر نوشتن رد شوند را مشخص می کند. این هنگام درج داده ها در مناطق غیر پیوسته در رکوردهای با طول ثابت مفید است. اگر دقت در قالب بیتی مانند "bitN" یا "ubitN" باشد، مقدار پرش به بیت مشخص می شود.

مثال ها:

»Fid = fopen (" c: \ prim "، a + ")

فید =

»A = جادو (7)

A =

30

39

48

1

10

19

28

38

47

7

9

18

27

29

46

6

8

17

26

35

37

5

14

16

25

34

36

45

13

15

24

33

42

44

4

21

23

32

41

43

3

12

22

31

40

49

2

11

20

»Count = fwrite (j.A)

شمارش =

»وضعیت = fclose (3)

وضعیت =

»فید

فوپن ("c: \ prim". "R")

فید =

"= فرید (3.)

30

39

48

1

10

19

28

38

47

7

9

18

27

29

46

6

8

17

26

35

37

5

14

16

25

34

36

45

13

15

24

33

42

44

4

21

23

32

41

43

3

12

22

31

40

49

2

11

20

شمارش =

عملیات فایل های فرمت شده

فایل های حاوی داده های فرمت شده نامیده می شوند فایل های فرمت شدهدر زیر توابعی که برای کار با این گونه فایل ها استفاده می شود را مشاهده می کنید.

    Line = fgetl (fid) - یک رشته را برمی گرداند از جانبفایل با شناسه fid با نویسه پایان خط حذف شده است. اگر fgetl انتهای فایل را تشخیص دهد، -1 را برمی گرداند (برای جزئیات بیشتر در مورد fid به fopen مراجعه کنید).

    Line = f دریافت (fid) - خط را از فایل با شناسه fid بدون حذف کاراکتر انتهای خط برمی‌گرداند. اگر fgets انتهای فایل را تشخیص دهد، -1 را برمی گرداند.

    Line = fgets (fid.nchar) - بیش از nchar کاراکترهای اول خط را برمی گرداند. هیچ کاراکتر اضافی بعد از کاراکتر پایان خط یا پایان فایل خوانده نمی شود (به مثال هایی برای تابع fscanf مراجعه کنید).

    Count = fprintf (fid.format, A ....) - داده های موجود در قسمت واقعی ماتریس A را تحت کنترل رشته فرمت قالب بندی می کند و آنها را در یک فایل با شناسه fid می نویسد. تابع fprintf تعداد بایت های نوشته شده را برمی گرداند. مقدار fid یک عدد صحیح است که توسط تابع fopen برگردانده می شود.

اگر شناسه fid را در لیست آرگومان تابع fprintf حذف کنید، خروجی روی صفحه نمایش داده می شود، درست مانند زمانی که از خروجی استاندارد استفاده می کنید (fid = l).

    fprintf (قالب، A ....) - نوشتن بر روی انجام می شود دستگاه استاندارد- صفحه نمایش (اما نه به فایل). رشته فرمت سیستم اعداد، تراز، ارقام قابل توجه، عرض فیلد و سایر ویژگی های فرمت خروجی. این می تواند شامل حروف منظم الفبا به همراه واجد شرایط، کاراکترهای تراز و غیره باشد.

جدول 19.1. کاراکترهای خاص در رشته های قالب

نماد

شرح

\ n

خط جدید

\ t

زبانه افقی

\ ب

Backspace یک شخصیت

\ r

برگشت محموله

\ f

صفحه جدید

\\

اسلش

\" یا "

نقل قول تک

%%

درصد

تابع fprintf مانند تابع fprintf O معادل ANSI C با برخی استثناها و پسوندها رفتار می کند. جدول 19.1 کاراکترهای ویژه موجود در آن را توصیف می کند رشته فرمت... برای نمایش داده های عددی یا کاراکتری در یک رشته قالب، از استفاده کنید مشخص کننده ها،در جدول ذکر شده است. 19.2.

جدول 19.2. مشخص کننده های فرمت خروجی

مشخص کننده

شرح

% d سیستم اعشارینام گذاری ها (با علامت)
*با تک شخصیت

% e

نمادگذاری نمایی اعداد با استفاده از "e" در پایین ثبت نام کنید، برای مثال 3.1415e + 00

نمادگذاری نمایی اعداد با استفاده از "E" در بالا ثبت نام کنید، به عنوان مثال 3.1415Е + 00

% f

سیستم علامت گذاری نقطه ثابت

% g

فشرده ترین % e و % f. صفرهای انتهایی نمایش داده نمی شوند

% G

مانند% d، اما از حروف بزرگ برای "E" استفاده می کند

%O

نماد هشت‌گانه (بدون امضا)

% s

رشته کاراکتر

% u

نماد اعشاری (بدون علامت)

٪ ایکس


نماد هگزادسیمال با استفاده از نمادها حروف کوچک("الف" ... "ف")

٪ ایکس

نماد هگزادسیمال با استفاده از حروف بزرگ ("A" ... "F")

کاراکترهای اضافی را می توان بین علامت درصد و حرف در مشخص کننده درج کرد. معنی آنها در جدول توضیح داده شده است. 19.3.

جدول 19.3. گزینه های تعیین کننده قالب

نماد

شرح

مثال

علامت منفی" (-)

استدلال های تبدیل شده با توجیه چپ

% -5.2 روز

علامت بعلاوه (+)

همیشه یک علامت عددی (+ یا -) چاپ کنید

% + 5.2 روز

صفر (0)

پر کردن با صفر به جای فاصله

% 05.2d

شماره

حداقل تعداد کاراکترهایی که باید چاپ شوند را مشخص می کند

% 6f

ارقام (بعد از نقطه)

عدد بعد از نقطه تعداد کاراکترهای چاپ شده را تعیین می کندسمت راست نقطه اعشار

% 6.2f

    A = fscanf (fid، format) - تمام داده ها را از فایل با شناسه fid می خواند، آن را با توجه به مقدار پارامتر فرمت تبدیل می کند و آن را به عنوان یک ماتریس A برمی گرداند. مقدار شناسه fid یک عدد صحیح است که توسط تابع fopen پارامتر فرمت رشته ای است که فرمت داده های خوانده شده را مشخص می کند.

    Fscanf (fid.format، size) - مقدار داده‌های مشخص‌شده توسط پارامتر اندازه را می‌خواند، آن‌ها را با توجه به پارامتر قالب تبدیل می‌کند و به همراه تعداد عناصری که با موفقیت خوانده شده‌اند، شمارش می‌کند. پارامتر اندازه یک آرگومان دلخواه است که مقدار داده برای خواندن را مشخص می کند. مقادیر زیر معتبر هستند:

    • inf - خواندن عناصر تا انتهای فایل و قرار دادن آنها در بردار ستونی حاوی همان تعداد عناصر موجود در فایل.

      به تعداد عناصر مورد نیاز برای پر کردن ماتریس اندازه می خواند thp.پر کردن توسط ستون ها انجام می شود. مقدار n (اما نه!) می تواند مقدار Inf را بگیرد.

رشته قالب شامل شخصیت های معمولیو/یا مشخص کننده ها مشخص کننده ها نوع داده خوانده شده را نشان می دهند و کاراکتر را در بر می گیرند %, گزینه عرض فیلد و قالب بندی کاراکترها. کاراکترهای قالب ممکن در جدول ذکر شده است. 19.4.

جدول 19.4. فرمت کاراکترهای استفاده شده توسط تابع fscanf

نماد

شرح

دنباله ای از شخصیت ها؛ پارامتر عرض میدان تعداد کاراکترهای خوانده شده را تعیین می کند

% d

اعشاری

% e، % f، % g

عدد ممیز شناور

٪ من

عدد صحیح امضا شده

% o

عدد اکتالبا علامت

% s

دنباله ای از کاراکترهای بدون فضای سفید

% u

عدد صحیح اعشاری امضا شده

٪ ایکس

عدد صحیح هگزادسیمال امضا شده

[...]

توالی شخصیت ها

بین نماد % و کاراکتر قالب مجاز است کاراکترهای زیر را وارد کند:

    ستاره (*) به این معنی است که مقدار مربوطه نیازی به ذخیره در ماتریس خروجی ندارد.

    رشته ای از اعداد را مشخص می کند حداکثر عرضزمینه های؛

    این حرف اندازه شیء به دست آمده را نشان می دهد: h برای یک عدد صحیح کوتاه (مثلاً % n d)، 1 برای یک عدد صحیح بلند (مثلاً % ld)، یا برای یک عدد ممیز شناور با دقت دو برابر (مثلاً % ال جی ).

مثال ها:

"X = 0: pi / 10: pi: y-;

»Fid = fopent" c: \ sin.txt ". V)؛

»Fprintf (fid." X5.3f * 10.6f \ n ".y): fclose (fid);

0.000 0.000000

0.314 0.309017

0.628 0.587785

0.942 0.809017

1.257 0.951057

1.571 1.000000

1.885 0.951057

2.199 0.809017

2.513 0.587785

2.827 0.309017

3.142 0.000000

»Fid = fopen (" c: \ sin.txt "." R ");

»Q = fscanf (fid." * G ".):

"س"

ans =

0.3140 0.3090

0.6280 0.5878

0.9420 0.8090

1.2570 0.9511

1.5710 1.0000

1.8850 0.9511

2.1990 0.8090

2.5130 0.5878

2.8270 0.3090

»Fgetl (fid)

جواب =

3.142 0.000000

»Fgets (fid)

جواب =

»Fclose (fid)

جواب =

موقعیت یابی فایل

وقتی فایل‌ها خوانده و نوشته می‌شوند، معمولاً به صورت داده‌های خطی نمایش داده می‌شوند، مانند ضبط بر روی نوار مغناطیسی پیوسته. مکانی که خواندن در آن لحظه از آن است (یا موقعیتی که از آن ضبط در حال انجام است) توسط ویژه تعیین می شود اشاره گرفایل های دسترسی متوالی به شدت از ابتدا تا انتها و در فایل ها مشاهده می شوند دسترسی تصادفیاشاره گر را می توان در هر جایی که داده های فایل از آن نوشته یا خوانده می شود قرار داد.

بنابراین، اشاره گر موقعیت یابی فایل را فراهم می کند. تعدادی از توابع موقعیت یابی در دسترس هستند:

    Eofstat = feof (fid) - بررسی می کند که آیا به پایان پرونده با شناسه fid رسیده است یا خیر. اگر اشاره گر در انتهای فایل باشد 1 و در غیر این صورت 0 را برمی گرداند.

    Message = ferror (fid) - اطلاعات مربوط به خطا را به عنوان رشته پیام برمی گرداند. آرگومان fid شناسه فایل باز است (برای توضیحات مفصل به تابع fopen مراجعه کنید).

    Message = f error (f id، "clear") - نشانگر خطا را برای فایل مشخص شده پاک می کند.

    Ferror (.) - خطای آخرین عملیات I/O را برای فایل مشخص شده برمی گرداند.

اگر آخرین عملیات I/O انجام شده بر روی فایل مشخص شده fid موفقیت آمیز بود، مقدار پیام است خط خالیو errnum 0 است.

خطای غیر صفر نشان می دهد که در آخرین عملیات I/O خطایی رخ داده است. پارامتر پیام حاوی یک رشته حاوی اطلاعات مربوط به ماهیت خطای رخ داده است.

مثال:

»Fid = fopen (" c: \ examplel "." A + ")

فید =

»T = fread (3،)

ماتریس خالی: 4 در 0

»ترس (3)

جواب =

آیا فایل برای خواندن باز است؟ ... ... ...

    frewind (fid) - نشانگر موقعیت را در ابتدای فایل با شناسه fid تنظیم می کند.

    وضعیت - fseekCfid، offset، مبدا) - نشانگر فایل را با شناسه fid در موقعیت مشخص شده تنظیم می کند - توسط بایت، توسط پارامتر مشخص شده استجبران نسبت به مبدا.

استدلال ها:

    Fid شناسه فایل بازگردانده شده توسط تابع fopen است.

    offset مقداری است که به صورت زیر تفسیر می شود:

    • offset> 0 - موقعیت نشانگر را با بایت های افست به سمت انتهای فایل تغییر می دهد.

      offset = 0 - موقعیت اشاره گر را تغییر نمی دهد.

      انحراف<0 - изменяет позицию указателя на offset байт в направлении к началу файла;

    Origin آرگومانی است که مقادیر زیر را می گیرد:

    • "bof یا -1 ابتدای فایل است.

      "cof" یا 0 موقعیت فعلی اشاره گر در فایل است.

      "eof" یا 1 - انتهای فایل؛

    وضعیت یک آرگومان خروجی است. اگر عملیات fseek موفقیت آمیز بود مقدار 0 و در غیر این صورت -1 است. اگر خطایی رخ داد، برای جزئیات بیشتر از تابع ferror استفاده کنید.

    position = ftel I (fid) - موقعیت اشاره گر فایل با fid را که با استفاده از تابع fopen به دست آمده است، برمی گرداند. آرگومان خروجی موقعیت یک عدد صحیح غیر منفی است که موقعیت اشاره گر را بر حسب بایت نسبت به ابتدای فایل مشخص می کند. اگر درخواست ناموفق بود، موقعیت -1 است. از تابع ferror برای نمایش ماهیت خطا استفاده کنید.

مثال ها:

»F id-fopen (" c: \ مثال "." A + ")

فید =

"Count = fwrite (3، جادویی (6))

تعداد = 36

»FtelK3)

جواب =

»Frewind (3): ftell (3)

جواب =

"Fseek (3.12.0)؛ ftell (3)

ans =

» Feof (3)

جواب =

»Fclose (3)

جواب =

    S = sprintf (فرمت، A، ...) - داده ها را در ماتریس A در قالب مشخص شده توسط پارامتر فرمت قالب بندی می کند و یک متغیر رشته ای s از آنها ایجاد می کند.

    SprintfCformat، A ....) - شبیه به تابعی که قبلا توضیح داده شد، اما علاوه بر این، یک رشته خطا ermsg را اگر خطایی رخ داده باشد، یا یک رشته خالی را در غیر این صورت برمی گرداند. رشته قالب، سیستم اعداد، تراز، ارقام مهم، عرض فیلد و سایر ویژگی های فرمت خروجی را تعریف می کند. این می تواند شامل کاراکترهای معمولی همراه با واجد شرایط، کاراکترهای تراز و غیره باشد. تابع fprintf مانند تابع ANSI C مشابه fprintf 0 با برخی استثناها و پسوندها رفتار می کند.

مثال ها:

"SprintfC" * 0.5g ". (L + sqrt (7)) / 4)

ans =

0.91144

»SprintfC "% s"،"هی")

ans =

هی

تابع sscanf شبیه تابع fscanf است، با این تفاوت که داده ها را از یک متغیر نمادین MATLAB به جای یک فایل می خواند.

    А = sscanf (s, format) - داده ها را از متغیر نمادین s می خواند، آنها را با توجه به مقدار فرمت تبدیل می کند و بر اساس این داده ها ماتریس A را ایجاد می کند. پارامتر فرمت فرمت داده های خوانده شده را تعیین می کند.

    A = sscanf (s، قالب، اندازه) - مقدار داده های مشخص شده توسط پارامتر اندازه را می خواند و آن را با توجه به رشته فرمت تبدیل می کند. پارامتر اندازه یک آرگومان است که مقدار داده برای خواندن را مشخص می کند. مقادیر زیر معتبر هستند:

    • n - خواندن n عنصر در بردار ستون.

      inf - خواندن عناصر تا انتهای یک متغیر نمادین و قرار دادن آنها در یک بردار ستونی حاوی همان تعداد عنصر که در یک متغیر رشته ای وجود دارد.

      به تعداد عناصر مورد نیاز برای پر کردن ماتریس اندازه می خواند thp.پر کردن توسط ستون ها انجام می شود. مقدار n (اما نه!) می تواند مقدار Inf را بگیرد.

    Sscanf (...) - داده ها را از متغیر کاراکتر s می خواند، آن را با توجه به مقدار قالب تبدیل می کند و به ماتریس A برمی گرداند. پارامتر count یک output.argument است که تعداد عناصر خوانده شده با موفقیت را برمی گرداند. errmsg یک آرگومان خروجی است که در صورت بروز خطا یک رشته خطا و در غیر این صورت یک رشته خالی را برمی گرداند. nextindex آرگومان خروجی است که دارای یک عدد بیشتر از تعداد کاراکترهای s است.

رشته قالب از کاراکترها و مشخص کننده های معمولی تشکیل شده است. مشخص کننده ها نوع داده را نشان می دهند و کاراکتر را شامل می شوند %, گزینه عرض فیلد و قالب بندی کاراکترها. توضیحات را می توان در توضیحات تابع fscanf یافت.

مثال:

"S =" 4.83 3.16 22 45 ";

»= Sscanf (s."% F ")

A =

4.8300 - 3.1600

22.0000

45.0000

خطا =

بعدی =

فایل های تخصصی

توابع زیر به برخی اشاره دارد فایل های تخصصی:

    M = dlmread (نام فایل، جداکننده) - داده‌ها را از نام فایل با جداکننده ASCII، با استفاده از جداکننده جداکننده، در آرایه M می‌خواند. از "\ t" i برای تعیین جداکننده تب استفاده کنید.

    M = dlmreadCfilename.delimiter، gs) - داده‌ها را از نام فایل با یک جداکننده ASCII، با استفاده از جداکننده جداکننده، در آرایه M می‌خواند، که از افست r (با ردیف‌ها) و c (با ستون‌ها) شروع می‌شود. پارامترهای r و c با شروع از صفر شمارش می شوند، به طوری که r = 0، c = 0 مربوط به اولین مقدار در فایل است.

    M = dlmreadCfilename, deli mi ten, r, c, range) - یک محدوده نمایه شده یا نامگذاری شده از داده های محدود شده را در قالب ASCII وارد می کند. برای استفاده از محدوده ای از سلول ها، باید پارامتر محدوده را به صورت range = [TopString. ستون سمت چپ BottomRow، RightColumn].

آرگومان های تابع dlmread به شرح زیر است:

    جداکننده کاراکتری است که عناصر ماتریس را در صفحه گسترده ASCII جدا می کند.

    (،) - جداکننده پیش فرض؛

    R، c - سلول صفحه گسترده که عناصر ماتریس از آن گرفته شده است، مربوط به عناصر موجود در گوشه سمت چپ بالای جدول.

    محدوده یک برداری است که محدوده سلول ها را در صفحه گسترده تعریف می کند.

دستور dlmwrite یک ماتریس MATLAB را به یک فایل محدود شده با ASCII تبدیل می کند که توسط برنامه های صفحه گسترده قابل خواندن است:

    Dl mwri te (f i 1 ename. A. delimiter) - ماتریس A را در سلول سمت چپ صفحه گسترده نام فایل، با استفاده از جداکننده برای جداسازی عناصر ماتریس می نویسد. از "U" برای ایجاد یک فایل جدا شده با برگه استفاده کنید. تمام عناصر با مقدار 0 حذف می شوند. به عنوان مثال، آرایه در فایل به صورت "1., 2" ظاهر می شود (اگر جداکننده یک کاما باشد):

    dlmwrite (نام فایل، A، جداکننده، r، c) - ماتریس A را به نام فایل می نویسد، از محل مشخص شده توسط r و c با استفاده از جداکننده شروع می شود.

    info = imfinfo (filename.fmt) - ساختاری را برمی‌گرداند که فیلدهای آن حاوی اطلاعاتی درباره تصویر در فایل گرافیکی است. آرگومان filename رشته ای است که نام فایل گرافیکی را مشخص می کند، fmt رشته ای است که فرمت فایل را مشخص می کند. فایل باید در دایرکتوری فعلی یا در دایرکتوری مشخص شده در مسیر MATLAB باشد. اگر imflnfo نتواند فایلی به نام filename پیدا کند، به دنبال فایلی با نام filename.fmt می گردد.

جدول 19.5 مقادیر ممکن برای آرگومان fmt را نشان می دهد.

جدول 19.5.فرمت های گرافیکی پشتیبانی شده و نامگذاری آنها

اگر نام فایل یک فایل TIFF یا HDF است که حاوی بیش از یک تصویر است، 1 nf o آرایه‌ای از ساختارها با یک عنصر جداگانه (یعنی با ساختار جداگانه) برای هر تصویر در فایل است. به عنوان مثال، اطلاعات (3) سپس حاوی اطلاعات مربوط به تصویر سوم در فایل است. بسیاری از فیلدهای موجود در اطلاعات به فایل خاص و فرمت آن بستگی دارد. با این حال، نه فیلد اول همیشه یکسان است. جدول 19.6 این فیلدها را فهرست کرده و معانی آنها را شرح می دهد.

جدول 19.6. زمینه های ساختار اطلاعات و معانی آنها

رشته معنی
نام فایل یک رشته حاوی نام فایل؛ اگر فایل در دایرکتوری فعلی نباشد، خط حاوی مسیر کامل فایل است
FileModDate رشته ای حاوی تاریخ آخرین ویرایش فایل
حجم فایل یک عدد صحیح که اندازه فایل را بر حسب بایت نشان می دهد
فرمت رشته ای حاوی فرمت فایل مشخص شده توسط پارامتر fmt. برای فایل های JPEG و TIFF، یک مقدار سه نویسه برگردانده می شود
FormatVersion رشته یا عددی که نسخه قالب را توصیف می کند
عرض یک عدد صحیح که عرض تصویر را بر حسب پیکسل نشان می دهد
ارتفاع یک عدد صحیح که ارتفاع تصویر را بر حسب پیکسل نشان می دهد
BitDepth یک عدد صحیح که تعداد بیت ها در هر پیکسل را نشان می دهد
ColorType رشته ای که نوع تصویر را توصیف می کند: "truecolor" برای یک تصویر RGB، "Grayscale" برای یک تصویر در مقیاس خاکستری، یا "Indexed" برای یک تصویر رنگی نمایه شده

    Info = imfinfo (نام فایل) - سعی می کند فرمت فایل را بر اساس محتوا تعیین کند. مثال:

»Info = irrifinfo (" С: \ نمایشگاه \ Internet.bmр ")

اطلاعات =

نام فایل: "C: \ Exhibition \ Internet.bmr"

حجم فایل: 481078

فرمت: "bmp"

FormatVersion: "نسخه 3 (Microsoft Windows 3.x)"

یا یک تصویر truecolor (RGB) از کلاس uint8، دستور imwrite مقادیر واقعی آرایه را در یک فایل می نویسد. اگر A از کلاس double باشد، دستور imwrite قبل از نوشتن با استفاده از تبدیل uint8 (گرد (255 * A)) مقادیر موجود در آرایه را لغو می کند. این عملیات اعداد ممیز شناور در یک محدوده را به اعداد صحیح 8 بیتی در یک محدوده تبدیل می کند. مقادیر معتبر برای ftnt مانند دستور imfinfo است.

    imwrite (X، نقشه، نام فایل، fmt) - تصویر نمایه شده واقع در آرایه X و پالت رنگ tar مربوطه را به نام فایل می نویسد. اگر X حاوی یک تصویر uint8 باشد، دستور imwrite مقادیر واقعی آرایه را در یک فایل می نویسد. اگر X دو برابر باشد، دستور imwrite قبل از نوشتن با استفاده از تبدیل uintS (X-l) مقادیر موجود در آرایه را لغو می کند. پالت تار باید از کلاس دوگانه باشد. تابع imwrite با استفاده از تبدیل uint8 (round (255 * mar)) مقادیر tar را لغو می کند.

    imwrite (.... filename) - تصویر را به نام فایل با فرمت مشخص شده توسط پسوند فایل می نویسد. پسوند می تواند یکی از مقادیر معتبر برای پارامتر fmt باشد.

    imwrite (.... Parameter, Value ....) پارامترهایی را تعریف می کند که ویژگی های مختلف فایل خروجی را کنترل می کند. گزینه ها برای فایل های HDF، JPEG و TIFF استفاده می شود.

    M = wklread (نام فایل) - صفحه گسترده Lotusl23 (WK1) را در ماتریس M می خواند.

    М = wklread (filename.r.c) - داده ها را از سلول مشخص شده توسط مقادیر (r, s) می خواند. پارامترهای r و c بر اساس صفر هستند، به طوری که r = 0، c = 0 اولین سلول در فایل را تعریف می کند.

    M = wklread (نام فایل، r، c، محدوده) - محدوده مقادیر مشخص شده توسط محدوده را می خواند، جایی که محدوده می تواند به یکی از اشکال زیر باشد:

    • یک بردار چهار عنصری که محدوده ای از سلول ها را در قالب [top_line. ستون_چپ، خط_پایین، ستون_راست]؛

      محدوده ای از سلول های تعریف شده توسط یک رشته، به عنوان مثال "A1 ... C5"؛

      یک نام محدوده، مشخص شده به عنوان یک رشته، مانند "Sales".

    wklwrite (نام فایل.M) - مقادیر ماتریس M را در نام فایل صفحه گسترده Lotus 123 WK1 می نویسد.

    wklwrite (نام فایل، M، r، c) - داده ها را از سلول مشخص شده توسط مقادیر (r، s) می نویسد. پارامترهای r و c مبتنی بر صفر هستند، بنابراین r = 0، c = 0 اولین سلول در صفحه گسترده را تعریف می کند.

جدول 19.7 فرمت های تصویر موجود برای خواندن توسط تابع imread را نشان می دهد. لیست پارامترها و مقادیر احتمالی آنها برای تابع imwrite در جدول موجود است. 19.8.

لازم به ذکر است که اکثر توابع مورد بحث در بالا به ندرت توسط کاربران استفاده می شود. اما آنها به طور گسترده برای اهداف سیستمیک استفاده می شوند و مورد توجه متخصصان هستند.

جدول 19.7. فرمت فایل ها و توضیحات مختصر آنها

فرمت انواع
BMP تصاویر فشرده نشده 1 بیتی، 4 بیتی، 8 بیتی و 24 بیتی. تصاویر فشرده 4 بیتی و 8 بیتی RLE
HDF بیت مپ های 8 بیتی، با یا بدون پالت رنگ. بیت مپ های 24 بیتی
Jpeg هر گونه عکس JPEG؛ تصاویر JPEG با برخی از پسوندهای رایج
PCX تصاویر 1 بیتی، 8 بیتی و 24 بیتی
تیف هر تصویر TIFF، از جمله -بیتی، 8 بیتی و 24 بیتی تصاویر غیر فشرده. تصاویر 1 بیتی، 8 بیتی و 24 بیتی با فشرده سازی بسته بیت. تصاویر 1 بیتی با فشرده سازی CCITT
XWD Zpixmaps 1 بیتی و 8 بیتی. XYBitmaps؛ XYPixmaps 1 بیتی

جدول 19.8. پارامترهای مورد استفاده هنگام نوشتن فایل های گرافیکی

پارامتر معنی مقدار پیش فرض
گزینه هایی برای فایل های HDF
"فشرده سازی" یکی از مقادیر زیر: "none", Vie "," jpeg " "rle"
"کیفیت" عددی بین 0 تا 100؛ پارامتر برای "Compression" = "jpeg" پشتیبانی می شود. هرچه این عدد بیشتر باشد، کیفیت فایل بالاتر (تحریف کمتر فایل در هنگام فشرده سازی) و اندازه آن بزرگتر می شود. 75
"WriteMode" یکی از مقادیر زیر: "بازنویسی"، "پیوست" "زیاد نوشتن"
گزینه هایی برای فایل های JPEG
"کیفیت" عددی بین 0 تا 100؛ هرچه این عدد بیشتر باشد، کیفیت فایل بالاتر است (اعوجاج کمتر در هنگام فشرده سازی فایل) و اندازه فایل بزرگتر است. 75
گزینه هایی برای فایل های TIFF
"فشرده سازی" یکی از مقادیر زیر: "none"، "packbits"، "ccitt"; مقدار "ccitt" فقط برای تصاویر باینری (دو رنگ) معتبر است "ccitt" برای تصاویر باینری. "بسته ها" برای بقیه
"شرح" هر رشته؛ مقدار فیلد ImageDescription با دستور imfinfo برگردانده می شود خط خالی
"وضوح" مقدار اسکالر برای وضوح در جهات x و y
72

چه چیز جدیدی یاد گرفتیم؟

در این آموزش یاد گرفتیم:

    فایل ها را باز و بسته کنید.

    انجام عملیات بر روی فایل های باینری و فرمت شده.

    فایل را در موقعیت قرار دهید.

    فایل های تخصصی را اعمال کنید.

شایع ترین دلیل مشکلات باز کردن فایل متلب، صرفاً عدم نصب برنامه های مناسب بر روی رایانه شما است. در این مورد، کافی است فایل های سرویس دهنده اپلیکیشن را با فرمت MATLAB پیدا، دانلود و نصب کنید - چنین برنامه هایی در زیر موجود است.

سیستم جستجو

پسوند فایل را وارد کنید

کمک

سرنخ

لازم به ذکر است که برخی از داده های رمزگذاری شده از فایل هایی که رایانه ما آنها را نمی خواند، گاهی اوقات در Notepad قابل مشاهده است. به این ترتیب تکه‌هایی از متن یا اعداد را می‌خوانیم - ارزش بررسی این را دارد که آیا این روش برای فایل‌های MATLAB نیز کار می‌کند.

اگر یک برنامه از لیست قبلاً نصب شده باشد چه می شود؟

اغلب، یک برنامه نصب شده باید به طور خودکار به یک فایل متلب لینک شود. اگر این اتفاق نیفتاد، فایل MATLAB را می توان با موفقیت به برنامه نصب شده به صورت دستی پیوند داد. کافی است روی فایل متلب کلیک راست کرده و سپس از بین موارد موجود گزینه «انتخاب برنامه پیش فرض» را انتخاب کنید. سپس باید گزینه «View» را انتخاب کرده و اپلیکیشن مورد علاقه خود را بیابید. تغییرات معرفی شده باید با گزینه "OK" تایید شود.

برنامه هایی که فایل متلب را باز می کنند

پنجره ها

چرا نمی توانم فایل متلب خود را باز کنم؟

مشکلات فایل های متلب نیز می تواند پس زمینه متفاوتی داشته باشد. گاهی اوقات حتی نصب نرم افزاری که فایل های متلب را روی کامپیوتر ارائه می دهد نیز مشکل را حل نمی کند. دلیل عدم امکان باز شدن و همچنین کار با فایل متلب نیز می تواند موارد زیر باشد:

پیوندهای متناقض فایل MATLAB در ورودی های رجیستری
- خراب شدن فایل متلب که باز می کنیم
- آلوده شدن فایل متلب (ویروس)
- منابع کامپیوتری بسیار کم
- درایورهای قدیمی
- حذف پسوند متلب از رجیستری ویندوز
- نصب ناقص برنامه در حال سرویس دهی پسوند متلب

رفع این مشکلات باید منجر به باز کردن رایگان و کار با فایل های متلب شود. در صورتی که کامپیوتر همچنان با فایل ها مشکل دارد، باید از کمک متخصصی استفاده کنید که علت دقیق آن را مشخص می کند.

کامپیوتر من پسوند فایل را نشان نمی دهد، چه کاری باید انجام دهم؟

در نصب های استاندارد ویندوز، کاربر کامپیوتر پسوند فایل MATLAB را نمی بیند. این را می توان با موفقیت در تنظیمات تغییر داد. کافی است وارد «کنترل پنل» شده و «ظاهر و شخصی سازی» را انتخاب کنید. سپس باید وارد "Folder Options" شده و "View" را باز کنید. در تب "مشاهده" گزینه "پنهان کردن پسوند انواع فایل های شناخته شده" وجود دارد - باید این گزینه را انتخاب کنید و با فشار دادن دکمه "OK" عملیات را تأیید کنید. در این مرحله، پسوند همه فایل‌ها، از جمله متلب، باید بر اساس نام فایل مرتب شده ظاهر شوند.

مقالات مرتبط برتر