·▪•تاپیک بیان و رسیدگی به سوالات ریاضی و آمار●•▪·

skyzare

عضو جدید
به دست آوردن کرل بردار

به دست آوردن کرل بردار

با سلام .

میخوام کرل یه بردار رو با متلب به دست بیارم . دستورش هم curl هست ولی نمیدونم باید ارگومان های ورودی اش رو چه جوری بدم تا مثلا بتونه این مثال زیر رو برام حل کنه :


البته این جا هم گفته . ولی من امتحان کردم بهم خطا میداد :

http://au.answers.yahoo.com/question/index?qid=20100124072728AA7ayTM

این جا هم هست ولی خوب ...

http://www.mathworks.com/help/toolbox/symbolic/curl.html


*****************
یکشنبه

10 / 2 / 91
 

(هادی)

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

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

راستش نمیدونم چه کتابی بهتره. پس روی کتاب نظر نمیدم
 

(هادی)

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

meytim

متخصص محاسبات عددی و MATLAB
کاربر ممتاز
اگر
ـ دستور رو درست به کار بردید،
ـ متلب شما جعبه ابزار محاسبات نمادین داره،
ـ و سیستم شما هم با متلب نصب شده سازگار هست

در این صورت در اون ویرایشی از متلب که شما دارید استفاده می کنید، تابع مورد نظر برای ورودیهای با کلاس نمادین وجود نداره. در این صورت با توجه به تعریف پیچش، می تونید یک تابع بنویسید که این کار رو انجام بده. مثل اینی که من نوشتم:
کد:
function delXu=mmcurl(u,x)
% Curl of vector field
% by: Mehdi Mosafer
% http://mmnrecipes.blogpa.ir
delXu =[diff(u(3),x(2))-diff(u(2),x(3))
        diff(u(1),x(3))-diff(u(3),x(1))
        diff(u(2),x(1))-diff(u(1),x(2))];




نمونه استفاده از این تابع:
کد:
syms x y z
u=[x*y*z, -2*x^2*y*z, 2*y*z^2]
delXu=mmcurl(u, [x, y, z])

کد:
u =
 
[      x*y*z, -2*x^2*y*z,    2*y*z^2]
 
 
 
delXu =
 
 2*z^2+2*x^2*y
           x*y
  -4*x*y*z-x*z
 

parnian393

عضو جدید
یک سوال ؟

یک سوال ؟

تابع f و تابع g را در نظر بگیرید که حداقل یکی از انها در x=0 حد نداشته باشند .اما تقسیم این دو تابع در x=0 دارای حد باشند .
کسی می تونه مثالی برای این دو بزنه . با تشکر
 

nice_Alice

مدیر بازنشسته
کاربر ممتاز
تابع f و تابع g را در نظر بگیرید که حداقل یکی از انها در x=0 حد نداشته باشند .اما تقسیم این دو تابع در x=0 دارای حد باشند .
کسی می تونه مثالی برای این دو بزنه . با تشکر
قضیه: هرگاه تابعgدریک همسایگی عددaکراندارباشد و
باشد آنگاه :


مثال :



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

skyzare

عضو جدید
بررسی حل توابع غیر خطی در متلب

بررسی حل توابع غیر خطی در متلب

با سلام .

من میخوام این تابع غیر خطی زیر رو داخل متلب حل کنم .





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


حل دستگاه معادلات خطی و غیرخطی در متلب


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



PHP:
function [ output ] = myfun( m )

out=[
    
    - m(3)^2 + m(1)^2 - 4*m(1) + m(2)^2 - 2*m(2) + 5 
    
    
    - m(3)^2 + m(1)^2 - 14*m(1) + m(2)^2 - 12*m(2) + 85
     
     
    - m(3)^2 + m(1)^2 - 10*m(1) + m(2)^2 - 20*m(2) + 125 
       
     ] 
end


بعد هم توی پنجره کامند این رو وارد کردم ( البته اون حدس اولیه رو همین جوری الکی دادم )



PHP:
>> m=fsolve(@myfun,[1 2 3])


ولی خوب بهم خطا میده . چی کار کنم که بتونم این معادله رو حل کنم ؟؟
 

meytim

متخصص محاسبات عددی و MATLAB
کاربر ممتاز
با سلام .

من میخوام این تابع غیر خطی زیر رو داخل متلب حل کنم .





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


حل دستگاه معادلات خطی و غیرخطی در متلب


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



PHP:
function [ output ] = myfun( m )

out=[
    
    - m(3)^2 + m(1)^2 - 4*m(1) + m(2)^2 - 2*m(2) + 5 
    
    
    - m(3)^2 + m(1)^2 - 14*m(1) + m(2)^2 - 12*m(2) + 85
     
     
    - m(3)^2 + m(1)^2 - 10*m(1) + m(2)^2 - 20*m(2) + 125 
       
     ] 
end


بعد هم توی پنجره کامند این رو وارد کردم ( البته اون حدس اولیه رو همین جوری الکی دادم )



PHP:
>> m=fsolve(@myfun,[1 2 3])


ولی خوب بهم خطا میده . چی کار کنم که بتونم این معادله رو حل کنم ؟؟

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

hts1369

کاربر فعال مهندسی برق ,
کاربر ممتاز
بیا یه مثاله ساده

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

skyzare

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

با سلام .

با تشکر از پاسخ شما .

اره متوجه شدم کجا اشتباه کردم :redface: اون out باید بشه output ...

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

PHP:
m =

    2.0000    6.0000    5.0000

ولی یه سوال ... این حدس اولیه رو نمیشه متلب خودش بده ؟

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



بی نهایت سپاس گذار
 

meytim

متخصص محاسبات عددی و MATLAB
کاربر ممتاز
با سلام .

با تشکر از پاسخ شما .

اره متوجه شدم کجا اشتباه کردم :redface: اون out باید بشه output ...

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

PHP:
m =

    2.0000    6.0000    5.0000

ولی یه سوال ... این حدس اولیه رو نمیشه متلب خودش بده ؟
در حالت کلی نه نمیشه. اما برای مسائل خاص میشه براش برنامه نوشت.

بعد از کجا مطمئن بشیم جوابی که متلب داده قابل قبول هست ؟ اخه من یه چند تا حدس الکی دیگه هم دادم باز هم بهم جواب داد ( من اصلا نمیدونم این حدس اولیه رو باید بر چه مبنایی بدم ) ولی خوب جواب ها تا حدودی به هم نزدیک بودند .
اگر از fsolve خروجی سوم بگیرید، متوجه میشید (شما فقط خروجی اولش رو که جواب دستگاه معادله هست گرفتید). راهنماش رو ببینید، توضیح داده.
دلیل اینکه حدسهای الکی شما به جواب درست همگرا شدن، خوشرفتار بودن دستگاه معادلاتیه که حل کردید. اون رویه رو برای دستگاه معادلات یک شبکه لوله کشی آب، که با تابع زیر بیان شده، تست کنید ببینید باز هم به جواب می رسید (Q
ها بیانگر دبی حجمی هستند و باید اعداد حقیقی و مثبت در بیان).

بی نهایت سپاس گذار
کد:
[FONT=Courier New][SIZE=2][COLOR=#0000ff][FONT=Courier New][SIZE=2][COLOR=#0000ff][FONT=Courier New][SIZE=2][COLOR=#0000ff]function[/COLOR][/SIZE][/FONT][/COLOR][/SIZE][/FONT][/COLOR][/SIZE][/FONT][FONT=Courier New][SIZE=2][FONT=Courier New][SIZE=2][COLOR=#000000] res=PipeNetEq(Q)[/COLOR]
res=zeros(6,1);
res(1)=Q(1)+Q(2)-0.006327;
res(2)=-Q(1)+Q(4)+Q(5);
res(3)=-Q(3)-Q(4)+Q(6)+0.001582;
res(4)=-Q(2)+Q(3)+0.001582;
res(5)=0.02414*Q(1)^1.90+0.07011*Q(4)^1.88-0.1052*Q(3)^1.88-0.06840*Q(2)^1.92;
res(6)=0.01620*Q(5)^1.89-0.09887*Q(6)^1.88-0.07011*Q(4)^1.88;
[/SIZE][/FONT][/SIZE][/FONT]
 

skyzare

عضو جدید
با سلام .

با تشکر از پاسخ شما .

من حالا امتحان کردم ولی گویا به هیچ وجه با حدس الکی نمیشه جواب رو پیدا کرد چون جواب هایی که به دست میاد با هم مختلف هست . مثلا یه چند تا نمونه اش این شد :


PHP:
>> d=fsolve(@PipeNetEq , [.01 .01 .01 .01 .01 .01 ] )
 
d =
 
    0.0016    0.0047    0.0031    0.0032   -0.0016    0.0047
 
 
 
>> d=fsolve(@PipeNetEq , [.03 .03 .03 .03 .03 .03 ] )
 
d =
 
   -0.0037    0.0100    0.0084    0.0077   -0.0114    0.0145
 
 
>> d=fsolve(@PipeNetEq , [.002 0 .0001 .003 .0001 .0002 ] )
 
d =
 
    0.0026    0.0037    0.0021    0.0012    0.0014    0.0018


الان باید این رو چه جوری حل کرد ؟ اون حدس اولیه رو چه جوری باید داد ؟

با این حساب فکر کنم دستگاه بد حالت ( illcondition ) باشه . حالا یه سوال برام پبش اومد این عدد حالت برای دستگاه های غیر خطی هم تعریف میشه ؟؟؟ رابطه اش با مال دستگاه خطی یکی هست ؟ این مال خطی :




بعد توی متلب از همون دستور cond برای به دست اوردن دستگاه معادلات غیر خطی استفاده میشه ؟ ببخشید یه چیز دیگه این عدد حالتی که از نرم های مختلف به دست میاد فرقی با هم داره ؟ اخه توی متلب به ازای نرم های مختلف دیدم

اگه این هست این ماتریس ضرایب را چه جوری باید بدیم ؟ منظورم مثلا اگه یکی از متغیر ها هم ضریب داشت هم توان ....همون که ضریب رو بنویسیم کافی هست ؟
 

bigbomber

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

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

سلام
بچه ها از استاد سوال کردم گفته که در روش ریشه یابی به روش تکرار ساده ( fixed point method ) برای پیدا کردن G(x ) یک فرمول وجود دارد. اگر لطف کنید این فرمول را به من بدید بسیار سپاس گزارم هستم. البته منظورم شرط مناسب بودن g(x) نیست. خود فرمول را برای برنامه نویسی لازم دارم.
درضمن استاد گفته که این فرمول در کتاب مدرسان شریف-محاسبات عددی-فصل تقریبی برای ریشه ی معادلات غیر خطی موجود است.

با سپاس
 

ahmad2570

عضو جدید
سلام بر دوستان منیک راننده تانکر سوخت هستم میخام حجم تقریبی تانکرم رو که به شکل بیضی هست بدست بیارم لطفن کمکم کنید طول تانکرم 11.5 متره و یک طرفش از بیضی2.15
سانتیمتر متر و طرف دیگه 2.35 هست اگر لطف کنید فرمولشو به من بدید خیلی ممنون میشم متشکر
 

nice_Alice

مدیر بازنشسته
کاربر ممتاز
سلام بر دوستان منیک راننده تانکر سوخت هستم میخام حجم تقریبی تانکرم رو که به شکل بیضی هست بدست بیارم لطفن کمکم کنید طول تانکرم 11.5 متره و یک طرفش از بیضی2.15
سانتیمتر متر و طرف دیگه 2.35 هست اگر لطف کنید فرمولشو به من بدید خیلی ممنون میشم متشکر
:surprised: این چجور بیضی میشه؟!
بیضی یه قطراصلی داره(قطر بزرگتر) ویه قطر فرعی( قطر کوچکتر) که با کمک این دو میشه مساحتشو بدست آورد!



بیضی یه شکل هندسی مسطح بنابراین حجم نداره!

شاید منظورتون اینه که تانکر ماشینتون بیضی گون هست!
شکل کلی بیضی گون به این صورته:



و معادله بیضی گون به مرکز مبدا دستگاه مختصات هست:



و داریم حجم بیضی گون به معادله فوق برابراست با:
 

nice_Alice

مدیر بازنشسته
کاربر ممتاز
من کتاب مدرسان شریف رو نگاه کردم؛ فرمول کلی برای بدست آوردن ضابطه
ارائه نداده !

کلا بدست آوردن
مناسب بستگی داره به اینکه ضابطه
چی باشه بنابراین فکرنمیکنم بشه فرمول کلی ارائه داد!
 

ahmad2570

عضو جدید
متشکرم تانکر من یک استوانه است که طولش 11.5 متر و به جای دایره بیضی شکل به ابعادی که گفتمه لطفن راهنماییم کنید متشکرم
 

ahmad2570

عضو جدید
اگر شما طریقه پیدا کردن مساحت بیضی
رو بگید مشکلم حل میشهa=115 cm و b=107.5 cm
 

nice_Alice

مدیر بازنشسته
کاربر ممتاز
اگر شما طریقه پیدا کردن مساحت بیضی
رو بگید مشکلم حل میشهa=115 cm و b=107.5 cm



خب مساحت بیضی طبق شکل فوق:
اما تانکر شما یه استوانه است با مقطع بیضوی بنابراین حجمش میشه: مساحت بیضی(قاعده تانکر) * ارتفاع تانکر.
 

ahmad2570

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

(هادی)

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

bigbomber

کاربر فعال
من کتاب مدرسان شریف رو نگاه کردم؛ فرمول کلی برای بدست آوردن ضابطه
ارائه نداده !

کلا بدست آوردن
مناسب بستگی داره به اینکه ضابطه
چی باشه بنابراین فکرنمیکنم بشه فرمول کلی ارائه داد!

سلام دوست خوبم. ممنون از لطف شما. این که گفتم فرمولی وجود داره جوابی بود که استاد به من داده. به نظر شما چگونه می شود برنامه ای نوشت که به روش تکرار ساده، ریشه ی معادله ی f(x)=0 را پیدا کند؟ باید برای تمام معادله ها هم جوا بده.
 

bigbomber

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

تحلیل یک برنامه به زبان متلب. مربوط به ریشه یابی

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

مشاهده پیوست program.txt
 

(هادی)

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

meytim

متخصص محاسبات عددی و MATLAB
کاربر ممتاز
با سلام .

با تشکر از پاسخ شما .

من حالا امتحان کردم ولی گویا به هیچ وجه با حدس الکی نمیشه جواب رو پیدا کرد چون جواب هایی که به دست میاد با هم مختلف هست . مثلا یه چند تا نمونه اش این شد :


PHP:
>> d=fsolve(@PipeNetEq , [.01 .01 .01 .01 .01 .01 ] )
 
d =
 
    0.0016    0.0047    0.0031    0.0032   -0.0016    0.0047
 
 
 
>> d=fsolve(@PipeNetEq , [.03 .03 .03 .03 .03 .03 ] )
 
d =
 
   -0.0037    0.0100    0.0084    0.0077   -0.0114    0.0145
 
 
>> d=fsolve(@PipeNetEq , [.002 0 .0001 .003 .0001 .0002 ] )
 
d =
 
    0.0026    0.0037    0.0021    0.0012    0.0014    0.0018


الان باید این رو چه جوری حل کرد ؟ اون حدس اولیه رو چه جوری باید داد ؟
با توجه به فیزیک مسأله

با این حساب فکر کنم دستگاه بد حالت ( illcondition ) باشه . حالا یه سوال برام پبش اومد این عدد حالت برای دستگاه های غیر خطی هم تعریف میشه ؟؟؟ رابطه اش با مال دستگاه خطی یکی هست ؟ این مال خطی :



ـ اگر بدحالت (یا ناجور) باشه، متلب پیغام میده.
ـ یک دستگاه معادلات ممکنه چندین جواب داشته باشه، و شما هر بار یکی از اونها رو به دست بیارید (این که چطور چک کنیم که روش به جواب رسیده یا نه رو تو پست 4 گفتم).
ـ جوابها ممکنه از نظر ریاضی قابل قبول باشند اما از نظر فیزیکی قابل قبول نباشند.
ـ من تا حالا در مورد عدد شرط برای دستگاه معادلات ناخطی چیزی نشنیده ام. اما یک چیز روشنه؛ در هر مرحله از روشهای چرخان، یک دستگاه معادلات خطی حل میشه که ماتریس ضرایب اون دستگاه معادلات خطی یک عدد شرط داره.


بعد توی متلب از همون دستور cond برای به دست اوردن دستگاه معادلات غیر خطی استفاده میشه ؟ ببخشید یه چیز دیگه این عدد حالتی که از نرم های مختلف به دست میاد فرقی با هم داره ؟ اخه توی متلب به ازای نرم های مختلف دیدم
ـ بله 4 نوعه که با هم فرق دارن.
ـ معمولاً از همون نرم اقلیدسی استفاده میشه که نسبت بزرگترین اندازه تکین به کوچکترین اندازه تکینه (احتمالاً با این تعریفی که شما گذاشتید معادله).
اگه این هست این ماتریس ضرایب را چه جوری باید بدیم ؟ منظورم مثلا اگه یکی از متغیر ها هم ضریب داشت هم توان ....همون که ضریب رو بنویسیم کافی هست ؟

در بالا با رنگ آبی جواب دادم.
 

nice_Alice

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


توجه! : روش نیوتن حالت خاصی از روش تکرارساده است که درآن
در نظر گرفته شده است!
 

alimabodi

عضو جدید
سلام دوستان
براي درس رياضيات مهندسي تو كنكور ارشد چه كتابي رو پيشنهاد ميكنيد؟؟؟؟
 
بالا