diff --git a/Maxima/HarmadikOra.wxm b/Maxima/HarmadikOra.wxm new file mode 100644 index 0000000..40ace3f --- /dev/null +++ b/Maxima/HarmadikOra.wxm @@ -0,0 +1,327 @@ +/* [wxMaxima batch file version 1] [ DO NOT EDIT BY HAND! ]*/ +/* [ Created with wxMaxima version 22.04.0 ] */ +/* [wxMaxima: input start ] */ +array(tomb,3,4,5); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +tomb[3,4,5]; +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +tomb[0,0,0]; +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +tomb[3,4,6]; +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +tomb2:make_array(any,1,2,1); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +tomb2[1,2,1]; +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +tomb[0,1,0]; +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +tomb3[akármi]:4; +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +tomb3[bármi]; +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +tomb3[akármi]; +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +array(tomb1,fixnum,2,3)$ +tomb2:make_array(any,1,2)$ +tomb3[a]:4$ +arrays; +arrayinfo(tomb1); +arrayinfo(tomb2); +arrayinfo(tomb3); +fillarray(tomb1,[1]); +listarray(tomb1); +fillarray(tomb2,makelist(i,i,1,10)); +listarray(tomb2); +fillarray(tomb3,[1/10]); +listarray(tomb3); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: subsect start ] +Halmazok + [wxMaxima: subsect end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +a:{1,2,3,4,2,3,5,1}; +a:set(1,2,3,5,2,4,3,5,1); +a:makeset(sin(i/2*%pi),[i],[[0],[1],[2],[3],[5],[5],[6]]); +setify([a,b,b,a,b,b,c,d,c,a,b,c,d]); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +h1:{1,2,3}$h2:{2,3,4}$ +union(h1,h2); +intersection(h1,h2); +intersect(h1,h2); +setdifference(h1,h2); +union(setdifference(h1,h2),setdifference(h2,h1)); +symmdifference(h1,h2); +cardinality(union(h1,h2)); +cartesian_product(h1,h2); +divisors(64); +factor(64); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: subsect start ] +Struktúrák + [wxMaxima: subsect end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +defstruct(anyag(rho,Lo,Lf,To,Tf)); +oxigen:new(anyag); +oxigen@rho:1.429$ +oxigen@Lo:0.444$ +oxigen; +structures; +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: subsect start ] +Függvények + [wxMaxima: subsect end ] */ + + +/* [wxMaxima: input start ] */ +define(f(x,y,z),sin(x)*exp(y)/z); +functions; +fundef(f); +remfunction(f); +functions; +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +a:makelist(10-i,i,1,10); +sublist(a,lambda([x],x<4)); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +showtime:true$ +af[i,j]:=i+j^2$ +for i:1 thru 200 do + for j:1 thru 200 do + af[i,j]$ +for i:1 thru 200 do + for j:1 thru 200 do + af[i,j]$ +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: subsect start ] +Blokkok + [wxMaxima: subsect end ] */ + + +/* [wxMaxima: input start ] */ +(a:1, +b:2, +c:3); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +a:12$ +b(x):=sin(x)$ +disp(fundef(b))$ +block([a], + label1, + a:read("Add meg \"a\" értékét!"), + if a<0 then go(label1), + local(b), + b(x):=cos(x), + disp(fundef(b)), + return(a/b(a)) +)$ +display(a); +fundef(b); +/* [wxMaxima: input end ] */ +/* [wxMaxima: question start ] */ +Add meg "a" értékét! +/* [wxMaxima: question end ] */ +/* [wxMaxima: answer start ] */ +23;54; +/* [wxMaxima: answer end ] */ + + +/* [wxMaxima: subsect start ] +Elágazások + [wxMaxima: subsect end ] */ + + +/* [wxMaxima: input start ] */ +if random(10)>3 then disp("Nagyobb"); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +A:random(10); +if A>3 then +disp("Nagyobb:",A) +else + disp("Nem nagyobb")$ +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +felt:random(3)$ +if felt=2 then + disp("2") +elseif felt=0 then + disp("0") +else + disp("1"); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +A:random(10)$ +if A>3 then + if A>8 then + disp("A>8") + else + disp("8>=A>3"); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +A:random(10)$ +if A>3 then +( + if A>8 then + disp("A>8") +) +else + disp("3>=A"); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: subsect start ] +Ciklusok + [wxMaxima: subsect end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ /*amíg teljesül*/ +i:0$ +while i<3 do +( + i:i+1, + disp(i) +)$ +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ /*amíg nem teljesül*/ +i:0$ +unless i>3 do +( + i:i+1, + disp(i) +)$ +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +A:genmatrix(a,5,5); +spur:0$ +for i from 1 step 1 thru matrix_size(A)[1] do + spur:spur+A[i,i]$ +spur; +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +A:genmatrix(a,5,5); +spur:0$ +for i thru matrix_size(A)[1] do + spur:spur+A[i,i]$ +spur; +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +a:1.1$ +thru 10 do + a:a*a$ +display(a)$ +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +i:2$ +count:0$ +do( + count:(count+i)*i, + if count > 100 then + return(count) +); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +for i from 1.1 next i*i thru 20 do + display(i)$ +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +lista:makelist(mod(x^3,7),x,0,3)$ +for i in lista do + display(i)$ +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +(h1:{4,5},h2:{6,7},H:cartesian_product(h1,h2))$ +for i in H do + disp(i)$ +/* [wxMaxima: input end ] */ + + + +/* Old versions of Maxima abort on loading files that end in a comment. */ +"Created with wxMaxima 22.04.0"$ diff --git a/Maxima/HatodikOra.wxm b/Maxima/HatodikOra.wxm new file mode 100644 index 0000000..f145ff2 --- /dev/null +++ b/Maxima/HatodikOra.wxm @@ -0,0 +1,228 @@ +/* [wxMaxima batch file version 1] [ DO NOT EDIT BY HAND! ]*/ +/* [ Created with wxMaxima version 22.04.0 ] */ +/* [wxMaxima: input start ] */ +a:[1,2,3]$ +b:[4,5,6]$ +a+b; +b-a; +a*b; +a.b; +load(vect)$ +c:a~b; +express(c); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +load(eigen)$ +d:columnvector([3,2,4]); +d.a; +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +vectorpotential([2,4,6]); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +a:[a1+%i*a2,a3+%i*a4]$ +b:[b1,b2]$ +load(eigen)$ +innerproduct(a,b); +a.b; +unitvector(b); +unitvector(a); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +a / sqrt(innerproduct (a,a)); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +radcan(a / sqrt(conjugate(a).a)); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +load(vect)$ +v:[x*y,y*z,z*x]; +curl(v); +express(%); +express(%),diff; +div(v); +express(%),diff; +phi(x,y,z):=x^2+y*z; +express(grad(phi(x,y,z))); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +M:matrix([3,4,1],[6,8,2],[9,12,3]); +M2[i,j]:=i^2/(j+1); +genmatrix(M2,3,4); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +M3:entermatrix(2,2); +/* [wxMaxima: input end ] */ +/* [wxMaxima: question start ] */ +Answer 1, 2, 3 or 4 : +/* [wxMaxima: question end ] */ +/* [wxMaxima: answer start ] */ +4;4; +/* [wxMaxima: answer end ] */ +/* [wxMaxima: question start ] */ +Row 2 Column 1: +/* [wxMaxima: question end ] */ +/* [wxMaxima: answer start ] */ +3; +/* [wxMaxima: answer end ] */ +/* [wxMaxima: question start ] */ +Row 1 Column 1: +/* [wxMaxima: question end ] */ +/* [wxMaxima: answer start ] */ +1; +/* [wxMaxima: answer end ] */ +/* [wxMaxima: question start ] */ +Row 1 Column 2: +/* [wxMaxima: question end ] */ +/* [wxMaxima: answer start ] */ +5;1; +/* [wxMaxima: answer end ] */ +/* [wxMaxima: question start ] */ +Row 2 Column 2: +/* [wxMaxima: question end ] */ +/* [wxMaxima: answer start ] */ +8;2; +/* [wxMaxima: answer end ] */ + + +/* [wxMaxima: input start ] */ +ident(4); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +zeromatrix(2,3); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +diagmatrix(2,3); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +diagmatrix(2,matrix([3,4],[5,6])); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +ematrix(3,3,5,1,2); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ + M[2,3]; +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +matrix_size(M); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +matrix_size(M)[2]; +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +col(M,3); +m:row(M,2); +m[1,3]; +M[2,3]; +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +m[i,j]:=4*(i-1)+j$ +M:genmatrix(m,4,4); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ + +m[i,j]:=4*(i-1)+j$ +M:genmatrix(m,4,4); + +last(M); +length(M); + +F(N):=block( + local(m), + m[i,j]:=N*(i-1)+j, + return(genmatrix(m,N,N)) +)$ + +F(5); +F(N):=genmatrix(lambda([i,j],N*(i-1)+j),N,N)$ + +M:F(5)$ +submatrix(1,length(M),M,1,length(transpose(M))); + +minor(M,2,3); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +M:matrix([1,2],[3,4]); +M2:matrix([2,3],[4,5])$ +M+M2; +M-M2; +M*M2; +M/M2; +M.M2; +determinant(M); +adjoint(M); +invert(M).M; +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +M:matrix([5,0,1],[3,4,0],[1,1,6])$ +eigenvalues(M); +eigenvectors(M); +eigenvectors(M)[2][3][1]; +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +m[i,j]:=4*(i-1)+j$ +M:genmatrix(m,4,4); +submatrix(2,3,M,2,3); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: subsect start ] +HÁZI!!! + [wxMaxima: subsect end ] */ + + +/* [wxMaxima: comment start ] +Függvény készítés-e ennek az általános esetére! + [wxMaxima: comment end ] */ + + + +/* Old versions of Maxima abort on loading files that end in a comment. */ +"Created with wxMaxima 22.04.0"$ diff --git a/Maxima/HetedikOra.wxm b/Maxima/HetedikOra.wxm new file mode 100644 index 0000000..ca2dd7c --- /dev/null +++ b/Maxima/HetedikOra.wxm @@ -0,0 +1,85 @@ +/* [wxMaxima batch file version 1] [ DO NOT EDIT BY HAND! ]*/ +/* [ Created with wxMaxima version 22.04.0 ] */ +/* [wxMaxima: input start ] */ +kill(all)$ +f(x):=sin(4*x)-cos(2*x)+1$ +g:exp(x)/x$ +plot2d([f(x),g],[x,-2,2],[y,-5,5], + [xlabel,"x tengely"],[ylabel,"y tengely"], + [legend,"f(x)","g"], + [style,[lines,3,5],[points,0.5,4,4]], + [png_file,"kettos_grafikon.png"]); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +plot2d(sin(u),[u,0,%pi/2],[x,-0.2,1.8]); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +plot2d([parametric,cos(t),exp(t),[t,0,10]],[logy], + [nticks,1],[adapt_depth,1], + [grid2d,true], + [title, "Cím"], + [gnuplot_preamble,"set_grid_mytics; set title 'Exponenciális'"]); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +kor:x^2 + y^2 = 25$ +plot2d([parametric, kor, [x,-10, 10], [y,-10, 10]], + [xlabel,"x tengely"], [ylabel,"y tengely"], + [legend,"Kör egyenlete"], + [style,[lines,3,5],[points,0.5,4,4]]); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +l1:[1,3,2,5]$ l2:[3,2,1,5]$ +plot2d([discrete,l1,l2],[style,points]); +L:sort(create_list[l1[i],l2[i]],i,1,length(l1)); +plot2d([discrete,L]); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +load(stringproc)$ +of:openw("temp")$ +for i:0 thru 100 do + printf(of,"~g ~t ~g ~%",i,float(sin(i*2*%pi/100)))$ +close(of)$ +beolvas:read_nested_list("temp")$ +plot2d([discrete, beolvas]); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +L:map('matrix,create_list([i,float(sin(i*2*%pi/100))],i,0,10)); +write_data(L,"temp"); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +f(x,y):=sin(x)/cos(y); +plot3d([[f(x,y),[x,-%pi/2,-%pi/2],[y,-%pi/3,-%pi/3]], + [-f(x,y),[x,-%pi/2,-%pi/3],[y,-%pi/4,-%pi/4]]], +[azimuth,70],[elevation,30],[color_bar,true]); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +load(implicit_plot)$ +implicit_plot(sin(log(x))/y=exp(y)+tan(y),[x,-4,4],[y,-4,4]); +plot2d(sin(log(x))/y=exp(y)+tan(y),[x,-4,4],[y,-4,4]); +/* [wxMaxima: input end ] */ + + + +/* Old versions of Maxima abort on loading files that end in a comment. */ +"Created with wxMaxima 22.04.0"$ diff --git a/Maxima/KilencedikOra_Hazival.wxm b/Maxima/KilencedikOra_Hazival.wxm new file mode 100644 index 0000000..d6774c5 --- /dev/null +++ b/Maxima/KilencedikOra_Hazival.wxm @@ -0,0 +1,276 @@ +/* [wxMaxima batch file version 1] [ DO NOT EDIT BY HAND! ]*/ +/* [ Created with wxMaxima version 22.04.0 ] */ +/* [wxMaxima: title start ] +2D és 3D animációk + [wxMaxima: title end ] */ + + +/* [wxMaxima: input start ] */ +contour_plot(x^2+(y-(x^2)^(1/3))^2-1, [x,-1,1],[y,1,3],[legend,false]); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +plot2d([contour,x^2+(y-(x^2)^(1/3))^2-1],[x,-1,1],[y,1,3]); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +load(draw)$ +wxdraw3d( + explicit(x^2+(y-x^(2/3))^2-1,x,-1.015,1.0175,y,-1,3), + contour=map, + contour_levels=15 +); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +load(draw)$ +wxdraw3d( + enhanced3d=true, + explicit(x^2+(y-x^(2/3))^2-1,x,-1,1,y,-1,3), + contour=surface, + contour_levels=15, + view=[0,0] +); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +with_slider_draw(f,makelist(0.1*i,i,1,10), + makelist(parametric((f+i)*cos(t),(f+i)*sin(t),t,0,2*%pi),i,0,13), + grid=true, + xrange= [-10,10], + yrange=[-10,10], + proportional_axes='xy), +wxanimate_framerate=10; +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +with_slider_draw3d( + f,makelist(2*%pi*i/ 20,i,1,20), + enhanced3d=true, + explicit(sin(x+f)*cos(y-f),x,-2*%pi,2*%pi,y,-2*%pi,2*%pi), + xrange=[-2*%pi,2*%pi], + yrange=[-2*%pi,2*%pi], + proportional_axes='xyz), +wxanimate_framerate=10; +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: title start ] +Deriválás, integrálás + [wxMaxima: title end ] */ + + +/* [wxMaxima: subsect start ] +Deriválás + [wxMaxima: subsect end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +with_slider_draw( + f,makelist(%pi*2*i/100,i,0,100), + nticks=100,line_width=20, + nticks=100, color=green, parametric(cos(t),sin(t)*cos(t),t,-%pi/2+f,%pi/ 2+f), + nticks=100, color=black, parametric(cos(t),sin(t)*cos(t),t,%pi/2+f,3*%pi/ 2+f) +), wxanimate_framerate=100$ +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +f(x):=sqrt(x^2+2); +diff(f(x),x); +diff(diff(f(x),x),x); +diff(f(x),x,10); +diff(sqrt(x+y^2),x,1,y,2); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +f(z,t):=cos(z*t^2+phi(t,z)); +diff(f(z,t),t); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +depends(x,t); +depends(y,[z,t]); +depends([a,b,c],[x,y,z]); +dependencies; +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +diff(x^2*y*z); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: subsect start ] +Integrálás + [wxMaxima: subsect end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +f(x):=4*x^3+3; +integrate(f(x)=0,x); +integrate(f(x),x,0,4); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +integrate(%e^(-x^2),x,minf,inf); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +f(x):=(x^a)/((x+1)^(5/2)); +integrate(f(x),x,0,inf); +/* [wxMaxima: input end ] */ +/* [wxMaxima: question start ] */ +Is a an integer? +/* [wxMaxima: question end ] */ +/* [wxMaxima: answer start ] */ +yes; +/* [wxMaxima: answer end ] */ +/* [wxMaxima: question start ] */ +Is 2*a-3 positive, negative or zero? +/* [wxMaxima: question end ] */ +/* [wxMaxima: answer start ] */ +neg; +/* [wxMaxima: answer end ] */ +/* [wxMaxima: question start ] */ +Is a positive, negative or zero? +/* [wxMaxima: question end ] */ +/* [wxMaxima: answer start ] */ +0; +/* [wxMaxima: answer end ] */ +/* [wxMaxima: question start ] */ +Is a+1 positive, negative or zero? +/* [wxMaxima: question end ] */ +/* [wxMaxima: answer start ] */ +pos; +/* [wxMaxima: answer end ] */ +/* [wxMaxima: question start ] */ +Is 2*a+1 positive, negative or zero? +/* [wxMaxima: question end ] */ +/* [wxMaxima: answer start ] */ +pos; +/* [wxMaxima: answer end ] */ +/* [wxMaxima: question start ] */ +Is a-1 positive, negative or zero? +/* [wxMaxima: question end ] */ +/* [wxMaxima: answer start ] */ +neg; +/* [wxMaxima: answer end ] */ + + +/* [wxMaxima: input start ] */ +plot2d(beta(3/2-a,a+1),[a,-1,3/2],[y,0,25]); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: title start ] +Házi feladat + [wxMaxima: title end ] */ + + +/* [wxMaxima: subsect start ] +Tenzorszorzás maximával: +tetszőleges mátrix -és vektorra +nem lehet külső libet használni => saját logikával + [wxMaxima: subsect end ] */ + + +/* [wxMaxima: input start ] */ +/* Függvény definíciója a mátrixok szorzására */ +tensor_multiply(A, B) := + block( + [result], + result: makelist(makelist(0, j, 1, length(B[1])), i, 1, length(A)), /* Inicializáljuk az eredményt */ + for i: 1 thru length(A) do ( /* Az A mátrix sorainak iterálása */ + for j: 1 thru length(B[1]) do ( /* A B mátrix oszlopainak iterálása */ + for k: 1 thru length(A[1]) do ( /* A közös dimenzió mentén (oszlopok száma) iterálás */ + result[i][j]: result[i][j] + A[i][k] * B[k][j] /* A szorzás és az eredmény hozzáadása az eredmény mátrixhoz */ + ) + ) + ), + return(result) /* Az eredmény visszaadása */ + ); + +/* Függvény definíciója a mátrix és vektor szorzására */ +tensor_vector_multiply(A, v) := + block( + [result], + result: makelist(0, i, 1, length(A)), /* Inicializáljuk az eredmény vektort */ + for i: 1 thru length(A) do ( /* Az A mátrix sorainak iterálása */ + for j: 1 thru length(v) do ( /* A vektor elemek iterálása */ + result[i]: result[i] + A[i][j] * v[j][1] /* A szorzás és az eredmény hozzáadása az eredmény vektorhoz */ + ) + ), + return(result) /* Az eredmény visszaadása */ + ); + +/* Függvény definíciója a vektorok szorzására */ +tensor_vector_vector_multiply(v1, v2) := + block( + [result], + result: makelist(0, i, 1, length(v1)), /* Inicializáljuk az eredmény vektort */ + for i: 1 thru length(v1) do ( /* Az első vektor elemek iterálása */ + result[i]: v1[i][1] * v2[i][1] /* A szorzás és az eredmény hozzáadása az eredmény vektorhoz */ + ), + return(result) /* Az eredmény visszaadása */ + ); + +"A beadott mátrixok:"; +/* Definiáljuk a mátrixokat és a vektort */ +A: matrix([1, 2, 5], [3, 4, 7], [1, 6, 2]); +B: matrix([5, 6, 3], [7, 8, 8], [2, 1, 5]); +v: matrix([1], [2], [5]); +v2: matrix([2], [3], [6]); + +"A kiszámolt értékek:"; +"Mátrix . Mátrix"; +/* Tensorszorzás a két mátrix között */ +tensor_multiply(A, B); + +/* Tensorszorzás a mátrix és a vektor között */ +"Mátrix . Vektor"; +tensor_vector_multiply(A, v); + +/* Tensorszorzás a két vektor között */ +"Vektor . Vektor"; +result: tensor_vector_vector_multiply(v, v2)$ +sum(result[i],i,1,length(result)); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: subsect start ] +Spirál animáció (a körhöz hasonlóan) + [wxMaxima: subsect end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +with_slider_draw(a,makelist(0.1*i,i,1,10), + /* A Fermat-spirál egyenletét használtam. */ + makelist(parametric(a*sqrt(t)*cos(t),a*sqrt(t)*sin(t),t,0,20),i,1,13), + grid=true, + xrange= [-4,4], + yrange=[-4,4], + proportional_axes='xy), +wxanimate_framerate=10; +/* [wxMaxima: input end ] */ + + + +/* Old versions of Maxima abort on loading files that end in a comment. */ +"Created with wxMaxima 22.04.0"$ diff --git a/Maxima/MasodikOra.wxm b/Maxima/MasodikOra.wxm new file mode 100644 index 0000000..5e7aa16 --- /dev/null +++ b/Maxima/MasodikOra.wxm @@ -0,0 +1,234 @@ +/* [wxMaxima batch file version 1] [ DO NOT EDIT BY HAND! ]*/ +/* [ Created with wxMaxima version 22.04.0 ] */ +/* [wxMaxima: input start ] */ +logcontract(log(x)+log(y)); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +logexpand:true; +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +log(x*y); +log(x^n); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +trigexpand(lg(4)+lg(sin(π/6))+lg(tan(π/6))+lg(sin(π/3))); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +log10(a,b):=log(b)/log(10); +kif:log10(4)+log10(sin(%pi/6))+log10(tan(%pi/6))+log10(sin(%pi/3)); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kif:(exp(x)-1)/(exp(x/2)+1); +kif,ratsimp; +kif,radcan; +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +logkif:log((x+2)*(x-2))+log(x); +logkif,fullratsimp; +logkif,radcan; +logkif,logcontract; +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +kif:sqrt(2)*sqrt(3); +radcan(kif); +rootscontract(kif); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: title start ] +Programozási ismeretek + [wxMaxima: title end ] */ + + +/* [wxMaxima: section start ] +Adattípusok + [wxMaxima: section end ] */ + + +/* [wxMaxima: input start ] */ +rationalize(0.25); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +rationalize(0.1); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: comment start ] +Ez pedig egy hosszabb, szöveges, nem végrehajtható rész. + [wxMaxima: comment end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +A:round(bfloat(-4.3)); +B:"Ez egy string"; +oddp(4); /*Páratlan-e?*/ +evenp(4);/*Páros-e?*/ +integerp(A);/*Egész-e*/ +nonnegintegerp(A);/*Nemnegatív egész-e?*/ +floatnump(A); +bfloatp(A); +numberp(B); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: subsect start ] +Sztringek + [wxMaxima: subsect end ] */ + + +/* [wxMaxima: input start ] */ +stringdisp:false$ +S:"Helló \"Világ\"!\\"; +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +a:4; +b:string(a); +b+b; +c:concat(a,a); +/*concat("xx[",a,"]:",(expand((x+y)^3)));*/ +d:sconcat("xx[",a,"]:",expand((x+y)^3)); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: comment start ] +A stringproc csomag parancsai: + [wxMaxima: comment end ] */ + + +/* [wxMaxima: input start ] */ +stringp(b); +charat(d,10); +sequal(d,c); +slength(d); +sposition("+",d); +ssearch("+x",d); +d; +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: subsect start ] +Konstansok + [wxMaxima: subsect end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +%pi; %e; %i; +/*%pi:3;*/ +αβĦ; +limit(sin(x)*cos(y),x,inf); +limit(exp(x)*cos(x),x,inf); +limit(x^2,x,inf); +/*wxdraw2d(explicit(sin(x)*cos(x),x,-10,10));*/ +draw2d(explicit(sin(x)*cos(x),x,-10,10)); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: subsect start ] +Listák + [wxMaxima: subsect end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +lis:[1,sqrt(2),a+2,diff(sqrt(x),x)]; +lis[4]; +sqrt(lis); +lis+2*lis; +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +create_list(sqrt(p),p,1,4); +create_list(sqrt(p),p,[1,3,2,4]); +create_list([x,y^2],x,1,2,y,[3,2,1]); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +makelist(sqrt(p),p,1,4); +makelist(sqrt(p),p,[1,3,2,4]); +makelist(makelist([x,y^2],x,1,2),y,[3,2,1]); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +A:{a,{b,c,{d,e,d}},a}; +listify(A); +full_listify(A); +flatten(full_listify(A)); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: subsubsect start ] +Listaműveletek: + [wxMaxima: subsubsect end ] */ + + +/* [wxMaxima: input start ] */ +length(%); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +A:makelist(sin(x),x,0,%pi,%pi/10); +lmax(A); +lmin(A); +append(A,[5]); +join(A,A); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +B:makelist(n,n,5,1,-1); +/*B:top(makelist(n,n,1,5))*/; +pop(B); +B; +push(1,B); +sort(B); +reverse(sort(B)); +sort(B,'ordergreatp); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +R:matrix([7,8,7,2,8,3,7,4,2],[3,5,2,9,4,1,4,5,1],[a,b,c,d,e,f,g,h,i]); +transpose(R); +args(transpose(R)); +sort(args(transpose(R))); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +transpose(args(transpose(R))); /*ez így hülyeség*/ +sort(args(transpose(R))); +funmake('matrix,%); +/* [wxMaxima: input end ] */ + + + +/* Old versions of Maxima abort on loading files that end in a comment. */ +"Created with wxMaxima 22.04.0"$ diff --git a/Maxima/NegyedikOra.wxm b/Maxima/NegyedikOra.wxm new file mode 100644 index 0000000..5ae64bb --- /dev/null +++ b/Maxima/NegyedikOra.wxm @@ -0,0 +1,162 @@ +/* [wxMaxima batch file version 1] [ DO NOT EDIT BY HAND! ]*/ +/* [ Created with wxMaxima version 22.04.0 ] */ +/* [wxMaxima: subsect start ] +Kivételkezelés + [wxMaxima: subsect end ] */ + + +/* [wxMaxima: input start ] */ +ertek:random(5)$ +if ertek=0 then + error("Az érték nem lehet nulla, nullával nem osztunk.") +else + disp(1/ertek); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +warning("Ez egy figyelmeztetés"); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +h(x):=if x < 0 then throw(x) else f(x)$ +g(l):=catch(map(h,l)); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +g(makelist(k-3,k,0,10)); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: subsect start ] +Fájlkezelés + [wxMaxima: subsect end ] */ + + +/* [wxMaxima: input start ] */ +with_stdout("kimenet.txt",for i:1 thru 3 do print(ii," ",float(sin(ii)))); +printfile("kimenet.txt"); +/*system ("dir"); LINUX-on működik! */ +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +sigma:[matrix([0,1],[1,0]),matrix([0,-%i],[%i,0]),matrix([1,0],[0,-1])]; +ns(n,dim):=create_list(if i=n then 1 else 0, i, 1, dim); +save("maxparam.lisp",sigma, ns)$ +kill(all)$ +load("maxparam.lisp"); +sigma[1]; +ns(4,5); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(alll)$ + +fileid:openw("kimenet2.txt"); +for ii:1 thru 3 do + printf(fileid,"~d ~t ~g ~%",ii, sin(ii))$ +close(fileid)$ + +fileid:opena("kimenet2.txt"); +mondat:"~:(~r~) little apple~p so red and bright~% ~[where~;was~] dancing about on a tree one night...~%"$ +for ii:1 thru 2 do + printf(fileid, mondat, 3-ii, ii, ii-1)$ +close(fileid)$ +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ + +fileid:openw("sin.txt")$ +for ii:0.5 step 0.5 thru 2*%pi do + printf(fileid, "~g ~t ~g ~%",ii, sin(ii))$ +close(fileid)$ + +read_list("sin.txt"); +read_nested_list("sin.txt"); +read_matrix("sin.txt"); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +nthprime(N):=block( + n:0, + for ii:2 next next_prime(ii) while n 4 then + return(Nevek[k]) +); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +wxdraw2d( + label(["volgy",-%pi/2,-0.93]), + label(["csucs",%pi/2,1.05]), + label_alignment=center, + label_orientation=vertical, + label(["amplitudo",%pi/2-0.1,0.5]), + rectangle([%pi/2,0],[%pi/2,1]), + color=goldenrod,line_width=3, + explicit(sin(x),x,-3,3), + title="A szinuszgorbe reszei", + grid=true, + yrange=[-1,1.2], + user_preamble="set xzeroaxis lt -1 lw 0" +); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +load(draw)$ +lead(newton1)$ +a:sin(x)$ +b:cos(x)$ +xmin:newton(a-b,x,-2,1e-10); +xmax:newton(a-b,x,1,1e-10); +wxdraw2d(filled_func=a, + fill_color=yellow, + explicit(b,x,xmin,xmax), + filled_func=false, + color=green, + line_width=2, + key="sin(x)", + explicit(a,x,-%pi,%pi), + color=blue, + key="cos(x)", + explicit(b,x,-%pi,%pi) +); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +load(draw)$ +f(x):=exp(-(x-x0)^2/dx^2)$ +wxdraw2d(explicit(subst([x0=0,dx=1],f(x)),x,-3,3)); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +load(draw)$ +f(x):=exp(-(x-x0)^2/dx^2)$ +set_draw_defaults(file_name="wavepacket",terminal=animated_gif,delay=60)$ +animated_figure:makelist(gr2d(title="Gauss-függvény",key=sconcat("x0=2,dx=",i/3),explicit(subst([x0=2,dx=i/3],f(x)),x,-10,25)),i,1,30)$ +apply(draw,animated_figure)$ +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +wxdraw3d(surface_hide=true,color=purple, + explicit(sin(x*y),x,-2,2,y,-2,2) +); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +wxdraw3d(enhanced3d=true, + surface_hide=true, + color=red, + implicit(x^2-sin(y)=z^2,x,-2,2,y,-2,2,z,-2,2), + user_preamble="set ticslevel 0" +); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +wxdraw3d(nticks=500, color=salmon, + parametric(cos(t^2),sin(t^2),t^(1/(t+1E-3)),t,0.8,5) +); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +x(u,v):=2*(1-exp(u/(6*%pi)))*cos(u)*cos(v/2)^2$ +y(u,v):=-2*(1-exp(u/(6*%pi)))*sin(u)*cos(v/2)^2$ +z(u,v):=1-exp(u/(3*%pi))-sin(v)+exp(u/(6*%pi))*sin(v)$ +wxdraw3d(enhanced3d=true, view=[70,220], + parametric_surface(x(u,v),y(u,v),z(u,v),u,0,6*%pi,v,0,2*%pi), +user_preamble="set ticslevel 0"); +/* [wxMaxima: input end ] */ + + + +/* Old versions of Maxima abort on loading files that end in a comment. */ +"Created with wxMaxima 22.04.0"$ diff --git a/Maxima/OtodikOra.wxm b/Maxima/OtodikOra.wxm new file mode 100644 index 0000000..cdf08f6 --- /dev/null +++ b/Maxima/OtodikOra.wxm @@ -0,0 +1,173 @@ +/* [wxMaxima batch file version 1] [ DO NOT EDIT BY HAND! ]*/ +/* [ Created with wxMaxima version 22.04.0 ] */ +/* [wxMaxima: subsect start ] +Egyenletek + [wxMaxima: subsect end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +eq:a*x^2+b*x++c; +sol:solve(eq,x); +x:rhs(%[1]); +x:map(rhs,sol); +kill(x)$ +x:subst(sol[1],x); +solve(eq); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +x; +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +eq1:3*x+2*y-z=1$ +eq2:2*x-2*y+4*z=-2$ +eq3:-x+1/2*y-z=0$ +solve([eq1,eq2,eq3],[x,y,z]); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +eq:[0,0,0]$ +x:makelist(x[i],i,1,3); +eq[1]:3*x[1]+2*x[2]-x[3]=1$ +eq[2]:2*x[1]-2*x[2]+4*x[3]=-2$ +eq[3]:-x[1]+1/2*x[2]-x[3]=0$ +solve(eq,x); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +solve(logcontract(log(a)+log(x-3)-log(x))=0,x); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +solve(asin(cos(3*x))*(f(x)-1)); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: subsect start ] +Visszahelyettesítés + [wxMaxima: subsect end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +f(x):=a*x^2+b*x+c$ +sol:solve(f(x),x); +s1:sol[1]; +expand(subst(s1,f(x))); +for i in sol do + disp(expand(subst(i,f(x))))$ +expand(f(map(rhs,sol))); +f(x),sol[1],fullratsimp; +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: subsect start ] +Egyenletmegoldás zérushely-kereséssel + [wxMaxima: subsect end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +eq:acos(x)=atan(x)$ +eq:lhs(eq)-rhs(eq)$ +plot2d(eq,[x,-1,1])$ +solve(eq,x); +find_root(eq,x,-%pi,%pi); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +polip:x^7-2*x^6-4*x^5-x^3+x^2+6*x+4; +solve(polip,x); +plot2d(polip,[x,-2,3]); +find_root(polip,x,-2,3.3); +allroots(polip); +realroots(polip); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +load(mnewton)$ +mnewton(acos(x)-atan(x),x,0); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: subsect start ] +Feladatok: + [wxMaxima: subsect end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +eq:(x-1)*(x^2+x+1)=0$ +solve(eq); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +solve(logcontract(a+log(x-3)-log(x))=0,x); + +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +eq:x=cos(x)$ +wxplot2d([lhs(eq),rhs(eq)],[x,-3,3]); +find_root(eq,x,0,1); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +eq:acos(3*x)=2*asin(x)$ +eq:lhs(eq)-rhs(eq)$ +plot2d(eq,[x,-1,1])$ +solve(eq,x); +find_root(eq,x,-0.5,0.5); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +eq:x+sqrt(x)+x^(1/3)+x^(1/4)=4; +wxplot2d([lhs(eq),rhs(eq)],[x,-1,3]); +find_root(eq,x,0,2); +/* [wxMaxima: input end ] */ + + +/* [wxMaxima: input start ] */ +kill(all)$ +eq:max(x,2*x-2)=min(x^2-1,5-x); +wxplot2d([lhs(eq),rhs(eq)],[x,-5,5])$ +find_root(eq,x,-2,0); +find_root(eq,x,0,2); +find_root(eq,x,2,4); + +L:[-2,0,2,4]$ +for i:1 thru length(L)-1 do + disp(find_root(eq,x,L[i],L[i+1])); + +for i:0 thru 10 do + for j:0 thru 10 do + find_root(eq,x,i,j); +/* [wxMaxima: input end ] */ + + + +/* Old versions of Maxima abort on loading files that end in a comment. */ +"Created with wxMaxima 22.04.0"$