سلام دوستان چجوری می تونم یک معادله ی چند ضابطه ای رو در متلب بنویسم؟!
Printable View
سلام دوستان چجوری می تونم یک معادله ی چند ضابطه ای رو در متلب بنویسم؟!
سلام.نقل قول:
با یه سرچ ساده در اینترنت یافت شد:
F(X) := W1*F1(X) + W2*F2(X) + ... + WL*FL(X) , a
که از قبل بایستی F1 ، F2 و ... را تعریف کرده باشید. همچنین W i ها رو هم باید از قبل تعریف کرده باشید یا اینکه از ورودی بگیرین. علاوه بر اینها W i ها باید ضرایب نامنفی باشند.
موفق باشین.
90/9/27
ممنون از راهنمایی ولی متوجه نشدم:41:نقل قول:
نگاه کنید من توی m-file تابع زیر رو نوشتم
اما وقتی اجراش می کنم فقط شرط اول رو اجرا می کنه و حتی وقتی t بزرگتر از 20 هم می دم باز هم توی شرط اول قرار می ده ! چی کار باید کنم؟کد:
function teta=ref(t)
a=-4.36*10.^-5;
b=0.0013;
ap=4.36*10.^-5;
bp=-6.54*10.^-3;
cp=pi/10;
dp=(-3/2)*pi;
if 0<t<20
teta=a*t.^3+b*t.^2;
elseif 20<t<=40
teta=0.17453;
elseif 40<t<60
teta=ap*t^3+bp*t^2+cp*t+dp;
else
teta=0;
end
سلام.نقل قول:
برای خودم 2 تا سوال پیش اومد:
سوال اول اینکه شما متغیر t رو از ورودی میگیرید؟
سوال دوم هم اینه که تابع ref دقیقا چی کار میکنه؟
فکر نکنم مشکل کار از چیزی که میخوام بگم باشه ولی همونطور که قبلا اشاره کردم، ضرایب وزنی باید مثبت (یا به عبارت بهتر نامنفی) باشند. البته این رو بنده از روی منبعی که سوال قبلتون رو از روش جواب دادم میگم. بنابراین شما ضرایب a ، bp و dp رو مثبت بهش بدین و در فرمول تابع ضریب منفی به اونها بدین تا ببینین که آیا تاثیر میذاره یا نه.
موفق باشین.
90/9/27
متلب اینها رو به اینصورت نمیفهمه و لازم هم نیست. توابع چند ضابطه ای به فرم تابع شما رو میشه بر حسب چندین تابع پله واحد نوشت، و تابع پله واحد رو هم متلب با heaviside میشناسه.نقل قول:
آیا میتونید ببینید که چطور میشه تابع شما رو بر حسب چندین تابع پله واحد نوشت؟ تعریف این تابع به صورت زیر هست:
با سلام
دوستان عزیز اگر امکان داره کمی درباره انتشار فایلهای cdf برنامه متمتیکا روی وبلاگها توضیح بدین.
من میخوام بدونم که کاربران برای دیدن این فایلی که من درست کردم و میخوام روی وب قرار بدم باید برنامه متمتیکا رو داشته باشند یا همون فایل جاوااسکریپت 5-6 کیلوبایتی که خود برنامه آدرسش رو میده کافیه؟ ممنون میشم اگر راجع به این مقوله توضیح بدین.
لطفاً حذف شود.
امیدوارم سئوالم ریاد سخت نبوده باشه! چون دو سه روزه گذشته و کسی جوابی نداده.
؟؟؟؟ با بنده بودین؟نقل قول:
لطفاً حذف شود.
نه دوست عزیز، منظورم پست خودم بود. پست رو اشتباهی فرستاده بودم و ظاهراً توی این انجمن امکان پاک کردن پستها برای کاربران عادی وجود نداره.نقل قول:
در مورد سوالتون، من تخصصی در این زمینه ندارم، اما اینطور که از سرچ در گوگل دستگیرم شد، در حالت معمول، کاربران برای دیدن فایل شما به صورت داینامیک، لازم هست که CDF Player والفرام رو نصب شده، داشته باشند. این پلیر رایگانه، اما حجمش برای دانلود بالا هست. البته ظاهراً پلاگینی برای وبلاگهای وردپرس منتشر شده که بدون نیاز به این پلیر هم میشه فایل های CDF رو مشاهده کرد:
کد:http://playingwithmathematica.com/2011/07/21/embedding-cdf-files-into-wordpress/
با سلام وتشکر
لطفا مرا در حل این معادله و نوشتن آن با نرم افزار مطلب راهنمایی کنید که در زیر گذاشته ام
83dy/dx+23*√(5&y)+siny
d^2 y )/(dx^2 )=
سلام دوستان ، کمک خیلی خیلی خیلی فوری ..
استادمون گفته یه معادله موج (مربوط به درس ریاضی مهندسی ) تو متلب بنویسید و نمودار سه بعدیش رو پرینت کنید( بهمراه معادله ای که بکار بردین) برام بیارین 5نمره هم داره .. کمک کنید لطفا ، من الان موقع امتحانامه وقت ندارم خودم برم متلب یاد بگیرم ، اگه میشه یه نفر زحمت این کارو برام بکشه دعاتون میکنم...... اصلا مهم نیست از چه تابعی استفاده میکنید .. یک تابع دلخواه هر چی ساده تر بهتر
میتونی ازدستور
dsolve استفاده کنی.برای جزئیات بیشتر میتونی باتایپ dsolve در help نرم افزار تنیجه بگیری
سلام من تازه کار و بپذیرید
یه سوال؟
من یه ماتریس سختی تعریف کردم بصورت سمبولیک
[a+2,b-1;c,d]= k
حالا می خوام به ازاء مثلا a=2 اونو برام حل کنه یعنی جوابش بشه:
[b-1;c,d, چهار ] هر کاری کردم 4 عددی سر جاش تو این پست نوشته بشه نشد
کسی می تونه کمکم کنه
ممنون
با سلام .نقل قول:
این رو ببینید :
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
من که دقیقا نفهیمدم شما چی نوشتید . ولی اگه منظورتون این هست که یه ماتریس تعریف کردید که داخلش از متغیر syms استفاده کردید و حالا می خواید با مقداردهی بهتون جوابش رو بده میتونید این کار رو بکنید در واقع از دستور eval استفاده بکنید .
[PHP]>> syms a b c d
>> k=[a+2 , b-1 ; c , d ]
k =
[ a + 2, b - 1]
[ c, d]
>> a=2;
>> h=eval(k)
h =
[ 4, b - 1]
[ c, d][/PHP]
سلام
من يه سوال دارم اگه كسى از دوستان لطف كنه يه راهنمايى كنه ممنون ميشم
يه دايره داريم كه از سه نقطه A(2,1) , B(7.6), C(5,10) , عبور ميكنه اگه مركز دايره رو S بگيريم , مختصات S و شعاع رو بايد پيدا كنيم , يه راهش كه توسط وصل كردن دو نقطه به همديگه به هم و پيدا كردن نقطه وسط روى هر خط و معادله خط عمود بر اون و بقيه ماجراست, ولى من ميخواهم ببينم به صورت جبرى ميشه اين رو حل كرد يعنى با سه تا مجهول ؟
(x-2)^2+(y-1)^2=r^2الان چجورى ميشه معادله رو حل كرد ( فكر كنم بايد اول رو از دوم و اول رو از سوم كم كنيم تا r حذف بشه ولى خوب مطمئن نيستم )
(x-7)^2+(y-6)^2=r2
(x-5)^2+(y-10)^2=r^2
بله درست فرمودین باید سه معادله رو برابر با هم قرار دهیم و مرکز داریه رو پیدا کنیمنقل قول:
من اینجا معادله ی اول رو با دوم و سوم برابر کردم شما میتونید مثلا معادله ی دوم رو یکبار با معادله ی اول و یکبار با معادله ی سوم برابر قرار بدین ولی کلا فرقی نمیکنه
نقل قول:با سلام .نقل قول:
بله اساتید که پاسخ دادند . :20: حالا شما فرض کنید میخواستید همون فرم اولیه این معادله با متلب حل کنید . :31: ( یعنی ادم بیکار باشه بخواد این جوری حل کنه !!! :31: ) منظورم این معادله هست که پس از باز شدن رابطه شما به دست اومده :
==================================================
لینک های کمکی :
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
در واقع اول تابع اش رو اونجوری که توی لینک گفته نوشتم :
[PHP]function [ output ] = myfun( m )
output=[
- 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]
بعد هم توی پنجره کامند این رو وارد می کنیم ( البته اون حدس اولیه رو همین جوری الکی دادم )
[PHP]>> m=fsolve(@myfun,[1 2 3])[/PHP]این هم پاسخ :
[PHP]m =
2.0000 6.0000 5.0000[/PHP]
عجب اتاق باحالى اينجا بوده من ازش بيخبر بودم لازم شد حتما matlab رو دانلود كنم ,ولى يه سوال دارم من همين رو از روش ى كه بالا گفتم (يعنى از طريق پيدا كردن نقطه وسط و خط عمومد حساب كردم ولى جواب مثل اين نيست ( :13:) يعنى من اشتباه كردم
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
خب اشتباه خودم رو متوجه شدم :31: در سطر ششم بايد مينوشتم
y=1/2x+5
كه بعد از مساوى قرار دادن دو معدله با همديگه جواب درست كه همون x=2 به دست مياد و y=6
دوستان يه سوال درباره توابع فرض كنيم كه f(x)=x-2/x+3 وm(x)=1/sqrtx^(2)-5x+6 الان اگه از ما بخواند كه دومين f(x) و g(x) و (fog) رو پيدا كنيم بايد چيكار بكنيم ؟من خودم كارى كه كردم براى اولى نوشتم كه
[LEFT]
X+2≠0⟶x≠-2 از اشتراكش با دومين صورت تقسيم , دومين ميشه R-{-2}
واسه معادله دوم هم داريم (چون جذر هست و در پايين كسر هم قرار داره از علامت بزرگتر استفاده ميكنيم < )
x^2-5x+6>0 →(X-3)(X-2)>0 →
كه ميشه
x-3>0 →x>3
x-2>0 →x>2
يعنى دومين ميشه R -<2,3
براى آخرى هم ميشه
F(g(x))=1/sqrt(x^2-5x+6) -2 / 1/ sqrt(x^2-5x+6) +3→1-2sqrt(x^2-5x+6) / 1+3 sqrt (x^2-5x+6) so
دومين اين مساله رو كسى ميتونه به من كمك كنه پيداش كنم ؟
این پست حذف شود .
نقل قول:
با سلام .
همون طور که توی نقل قول بعدی اشاره شده . این چیزی که برای شرط if نوشتید رو متلب نمی فهمه . اون شرطه if ها اشتباه هست . این نوع نوشتن مال حالت ریاضی هست شما می تونید توی این حالت از عملگر های منطقی مثلا این جا && استفاده کنید . یعنی این جوری باید بنویسید :
[PHP]function teta=ref(t)
a=-4.36*10.^-5;
b=0.0013;
ap=4.36*10.^-5;
bp=-6.54*10.^-3;
cp=pi/10;
dp=(-3/2)*pi;
if ( t>0 && t<20 )
teta=a*t.^3+b*t.^2;
elseif ( t>20 && t<=40 )
teta=0.17453;
elseif ( t>40 && t<60 )
teta=ap*t^3+bp*t^2+cp*t+dp;
else
teta=0;
end
end[/PHP]
با سلام .نقل قول:
مثلا فرض کنیم تابع چند ضابطه ای ایشون این جوری باشه :
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]ولی با اون تابع باید چه فرمی نوشت ؟
خوب حالا با خود پله که بخوایم بنویسیم این جوری میشه ؟ درسته ؟
- بله، درسته.
- کدوم تابع، heaviside؟ خب هر جا (u(x دارید به جاش بذارید (heaviside(x.
با سلام .
ولی خوب این فرم نوشتن یه مشکلی رو توی نقاط مرزی ایجاد میکنه و این که جواب درستی نمی ده .
مثلا این تابع ساده:
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
=============================================
این هم برنامه :
[PHP]syms x
f1=(x^2)*(heaviside(x)-heaviside(x-10)) ;
f2=(2*x)*(heaviside(x-10)-heaviside(x-20));
f3=(x)*(heaviside(x-20)-heaviside(x-30));
f=f1+f2+f3 ;
A1=subs(f,x,3) % or write: x=3 ; eval(f)
A2=subs(f,x,11)
A3=subs(f,x,26)
%**********************
A4=subs(f,x,10)
A5=subs(f,x,20)
A6=subs(f,x,30)
%**********************
[/PHP]=============================================
این هم بعد از اجرا :
[PHP]>> heaviside_z
A1 =
9
A2 =
22
A3 =
26
A4 =
60
A5 =
30
A6 =
15[/PHP]
الان اون A4 تا A5 اشتباه شده .
مقادیر نقاط مرزی بستگی به این دارد که مقدار تابع هویساید در صفر (H(0 چه تعریف شده باشد. تعاریف متفاوتی رایج است، هرچند که مقدار (H(0 چندان مهم نیست، چون در سیگنالهای پیوسته معمولاً تک نقطه ها اهمیت ندارند. بهرحال، اگر (H(0 برابر 1/2 تعریف شود، مقدار در نقاط مرزی برابر میانگین حد چپ و راست خواهد بود. اگر 1 تعریف شود، پیوستگی از راست را داریم و اگر 0 تعریف شود، پیوستگی از چپ.
ظاهراً در متلب از تعریف 1/2 استفاده شده است. اگر میخواهید تابع هویسایدی با مثلاً H(0)=0 داشته باشید، دستور زیر را امتحان کنید. البته مطمئن نیستم در متلب جواب دهد.
کد:u=heaviside(x)*(1-2*heaviside(-x))
سلام دوستان
جایی هست که مسائل ریاضی 1 توماس رو با maple حل کرده باشه
حالا همش یا تعدادی از مسائل رو
ممنون
سلام. تو مطلب چه جوری میشه علائم یونانی و غیره.. به عنوان متغیر وارد کرد.جایی داره برای وارد کردن علائم به برنامه؟
تو مطلب چه جوری میشه علائم یونانی و غیره.. به عنوان متغیر وارد کرد.جایی داره برای وارد کردن علائم به برنامه؟
اگه نداره حداقل بگید دنبال نگردم.مرسی
گشتیم چیزی پیدا نشد اگه بلدید توضیح بدید.میخوام از خود حروف یونانی استفاده کنم به عنوان متغیر مثل کاریکه تو برنامه میپل میشه .از خود علامت به جای اینکه x= بهش مقدار بدم.
نمیخوام این شکلی بشه.از خود حرف استفاده کنم
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
تو یه برنامه چند تا ماتریس نوشتم که مقادیر عددی ماتریس تو حلقه حساب میشه که از ضرب و تقسیم چندتا عدده.حالا مشکلی که دارم اینه وقتی این ماتریسارو تو هم ضرب میکنم انتظار دارم بعضی از درایه هاش صفر بشه اما اینجوری میشه:
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
حالا اگه مقادیر ماتریسارو دستی تا 4 رقم اعشار خودم وارد کنم بعد ضرب کنم اینجوری میشه:
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
چیجوری این مشکل حل میشه؟تو میپل همین ماتریسارو حساب میکنم درست میده تو متلب چیکار باید کرد؟مرسی
من حالت نمایش تعریف کرده بودم format short g یا format short e که برنامه خروجی اونجوری میداد.نقل قول:
گذاشتم رو format short یه جور دیگه نشون میده اما درست.
سلام دوستان.
کسی می دونه من معادله ی cole - cole همون cole - cole equation رو باید به چه صورتی بنویسم؟
سلام
برنامه خفاش در مطلب چه کاری انجام میده؟ من برنامه اش رو دارم ولی نمیدونم چه کاری انجام میده؟
خواهشا زود کمکم کنید ممنون
سلام.
میخواستم دترمینان یه ماتریس 200*200 سمبولیک رو به وسیله متلب محاسبه کنم.ولی زمان محاسبه خیلی بالاست.
آیا نرم افزاری وجود داره که بتونم در زمان کمتر این محاسبه رو انجام بدم.یا روشی توی متلب وجود داره که این زمان کمتر بشه؟
ممنون
فکر نمی کنم همه ی 40,000 درایه ی ماتریس تان پر باشند.نقل قول:
اگر ماتریس 20در20 معمولی تان A نام داشته باشد:S=sparse(A)l و سپس دترمینان را حساب کنید.
اگر هم ماتریس را هنوز وارد نکرده اید،از دستور spalloc استفاده کنید.
S = spalloc(m,n,nzmax)l
که در مورد شما m و n هر دو 20 هستند و سومین آرگومان هم تعداد کل درایه های غیر صفر می باشد.این درایه ها را باید جدا جدا وارد کنید. مثلاً S(12,3)=6
سلام بچه ها در این لینک اموزش حرفه ای نرم افزار متلب داده شده،خیلی مفیده. [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
salam.man bayad barnameye 1 tabe'e darunyab ba 5 ta motaghayer ba narmafzare matlab benevisam.kasi mitune komakam kone?(marbut b darse analiz adadi mishe)
استفاده از cftool در متلب می تونه کمک بکنه
اطلاعات بیشتر رو تو این سایت خود متلب می تونی پیدا کنی: [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
سلام
یه سوال داشتم
برنامه ای بنویسید که درونیابی هرمیت رو برای n نقطه که تا مشتقmام اون نقطه ها داده شده رو حساب کنه
چطور تو متمتیکا یا میپل یا متلب سری فوریه رو حساب کنم.
منظورم اینه که ضرایب رو بهم بده