تبلیغات
مهندسی مکانیک و هوافضا - مطالب متلب ( MATLAB )
منوی اصلی
مهندسی مکانیک و هوافضا
هر آنچه که یک مهندس بخواهد اینجا هست!
  • سلام خدمت دوستان عزیز ممکنه تکه کدی که با سی شارپ نوشته اید را بخواهید بدانید معادلش به زبان VB یا Python و ... چی میشه 
    Image

    برای این کار در سایت مورد نظر پس از تایپ کد در قسمت چپ صفحه و انتخاب زبان مورد نظر(زبان مبدا) سپس در سمت چپ صفحه زبانی رو که میخواهید کد بهش تبدیل شه (زبان مقصد) رو انتخاب کنید و در نهایت دگمه Convert رو بزنید 
    Image

    منبع : itpro.ir
    آخرین ویرایش: شنبه 16 دی 1396 04:18 ق.ظ
    ارسال دیدگاه
  • حسین اتحادی پنجشنبه 4 شهریور 1395 04:41 ق.ظ نظرات ()

    Create a simple line plot and add a text arrow to the figure. Specify the text arrow location in normalized figure coordinates, starting at the point (0.3,0.6) and ending at (0.5,0.5). Specify the text description by setting the String property.

    figure
    plot(1:10)
    x = [0.3 0.5];
    y = [0.6 0.5];
    annotation('textarrow',x,y,'String','y = x ')
    

    Create Text Box Annotation

    Create a simple line plot and add a text box annotation to the figure. Specify the text description by setting the String property. Force the box to fit tightly around the text by setting the FitBoxToText property to 'on'.

    figure
    plot(1:10)
    dim = [.2 .5 .3 .3];
    str = 'Straight Line Plot from 1 to 10';
    annotation('textbox',dim,'String',str,'FitBoxToText','on');
    

    Create a text box annotation without setting the FitBoxToText property. The text box uses the specified width and height and wraps text as needed.

    آخرین ویرایش: پنجشنبه 4 شهریور 1395 04:42 ق.ظ
    ارسال دیدگاه
  • حسین اتحادی پنجشنبه 4 شهریور 1395 04:21 ق.ظ نظرات ()

    Create a simple line plot and add a title to the graph. Include the Greek letter $\pi$ in the title by using the TeX markup \pi.

    x = linspace(0,2*pi);
    y = sin(x);
    plot(x,y)
    title('x ranges from 0 to 2\pi')
    

    Include Superscripts and Annotations in Graph Text

    Create a line plot and add a title and axis labels to the graph. Display a superscript in the title using the ^ character. The ^ character modifies the character immediately following it. Include multiple characters in the superscript by enclosing them in curly braces {}. Include the Greek letters $\alpha$ and $\mu$ in the text using the TeX markups \alpha and \mu, respectively.

    t = 1:900;
    y = 0.25*exp(-0.005*t);
    
    figure
    plot(t,y)
    title('Ae^{\alphat} for A = 0.25 and \alpha = -0.0005')
    xlabel('Time \musec')
    ylabel('Amplitude')
    

    Add text at the data point where t = 300. Use the TeX markup \bullet to add a marker to the specified point and use \leftarrow to include an arrow pointing to the left. By default, the specified data point is to the left of the text.

    txt = '\bullet \leftarrow 0.25t e^{-0.005t} at t = 300';
    text(t(300),y(300),txt)
    

    آخرین ویرایش: پنجشنبه 4 شهریور 1395 04:23 ق.ظ
    ارسال دیدگاه
  • حسین اتحادی پنجشنبه 4 شهریور 1395 04:07 ق.ظ نظرات ()
    سلام .
    حتما تا حالا براتون پیش اومده که خواستید یک حرف (سمبل) یونانی رو در قسمتی از شکلتون بنویسید . مثلا فرض کنید با دستور title بخواهید عنوان شکل رو بنویسید و باید در این عنوان یک حرف یونانی رو هم داشته باشید . 
    دستور title یک رشته رو دریافت میکنه و بر طبق اون رشته ، عنوان شکل ساخته میشه . برای درج حروف یونانی باید هر یک از عبارت های عکس زیر رو در اون رشته بنویسید تا حرف (سمبل) یونانی معادل آن در عنوان شکل نمایش داده بشه :

    www.aeros.ir

    برای دستورات دیگر که مشابه title هستند نیز می توانید از این عبارت ها استفاده کنید .
    آخرین ویرایش: پنجشنبه 4 شهریور 1395 04:09 ق.ظ
    ارسال دیدگاه
  • حسین اتحادی دوشنبه 1 شهریور 1395 11:03 ب.ظ نظرات ()

    smooth

    Smooth response data

    Syntax

    yy = smooth(y)
    gpuarrayYY = smooth(gpuarrayY)
    yy = smooth(y,span)
    yy = smooth(y,method)
    yy = smooth(y,span,method)
    yy = smooth(y,'sgolay',degree)
    yy = smooth(y,span,'sgolay',degree)
    yy = smooth(x,y,...)

    Description

    yy = smooth(y) smooths the data in the column vector y using a moving average filter. Results are returned in the column vector yy. The default span for the moving average is 5.

    The first few elements of yy are given by

    yy(1) = y(1)
    yy(2) = (y(1) + y(2) + y(3))/3
    yy(3) = (y(1) + y(2) + y(3) + y(4) + y(5))/5
    yy(4) = (y(2) + y(3) + y(4) + y(5) + y(6))/5
    ...

    Because of the way endpoints are handled, the result differs from the result returned by the filter function.

    gpuarrayYY = smooth(gpuarrayY) performs the operation on a GPU. The input gpuarrayY is a gpuArray column vector. The output gpuarrayYY is a gpuArray column vector. This syntax requires the Parallel Computing Toolbox™.

      Note:   You can use gpuArray x and y inputs with the smooth function, but this is only recommended with the default 'method', 'moving'. Using GPU data with other methods does not offer any performance advantage.

    yy = smooth(y,span) sets the span of the moving average to spanspan must be odd.

    yy = smooth(y,method) smooths the data in y using the method method and the default span. Supported values for method are listed in the table below.

    method

    Description

    'moving'

    Moving average (default). A lowpass filter with filter coefficients equal to the reciprocal of the span.

    'lowess'

    Local regression using weighted linear least squares and a 1st degree polynomial model

    'loess'

    Local regression using weighted linear least squares and a 2nd degree polynomial model

    'sgolay'

    Savitzky-Golay filter. A generalized moving average with filter coefficients determined by an unweighted linear least-squares regression and a polynomial model of specified degree (default is 2). The method can accept nonuniform predictor data.

    'rlowess'

    A robust version of 'lowess' that assigns lower weight to outliers in the regression. The method assigns zero weight to data outside six mean absolute deviations.

    'rloess'

    A robust version of 'loess' that assigns lower weight to outliers in the regression. The method assigns zero weight to data outside six mean absolute deviations.

    yy = smooth(y,span,method) sets the span of method to span. For the loess and lowess methods, span is a percentage of the total number of data points, less than or equal to 1. For the moving average and Savitzky-Golay methods, span must be odd (an even span is automatically reduced by 1).

    yy = smooth(y,'sgolay',degree) uses the Savitzky-Golay method with polynomial degree specified by degree.

    yy = smooth(y,span,'sgolay',degree) uses the number of data points specified by span in the Savitzky-Golay calculation. span must be odd and degree must be less than span.

    yy = smooth(x,y,...) additionally specifies x data. If x is not provided, methods that require x data assume x = 1:length(y). You should specify x data when it is not uniformly spaced or sorted. If x is not uniform and you do not specify methodlowess is used. If the smoothing method requires x to be sorted, the sorting occurs automatically.

    Examples

                                                                               read more..

    آخرین ویرایش: دوشنبه 1 شهریور 1395 11:07 ب.ظ
    ارسال دیدگاه
  • حسین اتحادی شنبه 30 مرداد 1395 12:52 ق.ظ نظرات ()

    LineSpec (Line Specification)

    Line specification string syntax

    Description

    Plotting functions accept string specifiers as arguments and modify the graph generated accordingly. Three components can be specified in the string specifiers along with the plotting command. They are:

    • Line style

    • Marker symbol

    • Color

    For example:

    plot(x,y,'-.or')

    plots y versus x using a dash-dot line (-.), places circular markers (o) at the data points, and colors both line and marker red (r). Specify the components (in any order) as a quoted string after the data arguments. Note that linespecs are single strings, not property-value pairs.

    Plotting Data Points with No Line

    If you specify a marker, but not a line style, only the markers are plotted. For example:

    plot(x,y,'d')

    read more..

    به ادامه مطلب مراجعه کنید

    آخرین ویرایش: شنبه 30 مرداد 1395 04:42 ب.ظ
    ارسال دیدگاه
  • حسین اتحادی جمعه 1 مرداد 1395 06:37 ب.ظ نظرات ()

    عملگرهای ریاضی و منطقی

    + , - , / , * , ^ , > , < , >= , <= , == , ~= , ~ , || , &&

     

    مدیریت m فایل

    % , … , %%

     

    رسم نمودارهای دو بعدی

    plot , fplot , comet , bar , barh, stairs , stem , pie , semilogx , semilogy , loglog , hist , polar

     

    رسم نمودارهای سه بعدی

    plot3 , meshgrid , mesh , surf , contour , comet3 , contour3 , meshc , clabel , surfl , …

     

    متعلقات مربوط به نمودارهای دو بعدی و سه بعدی

    xlabel , ylabel , zlabel , title , legend , grid , text , gtext , hold , figure , subplot , zoom , axis , xlim , ylim , clf , cla , close , colorbar , colormap , axes , ginput ,  …

     

    انتگرالگیری عددی

    trapz , quad , dblquad , triplequad , …

     

    حل معادله دیفرانسیل عددی

    ode (ode45 , ode23 , …) bvp4c , bvp5c , odeset , …

    به ادامه ی مطلب مراجعه کنید

     

    آخرین ویرایش: جمعه 1 مرداد 1395 06:39 ب.ظ
    ارسال دیدگاه
  • حسین اتحادی جمعه 1 مرداد 1395 06:28 ب.ظ نظرات ()

    با استفاده از دستور strcmp در متلب، می توانیم دو رشته (string) را با یکدیگر مقایسه کنیم و ببینیم که آیا دقیقا مثل هم هستند یا خیر. شیوه مقایسه کردن، به صورت حساس بودن به بزرگی و کوچکی حروف (case sensitive) نیز خواهد بود، یعنی برای مثل هم بودن، تنها معیار مثل هم بودن حروف آنها نیست، بلکه از نظر بزرگ بودن یا کوچک بودن حروف نیز باید مثل هم باشند.

    اگر دو رشته (string) دقیقا مثل هم باشند، دستور strcmp ، مقدار 1 را برمی گرداند، اما اگر دو رشته متفاوت باشند، دستور strcmp ، مقدار 0 را برمی گرداند.

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

    مثال

    clear all
    close all
    clc

    A = strcmp('Yes''No')
    B = strcmp('Yes''Yes')
    C = strcmp('YES''yes')

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

    نتیجه :


    A =

         0


    B =

         1


    C =

         0

    منبع : کلیدستان
    آخرین ویرایش: شنبه 30 مرداد 1395 06:27 ب.ظ
    ارسال دیدگاه
  • حسین اتحادی سه شنبه 15 تیر 1395 02:59 ق.ظ نظرات ()

    قبل از اینکه بخواهم نحوه ایجاد نمودارهای 2 بعدی رو به شما عزیزان بگم باید یادآوری کنم فرض من بر این هست که شما دوستان مباحث ابتدایی متلب مثل ایجاد بردارها و ماتریس ها و کار کردن با m فایل ها را بلدید. اما ان شاء الله در آینده من ابتدایی ترین مباحث رو هم خدمتتون ارائه خواهم کرد. اما فعلاً نه!

    فرض کنید که می خواهیم نمودار سینوس  را در فاصله بین صفر تا 2*pi رسم کنیم:

    t=0:0.01:2*pi;

    u=sin(t);

    گام متغیر t  را برابر با 0.01 قرار دادم تا وقتیکه نمودار سینوس کشیده میشه حالت شکسته نداشته باشه.

    دستور رسم نمودارهای دو بعدی در متلب دستور plot هستش:

    plot(t,u)

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

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

    grid on    یا    grid

    دستور grid on یا grid باعث شبکه بندی صفحه مختصات میشه.

    xlabel('t')

    ylabel('u')

    title('graph u vs t ')

    legend('sin')

    دستور xlabel باعث گذاشتن برچسب بر روی محور x ها میشه. بین دو علامت ' '  هرچی بنویسید در روی محور x ها نشون داده میشه.

    دستور ylabel باعث گذاشتن برچسب بر روی محور y ها، دستور title باعث گذاشتن عنوان بر روی نمودار و دستور legend باعث گذاشتن راهنما در گوشه نمودار میشه. بین دو علامت ' ' هرچی بنویسید همون نشون داده خواهد شد.

    فرض کنید که می خواهید در روی بر چسب محور x علامت ریاضی آلفا یا بتا یا هر حرف یونانی دیگه قرار داده بشه. برای این کار در بین دو علامت ' ' کلمه alpha یا beta را تایپ میکنید و قبلش علامت \ را می گذارید:

    xlabel('\alpha')

    title('\beta')

    حال فرض کنید که می خواهید اندیس بالا یا پایین در روی نوشته هاتون داشته باشید. اندیس پایین با علامت _ ایجاد میشه و اندیس بالا با علامت ^ ایجاد میشه:

    xlabel('x_i')

    legend('R^2')

    اما فرض کنید که می خواهید بر روی برچسب محور x (یا محور y یا در عنوان و یا در راهنما) عبارت R را بنویسید که در اندیس پایین اون عبارت index باشه. شاید فکر کنید باید به صورت زیر بنویسید:

    xlabel(R_index)

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

    legend('R^index')

    برای اینکه این دستور درست کار بکنه 2 راه وجود داره که راه اول کمی غیر منطقی به نظر میرسه:

    راه اول:

    xlabel(R_i_n_d_e_x)

    legend(R^i^n^d^e^x)

    این کار برای اندیسهایی که تعداد حروفشون کمه شاید به نظر غیر منطقی نیاد اما اگرکه کلمه اندیس بالا یا پایین 50 حرف باشه غیر منطقیه که بین 50 حرف از _ یا ^ استفاده کنیم. برای همین بهتره از راه دوم استفاده کنیم.

    راه دوم: در این راه عبارت اندیس را بین دو آکولاد قرار می دهیم:

    xlabel(R_{index})

    ylabel(R^{index})

    فرض کنید می خواهید در راهنمای نمودار خود عبارت آلفا به توان سیگما را نشان دهید:

    legend(\alpha^{\sigma})

    سایر علائم و حروف یونانی رو می تونید در قسمت help با جستجوی عبارت text properties در یک جدول کاملی پیدا کنید.

     

    اما متوجه شدید که نمودار وقتی کشیده شد با رنگ پیش فرض یعنی آبی کشیده شد. اگر که بخواهید رنگ نمودار را تغییر دهید باید در همان دستور plot این کار را انجام دهید:

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

    plot(t,u,' ')

    بین دو علامت ' ' هر کدام از حروف زیر را که بنویسید رنگ متناسب با حرف نوشته شده تغییر خواهد کرد:

    c : فیروزه ای

    m : بنفش

    b: آبی (که اگر نوشته نشود هم رنگ آبی پیش فرض می باشد)

    r: قرمز

    g: سبز

    k: سیاه

    w: سفید

    y: زرد

    برای مثال می خواهید رنگ نمودار قرمز شود:

    plot(t,u,'r')

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

    plot(t,u,'color',[r g b])

    به جای سه عدد r و g و b  باید عددی بین 0 و 1 وارد کنید. عدد مربوط به r معرف رنگ قرمز، عدد مربوط به g معرف رنگ سبز و عدد مربوط به b معرف رنگ آبی میباشد. مسلما اگر سه عدد را به صورت [0 0 1] قرار دهید رنگ به صورت قرمز خواهد شد و اگر هر سه را برابر با 1 قرار دهید مشکی و اگر هر سه را برابر با 0 قرار دهید سفید خواهد شد. پش با انتخاب سه عدد بین 0 و 1 میلیونها رنگ می توانید داشته باشید:

    plot(t,u,'color',[1 0.2 0.06])

    بار دیگر به دستور ابتدایی بر می گردییم. مشاهده کردید که وقتی نمودار را کشیدید با یک ضخامت پیش فرض نمودار برای شما کشیده شد. اگر که بخواهید ضخامت را هم عوض کنید باید از دستور LineWidth در دستور plot به صورت زیر استفاده کنید:

    plot(t,u,'LineWidth',a)

    یا

    plot(t,u,'g','LineWidth',a)

    یا

    plot(t,u,'color',[1 .03 .5],'LineWidth',a)

    منظور از a عددی است که ضخامت خط نمودار را  تعیین می کنه مثلا a=2:


    آخرین ویرایش: - -
    ارسال دیدگاه
  • حسین اتحادی سه شنبه 15 تیر 1395 02:58 ق.ظ نظرات ()

    کدهای متلب :


    clear all
    close all
    clc

    x = linspace(-2,2,20);
    y = 1./(x+(1-x).^2);
    p = polyfit(x,y,3);
    xx = linspace(-2,2,100);
    plot(x,y,'.',xx,polyval(p,xx),'-','MarkerSize',30,'LineWidth',2)

    نتیجه :

    مثال شماره 16

    منبع کدها :

    کتاب MATLAB Guide - D.J. Higham - second edition - صفحه 161 از فایل pdf کتاب

    آخرین ویرایش: - -
    ارسال دیدگاه
تعداد صفحات : 4 1 2 3 4