آموزش Maple

مدیر انجمن: parse

user8604

عضویت : چهارشنبه ۱۳۸۵/۱۲/۹ - ۱۷:۳۱


پست: 3288

سپاس: 877

Re: آموزش Maple

پست توسط user8604 »

3.3
حدگیری:
فرم کلی:
(limit(f,x=x0,dir)
f تابعیست که میخواید حدش رو بگیرید. x0 اون نقطه ایست که میخواید حدش رو بگیرید. dir هم جهت حد گیریه. اگر از سمت راست بخواید حد بگیرید مینویسید right !
-اگر تابعتون چند متغییره باشه.مثلا تابعی از x , y باشه حد به فرم زیره:
limit(f,{x=x0,y=y0})
اگر بخوایم در بینهایت حد بگیریم مینویسیم: infinity
مثل حد زیر:
limit(x+1/y, {x = 0, y = infinity})
نکته:
اگر توی تابع های چند متغییره تابع یکم سخت باشه نمیتونه حدش رو بگیره. و خود دستور رو چاپ میکنه.
dir هم فقط واسه یک متغییره است.
------------------------
3.4 . مجموع
اول تابع. بعد حدود جمع بندی رو میزاریم.
sum(x*cos(x), x = 1 .. 5)
که جواب رو به صورت زیر نشون میده
cos(1)+2*cos(2)+3*cos(3)+4*cos(4)+5*cos(5)
دستور واجبی نیست . چون با حلقه هم میشه به دستش آورد. ولی باعث تمیز شدن و کوتاه شدن سورس میشه ! واسه همون واجبه.
اینفعه چون آسون بود خیلی تمرین نداری.
اگر مشکلی داشتی تا فردا صبح قبل از باب اسفنجی بپرس.

نمایه کاربر
Vanda

عضویت : پنج‌شنبه ۱۳۸۷/۴/۱۳ - ۱۸:۴۷


پست: 321

سپاس: 71

Re: آموزش Maple

پست توسط Vanda »

سلام smile072
اول اينكه يه پرانتز زيادي گذاشتيد استاد! smile039 smile042
edwardfurlong نوشته شده:(limit(f,x=x0,dir)
دوم:برا تابع دومتغيره xyچرا وقتي ميخام حد تو نقطه مثلا x= 1 و y=2 حساب كنم خود تابع يني xy روتونتيجه مينويسه مگه تابعش پيچيدس يا...؟ smile042
سومم اينكه دستو sum فقط برا اعداد طبيعيه يا واسه اعدادصحيح يا .....؟
هووه....چهارمم اينكه خسته نباشيد! smile038

نمایه کاربر
Vanda

عضویت : پنج‌شنبه ۱۳۸۷/۴/۱۳ - ۱۸:۴۷


پست: 321

سپاس: 71

Re: آموزش Maple

پست توسط Vanda »

Vanda نوشته شده:دستو sum فقط برا اعداد طبيعيه يا واسه اعدادصحيح يا .....؟
اوكي smile020 ...الان كه امتحان كردم ديدم واسه اعداد حسابيه0و1و2و..... كلا منفي هم كه بنويسم حساب نميكنه..

user8604

عضویت : چهارشنبه ۱۳۸۵/۱۲/۹ - ۱۷:۳۱


پست: 3288

سپاس: 877

Re: آموزش Maple

پست توسط user8604 »

Vanda نوشته شده:اول اينكه يه پرانتز زيادي گذاشتيد استاد! smile039 smile042
پیش میاد دیگه!
Vanda نوشته شده:دوم:برا تابع دومتغيره xyچرا وقتي ميخام حد تو نقطه مثلا x= 1 و y=2 حساب كنم خود تابع يني xy روتونتيجه مينويسه مگه تابعش پيچيدس يا...؟ smile042
اشکالی که خیلی ها بهش برمیخورن! شما به چه حقی x*y رو نوشتی xy?!!
xy یعنی یک متغیر جدید. ضرب رو همیشه بین متغییر ها باید گذاشت. حتی بین پرانتزها هم باید ضرب گزاشت . مثلا :
(x+y)*(x-y)
Vanda نوشته شده:سومم اينكه دستو sum فقط برا اعداد طبيعيه يا واسه اعدادصحيح يا .....؟
اعداد صحیح. منفی هم میتونه باشه. نیازی نیست اعداد دیگه ای رو پشتیبانی کنه. چون میشه رابطه رو طوری تغییر متغیر داد که به مقصود برسیم! بعدا میرسیم بهش!

نمایه کاربر
Vanda

عضویت : پنج‌شنبه ۱۳۸۷/۴/۱۳ - ۱۸:۴۷


پست: 321

سپاس: 71

Re: آموزش Maple

پست توسط Vanda »

edwardfurlong نوشته شده:اشکالی که خیلی ها بهش برمیخورن! شما به چه حقی x*y رو نوشتی xy?!!
smile039 درست شد!آخه تو Documentش * نميخاد smile022 !اينطوري ك صفحه ستاره بارون ميشه!خيلي شلوغ ميشه...
خب بالاخره
edwardfurlong نوشته شده:پیش میاد دیگه!
edwardfurlong نوشته شده:عداد صحیح. منفی هم میتونه باشه.
eee.....آره حواسم نبود منفيم ميگيره چون يه تابعي نوشته بودم كه برا اون مقداراي منفيش صفر ميشدن! smile034
smile038

نمایه کاربر
Vanda

عضویت : پنج‌شنبه ۱۳۸۷/۴/۱۳ - ۱۸:۴۷


پست: 321

سپاس: 71

Re: آموزش Maple

پست توسط Vanda »

من تااز فردابه مدت يه هفته اينترنت ندارم smile054 smile054 فكرشم نميشه كرد smile054 smile054 smile049 smile049
اگه ميشه تا آخر امشب يه چندتا درس ومبحث ديگه بذاريد تا بيكار نباشم واز كلاس عقب نمونم smile039 smile015 smile072
تمريناشم بعدا ميذارم smile007

نمایه کاربر
termeh

عضویت : چهارشنبه ۱۳۸۷/۵/۹ - ۲۲:۳۴


پست: 448

سپاس: 3

Re: آموزش Maple

پست توسط termeh »

سلام
maple مفاهیم queuing و توابعش رو داره ؟
میشه کد matlab توی maple استفاده کرد ؟
میتونه توزیع های ریاضی رو بهم تبدیل کنه؟
نسل من و تو نسلی بود که یواشکی بوسید ، نوشید ، خندید ، حرف زد ، فکر کرد ، اعتراض کرد ، گریه کرد ، آرزو کرد ، دعا کرد ، درد و دل کرد ، انتخاب کرد ، عاشق شد


به سلامتی " یــواشــکــی " که اگه نبود ، نسل من و تو منقرض میشد

user8604

عضویت : چهارشنبه ۱۳۸۵/۱۲/۹ - ۱۷:۳۱


پست: 3288

سپاس: 877

Re: آموزش Maple

پست توسط user8604 »

termeh نوشته شده:maple مفاهیم queuing و توابعش رو داره ؟
فکر نکنم. ولی توضیح بده ببینم چیه. شاید داشته باشه. یا کلمات مترادفش رو بگو.
termeh نوشته شده:میشه کد matlab توی maple استفاده کرد ؟
گمان نکنم. ولی maple ظاهرا میتونه با توابع matlab ارتباط برقرار کنه. ولی من نرم افزارش رو ندارم. نمیتونم تست کنم.
به هر حال با پکیج matlab و دستور FromMFile میشه فایل matlab رو load کنه و تبدیل به کدهای خودش بکنه. و یا مستقیم با دستور AddTranslator کدهایی رو که توش به فرم String مینویسیم رو از matlab به maple ترجمه کنه.
termeh نوشته شده:میتونه توزیع های ریاضی رو بهم تبدیل کنه؟
سوالت گنگه واسم. مثال بزن.
-----------------------------------------
یه دستور به درد بخور برای هوپا :
اگر حوصله ی خوندن دستور العمل برای تایپ فرمول های ریاضی رو ندارید . با استفاده از دستور latex از توی میپل میتونید رابطه ی معمولی رو به فرمی که هوپا میفهمه تبدیل کنید و تو اینجا کپی کنید.
مثال:
latex(Int(sin(x)/(tan(x)+cos(x)), x))
جواب رو که توی tex کپی کنم. میشه این:



نمایه کاربر
termeh

عضویت : چهارشنبه ۱۳۸۷/۵/۹ - ۲۲:۳۴


پست: 448

سپاس: 3

Re: آموزش Maple

پست توسط termeh »

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


به سلامتی " یــواشــکــی " که اگه نبود ، نسل من و تو منقرض میشد

user8604

عضویت : چهارشنبه ۱۳۸۵/۱۲/۹ - ۱۷:۳۱


پست: 3288

سپاس: 877

Re: آموزش Maple

پست توسط user8604 »

جلسه4 .(بردار)
1.نحوه تعریف:
-میتونید داخل <> عددها رو با ویرگول بینشون بنویسید تا بردارتون تعریف بشه!
-با استفاده از دستور Vector تعریف میکنید.(V بزرگه ها)
مثال:
1.بردار مکان رو در زیر تعریف میکنم.
<x,y,z>
2.یک بردار افقی تعریف میکنم که 5 تا درایه داشته باشه و همه ی مقادیر 5 باشند.
Vector[row](5, fill = 5)
اگر اندیس row رو ننویسم بردار پیشفرض ستونی درمیاد. اگر fill رو استفاده نکنم همه ی مقادیر پیشفرض صفر میشن.
3.
Vector(5, symbol = v)
باعث میشه چنین برداری تعریف بشه



-میتونم با قاعده ی خاصی بردار رو تعریف کنم مثل:
اول تابعی که میخوام بردارم با هاش پر بشه رو تعریف میکنم:
f := unapply(sin((1/6)*j*Pi), j)
بعد دستور زیر:
Vector(5, f)
j از مقدار 1 شروع میشه به بالا رفتن . و هر درایه رو با تابع تعریف شده و مقدار دهی عدد اون درایه پر میکنه.
جواب:



به روش های دیگه هم میشه پر کرد .مثل استفاده از حلقه که به موقعش میگم. روشهای دیگه هم لابد به درد بخور تشخیص داده نشدن.
--------------------------------------------
4.1(جمع بردار ها)
خوب طبیعیه که بردار های افقی رو با افقی و ستونی رو با ستونی فقط میشه جمع زد. نتیجه یک بردار از همونی خواهد بود.
4.2(ضرب درونی)
package روبه رو فراخوانی میکنیم.
with(LinearAlgebra)
بین 2 تا بردار کافیه "." بزارید . یا از دستور
DotProduct(v1, v2)
استفاده بکنید.
دو بردار رو مستقیم در هم ضرب میکنم و نتیجش رو با v نشون میدم:
v := <1,2,3>.<3,2,1>
--------------------------------------------
4.3(ضرب خارجی)
package روبه رو رو فراخوانی کنید.
with(LinearAlgebra)
بین دوتا بردار علامت
&x
بزارید یا از
CrossProduct(v1,v2)
استفاده شود.
دو تا بردار در زیر تعریف میکنم. و نتیجش رو یک بردار دیگه میزارم:
restart; with(LinearAlgebra)
r := <x,y,z>
P := Vector(3, symbol = p)
L := r &x P
خروجی ها:













-------------------------
تمرین:
کل بردارهای فیزیک هالیدی 1 رو بنویس:
اونایی که تعریف میشن رو تعریف کن. اونایی که با استفاده از تعارف حساب میشن رو حساب کن. مثلا بردار مکان تعریف میشه . سرعت با مشتق گیری از مکان به دست میاد! تکانه با مشتق گیری زمان از مکان ضربدر جرم به دست میاد. و تکانه زاویه ای رو هم که من نوشتم چه طوری به دست میاد!

نمایه کاربر
Vanda

عضویت : پنج‌شنبه ۱۳۸۷/۴/۱۳ - ۱۸:۴۷


پست: 321

سپاس: 71

Re: آموزش Maple

پست توسط Vanda »

edwardfurlong نوشته شده:.
Vector(5, symbol = v)
باعث میشه چنین برداری تعریف بشه
البته نه به صورت افقي بلكه ستوني! smile015
edwardfurlong نوشته شده:.:
کل بردارهای فیزیک هالیدی 1 رو بنویس:
smile023 smile033 smile039 smile024 smile001 smile048

نمایه کاربر
Vanda

عضویت : پنج‌شنبه ۱۳۸۷/۴/۱۳ - ۱۸:۴۷


پست: 321

سپاس: 71

Re: آموزش Maple

پست توسط Vanda »

ببخشيد ولي يه چن تاسوال!
وقتي ميخام بردار مكانو معرفي كنم بايد تابع زمان بنويسمش؟كه مثلا بعدازش نسبت به زمان مشتق بگيرم؟يا همينطوري صوري؟اگه نه پ چه جوري؟ smile039 (قافيه رو!)اونوقت برا مشتقش D بنويسم ياdiff ياDiff يافرقي براتون نداره؟(الان ميگي تو بنويس بــمـــي....روبنويس smile021 smile039 )
بعداين دستوري كه گفتيد:
edwardfurlong نوشته شده:اگر حوصله ی خوندن دستور العمل برای تایپ فرمول های ریاضی رو ندارید . با استفاده از دستور latex از توی میپل میتونید رابطه ی معمولی رو به فرمی که هوپا میفهمه تبدیل کنید و تو اینجا کپی کنید.
چرااجرا نميشه؟ smile042 مثلا
`#msub(mi("r"),mn("1"))` := unapply(`<,>`(`#msub(mi("x"),mn("1"))`, `#msub(mi("y"),mn("1"))`), t)
اينو واسه =: ِش گير ميده ؟!

user8604

عضویت : چهارشنبه ۱۳۸۵/۱۲/۹ - ۱۷:۳۱


پست: 3288

سپاس: 877

Re: آموزش Maple

پست توسط user8604 »

Vanda نوشته شده:وقتي ميخام بردار مكانو معرفي كنم بايد تابع زمان بنويسمش؟
توی مشتق گیری اگر مشخص نکنی متغیرت چیه که بهت صفر میده!
با این فرض ها:
اول فرمول به دست آوردن اون بردار رو بنویس بعد حساب کن.









Vanda نوشته شده: چرااجرا نميشه؟ smile042 مثلا
`#msub(mi("r"),mn("1"))` := unapply(`<,>`(`#msub(mi("x"),mn("1"))`, `#msub(mi("y"),mn("1"))`), t)
اينو واسه =: ِش گير ميده ؟!
:= مربوط میشه به خود میپل . باید = بزاری موقعی که میخوای ببین فرم لاتکسش چی میشه.
مثلا همین چیزایی که بالا نوشتم فرمولش این بوده:
latex('x' = sin(t))
کاراکتر رو باید داخل ' ' بزاری تا نشون بده.و گرنه مقدارش رو حساب میکنه میزاره.

نمایه کاربر
Vanda

عضویت : پنج‌شنبه ۱۳۸۷/۴/۱۳ - ۱۸:۴۷


پست: 321

سپاس: 71

Re: آموزش Maple

پست توسط Vanda »

اون مشكل هنوز هست.... smile032
نبايد واسه مشتق بردار ها
with(VectorCalculus), [with(VectorCalculus)]
رو معرفي ميكرديد؟! smile042

user8604

عضویت : چهارشنبه ۱۳۸۵/۱۲/۹ - ۱۷:۳۱


پست: 3288

سپاس: 877

Re: آموزش Maple

پست توسط user8604 »

Vanda نوشته شده:اون مشكل هنوز هست.... smile032
دقیقا این رو کپی کن :
latex('x' = sin(t))
اگر جوابی گرفتی که بعد از پیست کردن اینجا کار نکرد.نمیدونم مشکل از کجاست!
Vanda نوشته شده:نبايد واسه مشتق بردار ها
اون رو به وقتش معرفی میکنم. برای گرفتن مشتق کافیه از درایه ها مشتق بگیری.
x := cos(t)
y := sin(t)
z := x^2*y^2
r:=<x,y,z>
v:=<diff(r[1], t), diff(r[2], t), diff(r[3], t)>
که جواب بردارها رو به شکل زیر نشون میده:








ببین نصفشو خودم انجام دادم!

ارسال پست