نوشته‌ها

آموزش متلب ، گام به گام ، صفر تا صد ! (قسمت هفتم)

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

۱۳) انواع داده

هرگاه متلب با نام متغیر جدیدی روبرو شود ، این متغیر را ایجاد می کند و فضای مناسب حافظه را اختصاص می دهد.

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

مثلا،

جمله بالا یک ماتریس ۱ به ۱ با نام “Total” ایجاد می کند و مقدار ۳۲ را در آن ذخیره می کند.

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

متلب ۱۵ نوع داده بنیادی را ارائه می دهد. هر نوع داده، داده هایی را به صورت ماتریس یا آرایه ذخیره می کند. اندازه این ماتریس یا آرایه حداقل ۰ در ۰ است و می تواند تا یک ماتریس یا آرایه از هر اندازه بزرگ شود.

جدول زیر متداول ترین نوع داده استفاده شده در MATLAB را نشان می دهد –

Sr.No. نوع و توضیحات داده ها
۱ int8

عدد صحیح علامت دار ۸بیت

۲ uint8

عدد صحیح بدون علامت ۸بیت

۳ int16

عدد صحیح علامت دار ۱۶بیت

۴ uint16

عدد صحیح بدون علامت ۱۶ بیت

۵ int32

عدد صحیح علامت دار۳۲بیت

۶ uint32

عدد صحیح بدون علامت ۳۲بیت

۷ int64

عدد صحیح علامت دار ۶۴بیت

۸ uint64

عدد صحیح بدون علامت ۶۴بیت

۹ single

single precision numerical data

۱۰ double

double precision numerical data

۱۱ logical

logical values of 1 or 0, represent true and false respectively

۱۲ char

character data (strings are stored as vector of characters)

۱۳ cell array

array of indexed cells, each capable of storing an array of a different dimension and data type

۱۴ structure

C-like structures, each structure having named fields capable of storing an array of a different dimension and data type

۱۵ function handle

pointer to a function

۱۶ user classes

objects constructed from a user-defined class

۱۷ java classes

objects constructed from a Java class

مثال
با کد زیر یک فایل اسکریپت ایجاد کنید

هنگامی که کد فوق کامپایل و اجرا شد ، نتیجه زیر را ایجاد می کند

تبدیل انواع داده

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

Function Purpose
char تبدیل به آرایه کاراکتر (رشته)
int2str تبدیل داده های عدد صحیح به رشته
mat2str تبدیل ماتریس به رشته
num2str تبدیل عدد به رشته
str2double تبدیل رشته به double-precision
str2num تبدیل رشته به عدد
native2unicode تبدیل بایت های عددی به کاراکترهای یونیکد
unicode2native تبدیل کاراکترهای یونیکد به بایت های عددی
base2dec تبدیل تعداد رشته پایه N به عدد اعشاری
bin2dec تبدیل تعداد رشته های باینری به عدد اعشاری
dec2base تبدیل اعشار به base N number
dec2bin تبدیل اعشار به عدد باینری
dec2hex تبدیل اعشار به عدد hexadecimal
hex2dec تبدیل عدد hexadecimal به اعشار
hex2num Convert hexadecimal number string to double-precision number
num2hex Convert singles and doubles to IEEE hexadecimal strings
cell2mat تبدیل آرایه سلولی به آرایه عددی
cell2struct تبدیل آرایه سلولی به آرایه ساختاری
cellstr Create cell array of strings from character array
mat2cell Convert array to cell array with potentially different sized cells
num2cell Convert array to cell array with consistently sized cells
struct2cell تبدیل ساختار به آرایه سلولی

تعیین انواع داده ها

متلب توابع مختلفی را برای شناسایی نوع داده های یک متغیر فراهم می کند.

در جدول زیر توابع تعیین نوع داده های متغیر ارائه شده است

 

FUNCTION PURPOSE
is تشخیص حالت
isfield بررسی آرایه ساختاری
iscell بررسی آرایه سلولی
validateattributes بررسی اعتبار آرایه
isstruct بررسی آرایه ساختاری
class بررسی کلاس object
isscalar بررسی آرایه اسکالر
isvector بررسی بردار
isinteger  بررسی آرایه عدد صحیح
isjava بررسی ورودی Java
islogical بررسی آرایه منطقی

مثال
با کد زیر یک فایل اسکریپت ایجاد کنید

هنگامی که پرونده را اجرا می کنید ، نتیجه زیر را ایجاد می کند

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

آموزش متلب، گام به گام ، صفر تا صد ! (قسمت ششم)

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

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

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

۱۲)پرونده های M

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

اسکریپت ها : فایل های اسکریپت فایل های برنامه ای با پسوند .m هستند. در این فایلها ، شما یک سری دستورات را می نویسید ، که می خواهید با هم اجرا کنید. اسکریپت ها ورودی را نمی پذیرند و هیچ خروجی را برنمی گردانند. آنها براساس داده های موجود در فضای کاری کار می کنند.

توابع – پرونده های توابع همچنین فایلهای برنامه ای با پسوند .m هستند. توابع می توانند ورودی ها را بپذیرند و خروجی ها را برگردانند.

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

ایجاد و اجرای فایل اسکریپت

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

  • با استفاده از خط فرمان
  • با استفاده از IDE

اگر از فرمان سریع استفاده می کنید ، در قسمت فرمان  edit را تایپ کنید. این ویرایشگر را باز می کند. می توانید مستقیماً ویرایش و سپس نام پرونده را تایپ کنید (با پسوند .m)

دستور فوق را در فهرست پیش فرض متلب ایجاد کنید. اگر می خواهید تمام پرونده های برنامه را در یک پوشه خاص ذخیره کنید ، باید کل مسیر را تهیه کنید.

بگذارید پوشه ای به نام Progs ایجاد کنیم. دستورات زیر را در خط فرمان تایپ کنید.

اگر برای اولین بار پرونده را تهیه می کنید ، متلب از شما درخواست می کند که آن را تأیید کنید.

آموزش متلب، گام به گام

آموزش متلب، گام به گام

روش دیگر ، اگر از IDE استفاده می کنید ، NEW -> Script را انتخاب کنید. این همچنین ویرایشگر را باز می کند و پرونده ای به نام Untitled ایجاد می کند. بعد از تایپ کد می توانید پرونده را نامگذاری و ذخیره کنید.

کد زیر را در ویرایشگر تایپ کنید

پس از ایجاد و ذخیره فایل ، می توانید آن را از دو طریق اجرا کنید –

با کلیک بر روی دکمه Run در پنجره ویرایشگر یا

فقط نام پرونده (بدون پسوند) را در قسمت فرمان تایپ کنید: >> prog1

پنجره فرمان سریع نتیجه ی زیر را نمایش میده

حالا بیاید یه مثال هم بررسی کنیم

یک فایل اسکریپت ایجاد کنید و کد زیر را تایپ کنید

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

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

آموزش متلب ، گام به گام، صفرتاصد! (قسمت چهارم)

بحث متغیرها را در قسمت سوم باز کردیم و میخوایم تکمیلش کنیم در این قسمت. خب بریم سراغ ادامه بحث آموزش گام به گام متلب 

کدهای پیچیده تر

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

جوابی که متلب به ما میده به صورت زیر هستش

فرمان فرمت

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

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

فرمان فرمت تا ۱۶ رقم را بعد از اعشار نشان می ده.

برای مثال:

که جواب زیر رو بر میگردونه

یه مثال دیگه از این بحث می زنیم

که جواب زیر رو داریم

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

حالا نتیجه ی زیر رو میبینیم

گاهی ام دوست داریم اعداد رو به طور نمایی نشون بدیم

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

که جواب زیر رو می گیریم

دستور زیر رو هم داریم که ببینیم چطور نشون میده

که اینجوری جواب میده

۹)ایجاد بردار

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

حالا ببینیم چطوری این هارو ایجاد کنیم

برای مثال

که جواب زیر رو داریم

یه مثال دیگه داریم

که جواب زیر رو میده

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

که اینجوری نمایش میده

۱۰)ایجاد ماتریس

یک ماتریس یک آرایه دو بعدی از اعداد است.

اینکه دستور رو چطور وارد می کنیم توضیح نمیدم، ولی خودتون شکل زیر رو ببینید متوجه میشید

دیدیم که اومدیم بردار های سطری و ستونی رو باهم ترکیب کردیم که جواب زیر رو میگیریم

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

 

چرا زبان متلب ، مساله این است!

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

در مقابل ، پایتون یک زبان برنامه نویسی با هدف کلی است.

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

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

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

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

جعبه ابزارهای  متلب

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

جعبه ابزار متلب عملکردهای کاملاً عالی را برای کاربردهای علمی و مهندسی ارائه می دهد. جعبه های ابزار برای کار با یکدیگر طراحی شده اند و در محیط های محاسبات موازی ، GPU ها و تولید خودکار کد C ادغام می شوند. آنها با هم به روز می شوند ، بنابراین شما هرگز با نسخه های کتابخانه ای ناسازگار مبارزه نمی کنید.

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

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

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

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

موارد زیر فقط گوشه ای از مزایای متلب می باشد:

  • با کدی که به زبان های دیگر مانند C ، C ++ ، Java ، .NET و Python نوشته شده ادغام کنید
  • الگوریتم ها را سریعتر و با تنها حداقل تغییر کد اجرا کنید.
  • برای شبیه سازی و طراحی مبتنی بر مدل ، به Simulink و Stateflow وصل شوید.
  • به طور خودکار کد متلب را به کد جاسازی شده C ، CUDA و HDL تبدیل کنید.
  • شما می توانید به نتایج به دست آمده در متلب اعتماد کنید.

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

تیمی از مهندسان MathWorks به طور مداوم با انجام میلیون ها تست بر روی پایه کد متلب هر روز تحقیق می کنند.

اینها همه توضیح می دهد که چرا مهندسین متلب را انتخاب می کنند.

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

 

 

آموزش متلب ، گام به گام، صفرتاصد! (قسمت سوم)

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

۸) متغیرها در متلب

در محیط متلب هر متغیر یک آرایه یا ماتریس است. میشه متغیرها را به روش ساده‌ای مشخص کرد. برای مثال،

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

یک ماتریس ۱ به ۱ به نام x ایجاد می کنه و مقدار ۵ رو در عنصر خود ذخیره می کند. بذارید مثال دیگری رو بررسی کنیم

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

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

  • بعد از ورود یک متغیر به سیستم ، می تونید بعداً به آن مراجعه کنید.
  • متغیرها قبل از استفاده باید دارای مقادیر باشن.

هنگامی که یک عبارت نتیجه ای را که به هیچ متغیر اختصاص داده نشده است ، سیستم آن را به متغیری به نام ans اختصاص می ده ، که می تواند بعداً استفاده شود.

به عنوان مثال

که نتیجه زیر رو میده بهمون

همچنین میتونیم از این متغیر استفاده هم بکنیم مثل مثال زیر

که متلب نتیجه زیر رو بهمون میده

برای اطمینان بیشتر بیاید یک مثال دیگه رو هم بررسی کنیم

که نتیجه زیر رو بهمون میده

وظایف چنگانه

می توانید تک تک وظایف را در همان خط داشته باشید. مثلا،

که نتیجه زیر رو برمیگردونه

اسم تمام متغیرها یادم رفت!

اصلا جای نگرانی نیست، دستور who همه اون هارو بهتون نشون میده

که نتیجه زیر رو بهمون میده

فرمان whos اطلاعات کمی هم در مورد متغیرها نشون میده

  • متغیرهایی که هم اکنون در حافظه هستند
  • نوع هر متغیر
  • حافظه به هر متغیر اختصاص داده می شود
  • خواه متغیرهای پیچیده باشند یا نه

که نتیجه زیر برامون ظاهر میشه

فرمان  clear حافظه (یا متغیر مشخص شده) رو حذف می کنه.

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

نرم افزار کامسول ، انسیس یا آباکوس؟ یک بار برای همیشه!

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

 

خب اول بریم سراغ کامسول

کامسول

کامسول

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

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

 

 

قدم بعدی، انسیس

انسیس

انسیس

کسایی که با انسیس کار کرده باشند میدونند که طراحی و رسم هندسه در این نرمافزار به دو بخش کلاسیک و Workbench تقسیم میشه. بخش Workbench مثل برنامه های CAD عمل میکنه و بسیار ساده و محبوبه مخصوصا در صنعت. شبیه سازی در انسیس یکی از دقیقترین شبیه سازی هاست و تجربه نشون داده این شبیه سازی اگر درست انجام بشه با مدل واقعی خودش کمترین تناقض و اختلاف رو داره. اما چیزی که انسیس رو از کامسول پایینتر نگه میداره دامنه ی کاربردی این نرم افزار هستش. انسیس بیشتر در بحث جامدات و سیالات کاربرد داره.، ولی اگر پای یک پروژه صنعتی درمیون باشه ما به شما انسیس رو پیشنهاد میکنیم. بلد بودن انسیس برای استخدام چهره ی مهندسی شما رو خیلی حرفه ای تر نشون میده.

 

در آخر، آباکوس

آباکوس

آباکوس

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

 

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

 

آموزش ساخت عکس متحرک APNG در متلب (قسمت دوم)

در قسمت قبلی این سری آموزش متلب در مورد پرونده های APNG نوشتم. فایل APNG یک فایل تصویری معتبر PNG است که از ابرداده های پرونده به روشی هوشمندانه برای فشرده سازی و ذخیره فریم های یک انیمیشن کامل استفاده می کند. برای اطلاعات بیشتر در مورد این موضوع، پست قبلی را مشاهده کنید.

همین اواخر ، من یک ابزار MATLAB برای ایجاد پرونده های APNG ایجاد کردم. این در Exchange File و همچنین در GitHub موجود است. این ابزار از برنامه APNG Assember استفاده می کند که تحت شرایط مجوز جداگانه در دسترس است. این ابزار برای اولین بار که از آن استفاده می کنید، این برنامه را به طور خودکار برای شما بارگیری می کند.

در اینجا کد یک نسخه از منحنی ها را مشاهده می کنیم:

آموزش متلب

آموزش متلب

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

بنابراین، من یک کد کوچک نوشتم تا دوباره منحنی تولید شده در بخشهای تقریباً مساوی قوس را دوباره تنظیم کنم. در اینجا به نظر می رسد

و در اینجا کد برای تولید یک قاب از انیمیشن به طور همزمان وجود دارد.

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

آموزش متلب

آموزش متلب

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

 

اموزش ساخت عکس متحرک APNG در متلب (قسمت اول)

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

در اینجا یک نمونه نمونه وجود دارد. آیا انیمیشن را در مرورگر وب خود مشاهده می کنید، یا فقط یک تصویر ثابت را می بینید؟

عکس متحرک در متلب

عکس متحرک در متلب

وقتی این تصویر را در لب تاب خود نگاه می کنید، با استفاده از Safari (نسخه ۱۱٫۱٫۲) و Chrome (نسخه ۶۲) متحرک می شود ، اما نه با مرورگر MATLAB.

باید اعتراف کنم که تا قبل از هفته گذشته ، هیچ وقت از پرونده های متحرک PNG نشنیده بودم ، وقتی اتفاق افتادم که آنها را در جواب های MATLAB ذکر کردم. یکی از صفحات پاسخ MATLAB که APNG در آن مورد بحث قرار گرفته است، این سؤال است که “چگونه می توانم تصاویر GIF متحرک را در MATLAB ایجاد کنم؟” ، جایی که رووی استفاده از APNG را به عنوان جایگزین برتر برای GIF پیشنهاد داد.

من کنجکاو بودم ، بنابراین شروع کردم به جستجوی آن.

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

به عنوان یک فرمت فایل تصویری ، GIF ضعف های قابل توجهی دارد. مورد اول این است که یک تصویر GIF می تواند حداکثر ۲۵۶ رنگ مختلف داشته باشد. برای GIF های متحرک ، این محدودیت برای هر فریم اعمال می شود. ضعف دوم این است که با صرفه جویی در تصویر با استفاده از شفافیت ، از یکی از ۲۵۶ رنگ استفاده می شود و شفافیت هر پیکسل تصویر کاملاً مات یا کاملاً شفاف است. این امر باعث می شود ساختن تصاویر با لبه های ضد انعطاف پذیری دشوار باشد ، همچنین باعث می شود وقتی یک تصویر GIF یا انیمیشن با استفاده از شفافیت در بالای تصویر پس زمینه ای متفاوت از آنچه در ابتدا برای ارائه تصویر استفاده شده است ، نمایش داده شود.

فرمت انیمیشن PNG برای غلبه بر هر دو ضعف در نظر گرفته شده بود. (همچنین ، بر خلاف GIF ، بحثی در مورد نحوه تلفظ PNG وجود ندارد.)

و در اینجا چند نکته جالب که من یاد گرفته ام:

پرونده APNG یک پرونده PNG معتبر است. با توجه به مشخصات PNG ، خوانندگان پرونده سازگار موظفند بخش هایی از پرونده را که از آنها نمی دانند چشم پوشی کنند. بنابراین ، یک خواننده سازگار PNG که از APNG استفاده نمی کند ، باید به سادگی اولین قاب تصویر را در پرونده نشان دهد.
ظاهراً ، جامعه مسئول حفظ مشخصات PNG هرگز پسوند مشخصات APNG را قبول نکرده و کتابخانه مرجع (libpng) را برای رسیدگی به APNG به روز نکرده است.
با وجود این ، APNG به سطح شگفت آور و گسترده ای از پشتیبانی مرورگر دست یافته است. مطابق با صفحه ویکی پدیا ، از این نوشتار ، فقط اینترنت اکسپلورر و مایکروسافت لبه دارای حق چاپ هستند.
معیارهای مختلفی به صورت آنلاین وجود دارد که ادعا می کنند اندازه پرونده های کوچکتر با APNG قابل دستیابی است ، با وجود این که پرونده های PNG فقط به ۲۵۶ رنگ محدود نمی شوند. من آن را تأیید نکرده ام ، اما معتقدم که این بهبود اندازه پرونده به دلیل ویژگی تمایز interframe اختیاری APNG است.
یک دستورالعمل نسبتاً ساده در صفحه ویکی پدیا برای ترکیب هر تعداد پرونده PNG در یک پرونده APNG وجود دارد.
در نهایت ، من به طور تصادفی فهمیدم که برنامه Preview در Mac قادر به تبدیل یک فایل GIF متحرک به پرونده APNG است. می توانید با مشاهده یک فایل GIF متحرک در Preview و سپس با استفاده از منوی “Export” این کار را به عنوان PNG ذخیره کنید. با انیمیشن دست نخورده ذخیره می شود.

تصویر متحرک در متلب

تصویر متحرک در متلب

در این حالت ، پرونده APNG تقریباً ۲٫۵ برابر اندازه پرونده GIF است ، بنابراین شاید برنامه Preview به طور کامل خروجی APNG را بهینه نکند. همچنین ، پرونده APNG اگر مستقیم از گرافیک اصلی ایجاد شده باشد ، کوچکتر خواهد بود ، زیرا به نظر می رسد که پرونده GIF از میرایی در میادین صفحه شطرنج استفاده می کند.

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

آموزش متلب ، گام به گام، صفر تا صد! (قسمت دوم)

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

۶) محیط متلب

وقتی وارد محیط نرم افزار متلب میشیم تصویری مانند شکل زیر ظاهر میشه.

آموزش متلب

آموزش متلب

این صفحه شامل قسمت هایی میشه که به شرح زیراند:

الف) Current Folder: این پنل به شما اجازه می‌دهد تا به پوشه‌های پروژه و پرونده‌ها دسترسی داشته باشید.

آموزش متلب

آموزش متلب

ب) Command Window: این ناحیه اصلی است که در آن فرمان‌ها را می توان در خط فرمان وارد کرد. 

آموزش متلب

آموزش متلب

ج) Workspace: فضای کاری تمام متغیرهای ایجاد شده و / یا وارداتی از فایل را نشان می‌دهد.

آموزش متلب

آموزش متلب

۷) دست به کد شو

از یه مثال خیلی ساده شروع می کنیم.

بعد از اینکه دکمه ی enter زده بشه حاصل رو به ما نشون میده.

حالا بیاید چندتا مثال دیگه شبیه به این حل کنیم

وقتی که روی دکمه enter کلیک می‌کنیم، یا Ctrl + E را تایپ بزنیم، MATLAB آن را فورا اجرا می‌کنه.

یا یک مثال دیگه

که نتیجه اش میشه

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

که جواب اینگونه میشه

الف) استفاده از Semicolon (;) در متلب

semicolon )نشان‌دهنده پایان بخشیدن به اون خط از کد هستش. با مثال بیشتر کاربردش رو متوجه میشید.

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

ب) کامنت دادن

نماد درصد (%)برای نشان دادن یک خط توضیح مورد استفاده قرار می‌گیرد. برای مثال

ج) Save کردن

برای save کردن کارهای خود در متلب کافیه کد زیر رو در آخر کار خودتون بزنید.

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

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

آموزش متلب، گام به گام، صفر تا صد! (قسمت اول)

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

حالا مخاطب های این دوره کیا هستن و چه کسایی می تونن از این دوره استفاده کنند؟ اگه بخوام به صورت خلاصه خدمتتون عرض کنم هرکسی که به متلب نیاز داشته باشه یا بخواد برای تکمیل کردن رزومه اش یه زبون برنامه نویسی هم اضافه کنه، این دوره خیلی می تونه براش مفید باشه.

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

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

۱) متلب از کجا اومده؟؟

متلب یک زبان برنامه‌نویسی است که توسط MathWorks توسعه داده شده است. به عنوان یک زبان برنامه‌نویسی ماتریسی آغاز شد که یک زبان برنامه‌نویسی  ساده است. مثال هایی که در ابتدا در آموزش آورده می شه سعی میشه از آسون ترین مثال ها باشه که آموزش ساده تر و کاربردی تر بکنه.

 

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

۲) پیش نیازها

ما فرض می‌کنیم که شما دانش کمی از برنامه‌نویسی کامپیوتر دارید و تا حدودی مفاهیمی مانند متغیرها، ثوابت و غیره را درک می‌کنید. اگر برنامه‌نویسی در هر زبان برنامه‌نویسی سطح بالا مانند C، C + + یا جاوا انجام دادید، آن وقت آموزش متلب مثل آب خوردن میمونه براتون.

۳) قدرت محاسباتی ریاضی متلب

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

  • برخورد با Matrices و Arrays
  • گرافیک و گرافیک سه‌بعدی
  • جبر خطی
  • معادلات جبری
  • توابع غیر خطی
  • آمار
  • آنالیز داده
  • معادلات دیفرانسیل
  • محاسبات عددی
  • یکپارچگی
  • منحنی نصب
  • دیگر توابع ویژه

۴) ویژگی های اصلی متلب

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

۵) مصارف متلب

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