Maple

Jelentkezz be a hozzászóláshoz.

#275
A floor értelmezése: az a legnagyobb egész, amely kisebb vagy egyenlo a számmal.
Itt a gyógyítás az ábrázolási problémára:

restart;with(plots):with(plottools):
p1:=plot(sin(x),x=-4..4,color=red,thickness=3):p2:=plot(floor(sin(x)),x=-4..4,color=blue,thickness=3):
c1:=disk(,1/12,color=blue):c2:=disk(<-3*Pi/2,floor(sin(-3*Pi/2))>,1/12,color=blue):
p3:=plot(0,x=-4..4,y=-2..2, symbol=circle,symbolsize=20,color=blue,style=point,adaptive=false, sample=):p4:=plot(-1,x=-4..4,y=-2..2, symbol=circle,symbolsize=20,color=blue,style=point,adaptive=false, sample=<-Pi,0,Pi>):display(p1,p2,p3,p4,c1,c2,scaling=constrained,view=<-4..4,-2..2>);
#274
A különálló pontokat itt sem tudta jól ábrázolni, szintén mintavételezési problémák miatt, tehát, pl. Pi/2-ben és -3Pi/2-ben 1 a floor(sin(x)).
#273

Akkor próbáld ki a floor függvényt:

plot(floor(x),x=-4..4);
plot(,x=-5..5,y=-2..2,thickness=5);

Ezek értelmezésibeli eltérések, a programnyelvekben többféle egészrészt képezo függvényt használnak, így a mapleben is többféle van. pl. trunc, floor, ceil. Ezek mindegyike valaémilyen értelemben az egészrészét képezni a számnak. A matekórán egyféle értelmezést hazsnálnak, nem emlékeztem erre , azt hiszem a floor ami kell.
Ilyenkor eloszor érdemes magát az egészrész függvényt ábrázolni, öszzehasnolítani ami a jegyzetben van.
CattiBrie
#272
Igen, két warningot ír...

Ellenben nem jó a fv.
Nem azt szerettem volna ábrázolni, amit learjzoltam, hanem a sinus fv egészrész fv-ét

így:




ugyanis, amit kirajzol az az analízistanárnénim szerint nem úgy van... :S

[/spam]&#8482;

#271
Ha jól másoltad át akkor nem kell hogy hiba legyen benne. Ha két warning ... kezdetu üzenetet ír ki, akkor ezek nem hibát jelentenek, hanem a rajzoláshoz betöltött két csomag (plots, plottools) miatt figyelmeztet, hogy egyes, eddig szabad neveket, jelöléseket lefoglaltak a csomag parancsai, úgyhogy ezek után ezeket nem ajánlatos pl. változónévnek használni ezeket.
CattiBrie
#270
Nahát! Eltatláltam!!!
De jó! 😊))

Köszönöm!

monnyuk nekem így is ír ki hibákat

[/spam]&#8482;

#269
trunc(x) az egészrész

plot(trunc(x),x=-4..4);# az egészrész ábrázolása
plot(trunc(sin(x)),x=-4..4); # lenne a szinusz egészrész ábra de ez így nem muködik, gondolom mintavételezési problémák miatt nem ábrázolja, Persze egyedi értékeket kiszámolja pl.trunc(sin(-Pi/2)).

Ezért egy alternativ megoldás az abrához:

restart;with(plots):with(plottools):
p1:=plot(sin(x),x=-4..4):
c1:=disk(<-Pi/2,trunc(sin(-Pi/2))>,1/12,color=blue):c2:=disk(,1/12,color=blue):
p2:=plot(0,x=-4..4,y=-2..2, symbol=circle,symbolsize=20,color=blue,style=point,adaptive=false, sample=<-Pi/2,Pi/2>):p3:=plot(0,x=-4..4,color=blue,thickness=3):display(p1,p2,p3,c1,c2,scaling=constrained,view=<-4..4,-2..2>);


CattiBrie
#268
Az egészrész függvényt, hogyan kell ábrázolni?

Illetve az egészrész sin x-re jó az, hogy egy vízszintes vonal az x tengelyen és, ahol 1-et vagy -1 -et vesz fel, ott 11, illetve -1 érték...

nah, valami ilyen 😄

[/spam]&#8482;

#267
Már a 10.06 (windowsos) is fent van a már itt említett helyen, ez a 10-es legutolsó verziója.
#266
Na végre, megjelent a 11-es.
http://www.maplesoft.com/products/Maple11/academic/index.aspx
#265

A matek feladatos topicbeli korilleszteses kerdesre itt egy kod a mapleprimesrol,mivel regsztralos az oldal (by Thomas Schramm):

restart:
#The general equation for a circle is:
Kreis := (x,y)->x^2+y^2-2*a*x-2*b*y-c=0; #ez a kifejtett alak
#A set of coordinates for which we might want to fit a circle are:
Px := <6, 3, 9, 2, 5>: Py := <2, 2, 5, 3, 2>:
Punkte := zip((x,y)->, Px, Py);
#Using this data we construct the corresponding system of equations:
gls := { op( zip( Kreis, Px, Py) ) };
#and solve this over-determined system using:
lsg := linalg(gls, {a,b,c});
#The radius of the circle is given by:
r := evalf( subs( lsg, sqrt(c + a^2 + b^2) ) );
#Substituting the values for a, b and c into our circle equation, gives the parameteric description of our circle-fit as:
KF := subs(lsg, Kreis(x,y));
#The solution curve (circle) of the implicit equation can be directly plotted using:
g1 := plots( KF, x=0..10, y=-11..11, thickness=2):
#And the datapoints using:
g2 := plot( Punkte, style=point, symbol=cross, color=blue):
#We display both the data and the circle together.
plots( {g1,g2}, scaling=constrained );




#264
Végre egy friss kiadású magyar maple-könyv, a Maple 10-hez:
Klincsik Mihály - Maróti György: Maple 8 tételben (2006)
#263

Matematikai függvények elektronikus adatbázisa: ilyen több is van az interneten, van pl. a Wolframos, de itt egy másik:

http://algo.inria.fr/esf/

Pl. a cos függvény definíciója, tulajdonságai, azonosságok, sorfejtése stb... A képletek Latex, MathML, Maple formátumában is.
#262

SAGE is free and open software that supports research and teaching in algebra, geometry, number theory, cryptography, and related areas.

http://modular.math.washington.edu/sage/

SAGE runs on Mac OS X, Linux and Windows.
CattiBrie
#261
ez a factor nagyon tök jó!!!

köszi

[/spam]&#8482;

#260

Kimondottan polinomok osztására a divide, rem és quo parancsok is :

p1:=x^2+x-2;
p2:=x+2;
divide(p1,p2,'q'); # a q itt segédváltozó, ebbe teszi az osztás eredményét
q;
# megmondja, hogy osztható-e p1 p2-vel, és a q változóban a hányadost tette.
# vagy külön megkapható az osztás hányadosa és maradéka is:

quo(p1,p2,x);# hányados
rem(q1,q2,x);# osztás maradéka
#azaz p1 = p2*quo + rem alakba írható így:
p1= expand(quo(p1,p2,x)*p2+rem(q1,q2,x));# ellenõrzés
#Itt a factor párja az expand. (elvégzi a szorzás mûveleteket)

p:=(x+2)*(x-1);
expand(p);

#A polinom gyökeit pedig lehet a solve-val, vagy az fsolve-val megkapni
solve(x^2+x-2,x);

# ha nem sikerül a solve-val a pontos gyök megtalálása, akkor az fsolve-val közelítõ gyököket lehet keresni.
fsolve( x^6 + 6*x^3 - x^2 + 1);

plot(x^6 + 6*x^3 - x^2 + 1,x=-3..2,y=-15..50);

# polinomok legnagyobb közös osztója gcd
gcd(p1,p2);
#259
Egyébként a behelyettesítés elvégezhetõ így:
p:=x^2+x-2;

eval(p,x=2);# azaz p kifejezés értéke x=2 esetén.

vagy
subs(x=2,p);

Nyilván nem gyöke a kettõ. Hanem -2 és 1, a szorzattá bontás alapján:
factor(p);
eval(p1,x=-2);
eval(p1,x=1);

#258

Az hogy gyöke-e, az egyszerû, be kell helyettesíteni kérdéses gyököt a formulába, ha nullát ad akkor gyöke.

De lehet a factor-ral is szortattá bontani:
factor(x^2+x-2);

A második polinomra nem ad megoldást a factor, általában nehéz ügy a szorzattá bontás.


CattiBrie
#257
demárminthogy én adok neki egy gyököt meg, h..

pl

x^2 + x - 2

gyöke-e a 2?

(x-2)(x-...)



vagy fel tudom e bontani a
x^6 + 6x^3 - x^2 + 1
polinomot két másik polinom szorzatára

[/spam]&#8482;

#256

p := (x^5+1)/(x^4-x^2);
convert(p,parfrac);
CattiBrie
#255
Lehet Maple-lel polinomosztani?

[/spam]&#8482;

#254
Már fent van a 10.04-es, ahol a 10-es is volt.
#253

OreModules - Linear Control Systems over Ore Algebras

OreModules is a Maple implementation of algorithms which compute parametrizations, extension modules (ext), resolutions and other algebraic objects for linear systems of differential equations, time-delay systems, etc.

http://wwwb.math.rwth-aachen.de/OreModules/
#252

Egy jó, magyar nyelvû Maple ismertetõ:
Feladatmegoldás Maple-lel

http://kataszter.apertus.hu/index.php/curriculum/Curriculum?tananyag=pte_maple#{E5A8FC74-1123-4B8E-9491-B980995E6E93}
#251

Eigenmath: egy ingyenes, kis komputer algebra szoftver. Egyszerû a telepítése, derivál , integrál, mátrixokat számol stb...

http://eigenmath.net/
#250

Ganso: ez egy ingyenes optimalizációs szoftvercsomag (dll formában), amely Maplebõl is használható. Pl.többváltozós, nemlineáris, nemdifferenciálható függvények globalis optimalizálása (maximum, minimum keresés).

www.ganso.com.au
http://www.ganso.com.au/downloads.php

"GANSO is a programming library for multivariate global and non-smooth nonlinear optimization... Free version, limited to 100 variables and 100 linear constraints)."
#249

Magyar nyelvû interface a Maplehez?
Ilyen nincs, de látom kiadtak már a 10-eshez japánt, koreait.
nyelvûeket. Nem láttam mit tud, mire terjed ki pontosan a fordítás, a helpre biztos nem, az nagyon hosszú.
Így lenne esélye viszont a magyarnak is, a magyarországi forgalmazó tudna ebben lépni szerintem.

"Maple 10 Language Pack: Chinese
This downloadable update provides a translated version of the Maple 10 interface and translated context sensitive menus."
#248

Axiom is egy ingyenes, nagytudású komputer algebrai rendszer.
Wikipedián róla: http://en.wikipedia.org/wiki/Axiom_computer_algebra_system

Maxima-ról:
http://en.wikipedia.org/wiki/Maxima

CAS összehasonlítás:
http://en.wikipedia.org/wiki/Comparison_of_computer_algebra_systems
#247

"...The Playsome Threesome: Maxima, Maple, and Mathematica
In this section we shall play with three lovely ladies, Maxima, Maple, and Mathematica. Of these Maxima is a little underdressed perhaps, but a discerning eye will notice lovely tidbits and morsels under her scanty rag. You will find that their accents, phrasing and pronounciation may differ a little, and yet their native tongues are close enough, so that you can understand one, while mastering the language of the other. All three can please a gentleman, and all three can frustrate him too. Their moods are capricious like April weather..."
CattiBrie
#246
és jó is? 😊

[/spam]&#8482;

#245

Innen a Maxima tölthetõ le szabadon:
http://maxima.sourceforge.net/
Ez is egy is egy komputer algebrai szoftver, csak ingyenes.

"Maxima is a full symbolic computation program. It is full featured doing symbolic manipulation of polynomials, matrices, rational functions, integration, Todd-coxeter, graphing, bigfloats. It has a symbolic debugger source level debugger for maxima code. Maxima is based on the original Macsyma developed at MIT in the 1970's. It is quite reliable, and has good garbage collection, and no memory leaks. It comes with hundreds of self tests."
#244

De ha valaki mindenáron e-t akar használni a mapleben a természetes alapú logaritmus alapjának jelölésére akkor persze megteheti az alias paranccsal, amivel meg lehet adni rövidítéseket:

restart;
alias(e=exp(1));
# ezek után már e úgy használható, ahogy a metakban szokásos
evalf(e); # 2,718...
evalf(e^2);# stb.. e^x ...
#243

Errõl már volt szó korábban itt.

Az e a matekban egy állandó, ez a 2,71828.... A mapleben erre nincs külön lefoglalva változónév. (Legalábbis az újabb verziókban.) Amikor e-t írsz neki, (és korábban nem adtál értéket ennek), akkor csak egy szimbolum számára.
A Maple-ben exp() jelöli a természetes, tehát e-alapú (e=2,71828...) hatványozást.
Azaz amit máshol e^valami -vel jelölnek, azt a mapleben exp(valami) -val jelölhetõ. Ebbõl következik , hogy az e értékét a mapleben így meg lehet kapni exp(1). (mert ez a e^1 lenne.

A maple az eredmény kiiratáskor már igyekszik szépen megjeleníteni az eredményt, és így az exp(1)-et beírva, az enterezés után átírja e-re, mert ez a matekban a szokásos jelölése. De ez csak megjelenítés. Az e változó értéke nem lesz továbbra sem 2,718...
pl.
restart;
exp(1);# erre kíírja hogy e
evalf(%); #erre a számszerû értékét írja ki. (%: az elõzõ eredményre való hivatkozás)

evalf(e); # nem ír ki számszerû értéket, mert e csak egy érték nélküli változónév
CattiBrie
#242
😊

Egyébként mi a különbség az e és az exp() között?

A sima e az nem az, amire én gondolok? 😊

[/spam]&#8482;

#241

Itt is egy jó kis ingyenes csomag a Maplehez:
http://web.mit.edu/drowell/www/syrep/
"Symbolic Software for Model Generation and Analysis of Linear Dynamical Systems"
Lineáris, dinamikus rendszerek elemzéséhez (pl. lineáris áramkörök, mechanika, szabályozástechnika területén):




#240

meg a visszaellenõrzésnél, azért be kell segíteni egy simplify paranccsal olykor.
simplify() egyszerûsítés

y:=(x^2+5*x-1)*exp(3*x+7);
F82:=int(y,x)+c;
diff(F82,x);# ezt az alakot még lehet egyszerûsíteni
simplify(%); # egyszerûsítve
#239

Az.
Írjál exp()-et e-helyett!
CattiBrie
#238
ez komoly???


[/spam]&#8482;

#237

De szerintem más sem tud, én nem emlékszem legalábbis az egyetemen nyargaló ménesekre..
CattiBrie
#236
hát akkor én még ló sem vagyok 😄

[/spam]&#8482;

#235

Persze az inverz mûveletet, algoritmust nem úgy kell érteni hogy valamit egyszerûen csak ellenkezõ sorrendben kell csinálni, és akkor így visszakapom az eredetit.
A deriválás az mechanikus dolog, az integrálás meg bonyolult, van amikor nem is végezhetõ el. Meg mondják, hogy deriválni a ló is tud.
CattiBrie
#234
jaígymár ééétem 😊

de akkor is jobban számol, mint én 😄DD

[/spam]&#8482;

#233

Van amit õ sem tud, vagy rosszul tudja. Az interneten jó néhány példa van ilyen integrálási bugokra a maplehez.
#232

Ha valaki modnjuk nem ismerne semmilyen integrálási szabályt, csak azt tudná, hogy az integrálással kapott fügvény deriváltja az integrálandó függvény éppen (egy konstanstól eltekintve), akkor ha sok ideje lenne 😊, akkor úgyis megkaphatná a határozatlan integrált, hogy elkezdené végigpróbálgatni mindenféle függvényt. Pl. pl. keresnie kéne a sin(x) határozatlan integrálját, és elkezdene vaktában próbálkozni:

diff(cos(x),x); #ez nem stimmel
diff(2*cos(x),x);#ez sem
diff(-cos(x),x);#ez jó


CattiBrie
#231
"Az integrálás "inverz" mûvelete a deriválás. Ha nem jól végeznéd az integrálást, akkor nem kapnád vissza deriválással az integrálandó függvényt. "

De hát a program csinálja az integrálást, már csak "tudja" hogy kell...

[/spam]&#8482;

#230


Az integrálás "inverz" mûvelete a deriválás. Ha nem jól végeznéd az integrálást, akkor nem kapnád vissza deriválással az integrálandó függvényt.
Ha megváltoztatod, elrontod az integrálás eredményét, nem kapod vissza deriválással az integrálandó függvényt.

"..100%ban úgy is azt fogod visszakapni, ahonnan elindultál, hiszen csak a saját magát ellenõzri, ugyanazt az eljárást alkalmazza oda és vissza.."
Ez nem igaz. már eleve nem lehet az eljárás ugyanaz oda-vissza. Egyik integrálás, a másik deriválás, teljesen más algoritmus.
diff(value(Int(fvek,x)+c),x) - meg pl. ennél elõszõr végrehajtja a belsõ függvényt, azaz az integrálást, kap rá egy kifejezést, majd ezt deriválja, nem
egyszerûen kilesi mi volt az Int-en belül.


CattiBrie
#229
akkor úgy kérdezem hogy ez az ellenõrzés milyen hibát találna meg?

[/spam]&#8482;

#228

Ha mindenképpen a 2. oszlopot akarjuk felhasználni az ellenõrzésre:

tabla:=Diff(rhs(tabla),x)=diff(rhs(tabla),x):

Mivel a második oszlopban valami1 = valami2 alakú kifejzések szerepelnek, ez egy egyenlet típus a maple-ben. Most nekünk a valami2 kell az integrálás eredménye. Az rhs() parancsal vehetõ a jobb oldala az egyenletnek. (lhs baloldal lenne : left hand side, right hand side)
#227

Jó ez az ellenõrzés.
Azt csinálja, hogy deriválja (x-szerint) a kapott integrált. diff(value(Int(f(x),x)),x) Szóval a 3. oszlopnál táénylegesen elvégzi a kapott eredmény deriválsát.
Az jó, hogy visszakapom az eredeti fv.-t!

Azért nem közvetlenül a 2. oszlop szerepel a diffben, mert az oszlopban nem egyszerûen az integrál szerepel, hanem esztétikai okokból az integráljeles alak is az egyenlõségjellel.

Értelmes viszont így kiiratni, (tartalmilag nincs különség), hogy látszódjék, mit deriválunk:

tabla:=Diff(value(Int(fvek,x))+c,x)=diff(value(Int(fvek,x)+c),x):

Annyi a szépséghibája ekkor, hogy a parciálsi derivált jelet ír ki a maple, mert a c-re azt gondolja, hogy egy változó (amit szerint éppen nem deriválunk perzse), persze az eredmény ezért még jó.
Ha nem teszem bele a c-t akkor szépen írja ki.
CattiBrie
#226
lehet, hogy tévedek..

de ez az ellenõrzés így nem ellenõrzés
100%ban úgy is azt fogod visszakapni, ahonnan elindultál, hiszen csak a saját magát ellenõzri, ugyanazt az eljárást alkalmazza oda és vissza

a haramdik oszlopban csak egy diff-nek kéne szerepelnie.. méghozzá a második oszlop tartalmával

valami: diff(tabla)

persze így is tuti ugyanazt kapjuk vissza

akkor nincs értelme ellenõrizni.. vagy mi

[/spam]&#8482;