آموزش نرم افزار maple
این نرم افزار برای حل مسائل ریاضی است که اولین بار در سال 1981برای انجام
مجموعه ای از محاسبات در دانشگاه waterllo طراحی شد. در سال 1988، این نرم
افزار توسعه داده شد و به توسط یک کمپانی کانادایی مستقر در دانشگاه به بازار
تجاری کامپیوتر عرضه شد.فروش و عرضه این نرم افزار به بازار سود زیادی را نصیب،
صاحبان کمپانی کرد.
این نرم افزار ابزاری قدرتمند در انجام محاسبات ریاضی و مهندسی می باشد .
با این برنامه شما می توانید معادلات خود را حل کنید حتی معادلات توابع مختلتی
حد هر تابعی را بگیرید
هر تابعی که بخواهید رسم کنید حتی توابع سه بعدی
انتگرال بگیرید
و خیلی خیلی کار دیگر
در ادامه مطلب آموزش این برنامه قرار دارد
معرفی maple یک مفسر، برای زبان برنامه نویسی پویا است، به طور معمول،عبارات جبری و
عبارات منطق در حافظه کامپیوتر، ذخیره می شوند و پس از آن بوسیله این نرم افزار
پردازش شده و حل میگردند. از این نرم افزار در حل مسایل مختلف ریاضی از قبیل
هندسه، حساب و ... استفاده می شود.
وقتی میپل بار می شود (اجرا می گردد)فقط هسته که پایه و اساس سیستم میپل
و شامل دستورات بنیادی و اولیه می باشد را به حافظه منتقل می کند. هسته از
کدهایی به زبان C تشکیل شده که تقریبا 10 درصد کل سیستم میپل را در بر می
گیرد. به منظور سرعت و کارایی بیشتر هسته کوچک نگه داشته شده است. نود
درصد بقیه به زبان میپل نوشته شده است که در کتابخانه هایMaple قرار دارد.
برای حل دو معادله و دو مجهول از روش زیر استفاده میکنیم.
solve({x+y>0,x-y=1});
solve({x^2+2*x*y=0,x-y=1,x-y=1});
solve(x^2+2*x+1);
solve(x^2-3*x-4);
رسم توابع دو معادله و دو مجهول
inequal({x+y>0,x-y=1},x=-5..5,y=-5..5);
برای تبدیل مبنای 10 به 2 از کلمهی binary ، به 8 از کلمهی octal و به 16 از کلمه
hex به این شکل استفاده میکنیم.
convert(9,binary); 1001
convert(9,octal); 11
convert(9,hex); 9
برای رسم تابع سه بعدی از دستور زیر استفاده میکنیم.
implicitplot3d(x^2+y^2+z^2=1,x=-1..1,y=-1..1,z=-1..1);
plot3d(x^2+1,x=-1..1,y=-1..1);
برای رسم دایره اینگونه عمل میکنیم:
implicitplot(x^2+y^2=1,x=-1..1,y=-1..1);
برای رسم یک 8 ضلعی منتظم باید به صورت زیر عمل کرد.
implicitplot(x^2+y^2=1,x=-10..10,y=-10..10);
برای رسم یک هذلولی به صورت زیر عمل میکنیم.
implicitplot((x^2)/4-(y^2)/9=1,x=-10..10,y=-10..10);
فرمول دایره در مختصات قطبی به صورت ر وبه رواست
برای رسم یک دایره به این روش کافی است دستور زیر را نوشته و شعاع مورد نظر
را در پرانتز وارد کنیم.
implicitplot(x^2+y^2=1,x=-1..1,y=-1..1);
polarplot(1);
انتگرال
قبل از شروع به انتگرال گیری باید وارد پوشهی
with(student) شوید.
int((x^2+x)/x,x);
Int((x^2+x)/x,x=2..5);
Int((x^2+x)/x,x=2..infinity);
int((x^2+x)/x,x=2..infinity);
انتگرال دو گانه:
Doubleint(h*g,x,y,c);
changevar(cos(x)+1=u, Int((cos(x)+1)^3*sin(x), x), u);
نکته: برای به دست آوردن مقادیر انتگرال که با
تغییر متغیر حل میشود به صورت زیر عمل میکنیم.
changevar(cos(x)+1=u,Int((cos(x)+1)^3*sin(x),x=1..2),u);
changevar(cos(x)+1=u,int((cos(x)+1)^3*sin(x),x=1..2),u)
) اگر بخواهیم برای تابع f ، دو ضابطه ی p1 و p2 را تعریف کنیم ، باید مانند مثال زیر
عمل کنیم :
y1=x3
y1=x^3;
Y1=x2
y2=x^2;
p1:=plot(x^3,x=-2..0):
p2:=plot(x^2,x=0..2):
display({p1,p2});
2) تأیین رنگ برای یک تابع:
plot(x^2,x=0..2,color=gold);
3) تأیین رنگ برای چند تابع که همزمان رسم می شوند:
plot({-sqrt(x),sqrt(x),sqrt(-x),-sqrt(-x)},x=-2..2, color=
[grey,maroon,coral,cyan]);
رنگ های قابل تعریف در نرم افزار:
aquamarine black blue navy coral cyan brown gold
green gray grey khaki magenta maroon orange pink
plum red sienna tan turquoise violet wheat white yellow
4) برای به دست آوردن حاصل ضرب اعدادی متوالی (و دارای ضابطه) مانند زیر عمل
می کنیم:
product(k,k=1..6); 720
product(k^2,k=1..4); 576
product(k^3-2*k,k=1..4); -4704
5) برای به دست آوردن حاصل جمع اعدادی متوالی (و دارای ضابطه) مانند زیر عمل
میکنیم:
sum(k,k=1..100); 5050
add(k,k=1..100); 5050
sum(k^2,k=1..10); 385
add(k^2,k=1..10); 385
sum(k^2-3*k,k=1..10); 220
add(k^2-3*k,k=1..10); 220
6) در صورتی که بخواهیم یک عبارت را به صورت اتحاد در آوریم مانند زیر عمل می
کنیم:
with(student);
completesquare(9*x^2+24*x+16);
completesquare(x^2-2*x*a+a^2+y^2-2*y*b+b^2=23,x);
completesquare(%,y)
رسم توابع دو معادله و دو مجهول
کافی است از دستور زیر استفاده کنم.
inequal({x+y>0,x-y=1},x=-5..5,y=-5..5);
- برای تجزیه باید از دستور factor استفاده کنیم.
x^2+y*x;
factor(%);
x^3*y+x^2*y^2;
factor(%);
2- عکس این عمل دستور expand است که عبارتها را به صورت چند جملهای تبدیل
میکند.
x*(x+y);
expand(%);
(x+y)*(x^2-x*y+y^2);
expand(%);
3- دستور simplify تقسیم چند جملهای بر چند جملهای را ارائه میدهد، در صورتی
که قابل تقسیم باشد جواب منطقی میدهد ولی در غیر این صورت به شکل کسری
نشان میدهد.
(x^2+2*x*y-y*x)/(y*(x+y));
simplify(%);
(x^3*y+x*2*y^2)/(x^2+x*y);
simplify(%);
- برای تعریف رابطه بایدطبق فرمول ارائه شده در زیر عمل کنیم.
g:=x^2+3*x;
f+g;
f-g;
f*g;
expand(%);
f/g;
(4*f)+(3*g);
- برای تعریف تابع باید طبق مثال داده شده عمل کرد.
f:=x->x-1;
k:=x->x+5;
f(x)*k(x);
expand(%);
f(x)+k(x);
f(x)-k(x);
f(k(x));
k(f(x));
k(f(1));
با دستور taylor میتوان بست چند جملهای روابط را به دست آوریم.
s:=taylor(sin(x),x=0);
t:=convert(s,polynom);
plot([t,sin(x)],x=-Pi..Pi);
لیست عبارت است از مجموعهای از اعداد یا حروف که در داخل کروشه نوشته
میشوند و حکم دامنه را برای تابع دارد.
p:=[1,2,3,4,5,6]; p=[1,2,3,4,5,6]
h:=[a,b,c,d]; h=[a,b,c,d]
u:=[1,4,9]; u=[1,4,9]
nops(p); 6
nops(h); 4
این دستور مشخص کننده تعداد اجزای آن مجموعه
nops(u); 3
op(2,u); 4
این دستور نشان دهنده مقدار عضو x در مجموعه
op(4,h); d
op(5,p); 5
op(1..3,u); 1,4,9
نشان دهنده مقدار اعضای x تا z در مجموعه
op(3..6,p); 3,4,5,6
op(2..3,h); b,c
op(h); a,b,c,d
op(u); 1,4,9
مشخص کننده مقدار تک تک اعضای مجموعه
op(-1,h); d
op(-5,p); 2
s:=[op(u),12]; s=[1,4,9,12]
برای اضافه کردن یک عضو به یک مجموعه
op(s); 1,4,9,12p
اگر مجموعه (a,b,c) را داشته باشیم و f را روی این مجموعه تعریف کنیم آنگاه تابع
map مقدار عددی را بر میگرداند.
f:=x->x^2;
map(f,[a,b,c]);
p:=[1,2,3,4,5,6,7,8,9];
map(f,p);
f:=x->x^2;
g:=y->y^2;
map(f+g,[1,2]);
i:=(x,y)->x^2+y^3;
map(i,(4,2));
map(i,(2,4));
برای رسم نقاط روی محور از دستور زیر استفاده میشود.
p:=[[1,2],[3,5],[3.5,-1],[2,3.5]];
plot(p);
اگر بخواهیم نمودار به صورت نقطهای باشد و نقاط به هم وصل نشوند از دستور زیر
استفاده میشود.
plot(p,style=point);
نکته:سه دستور زیر با هم مساویاند:
f:=x->x^2;
map(f,[1,2,3,4,5]);
seq(x^2,x=1..5);
اگر بخواهیم دو مجموعه که تعداد اعضای یکسان دارند را به صورت زوج مرتب و به
شکل را نشان دهیم به صورت زیر عمل میکنیم:
k:=[seq(x^2,x=0..5)];
t:=[seq(x,x=0..5)];
plot(y);
قوانینی که باید در maple رعایت شود.1) در پایان همه دستورها باید ; قرار گیرد.
2) هر تابع که وارد شود باید آرموگانهای آن در داخل یک جفت پرانتز قرار گیرند.
برای مثال: Sinx باید به صورت Sin(x) باشد.
3) علامت [> به منظور شروع دستورات میباشد.
4) عبارتها را باید بر طبق اولویت دستهبندی کرد.
5) برای به دست آوردن مقادیر کسری از دستور evalf( ) استفاده میشود.
evalf(sqrt(2));
1.414213562
evalf(Pi);
3.141592654
evalf(3/7);
0.4285714286
evalf(sin(45)+cos(45));
1.376225513
6) طرز نوشتاری چند تابع در این محیط:
floor(2.3);
2
abs(-1.2);
1.2
factorial(3);
6
7) برای پاسخ گرفتن کلید Enter را میفشاریم.
8) بین تمام اعداد باید علامت گذاشت.
9) به خاطر حق تقدم علامات لاید به پرانتز گذاری توجه کرد.
10) عدد بعد از tan ، sin و ... عدد باید درون پرانتز قرار گیرد.
11) اگر توان اعشاری بود آن را درون پرانتز میگذاریم.
12) به جای نوشتن رادیکال از sqrt(x) استفاده میکنیم.
13) برای فاکتورگیری ابتدا عبارت factor را نوشته و سپس عبارت مورد نظر را در
پرانتز مینویسیم.
14) فرمان expand برعکس factor میباشد که برای این کار expand را نوشته و
عبارت را درون پرانتز مینویسیم.
15) برای تقسیم چندجملهای ها قبل از نوشتن عبارت مورد نظر کلمه simplify را
تایپ کرده و سپس عبارت را درون پرانتز مینویسیم.
16) برای جایگزینی عدد a به جای پارامتر x از دستور x:a و برای حذف محتویات x از
دستور x:='x' استفاده میکنیم.
17) برای حذف تمام پارامترها و فرمانها از دستور restart; استفاده میکنیم.
18) به کوچک یا بزرگ بودن حروف عبارات و فرمانها باید توجه کرد.
19) در Maple زوایا به صورت رادیان حساب میشوند، نه درجه.
20) برای نوشتن بینهایت از infinity استفاده میکنیم.
21) فرمان evalf براس محاسبه مقدار عددی هر عبارت به کار میرود.
22) برای محاسبه با n عدد اعشار قبل از محاسبه تایپ میکنیم: Digits:=n;
23) میتوان از % در فرمان ها به جای تکرار فرمولها یا مقادیری که در فرمان قبلی
به کار رفتهاند استفاده کرد. مثلا evalf(%) مقدار حددی جواب عبارت قبل را حساب
میکند.
mamnoon estefade kardam