Kitonum

20444 Reputation

26 Badges

16 years, 60 days

MaplePrimes Activity


These are answers submitted by Kitonum

f := (x1, t1)->eval(u(x, t), (pds:-value(t = t1))(x1)):

# Examples 
f(0, 0.1); 
f(0, 0.7); 
f(0.3, 0.3);

               

 

 

 

For example you can do this using the loop with while :

restart;
n:=294912: d:=8:
r:=irem(n,d):
while r=0 do
n:=n/d; r:=irem(n,d);
od:
n;

                                                          9

restart;
R:=Student:-MultivariateCalculus:-LagrangeMultipliers(z,[4*x-3*y+8*z-5,z^2-x^2-y^2], [x,y,z], output=detailed);
P1:=plots:-intersectplot(4*x-3*y+8*z-5=0,z^2-x^2-y^2=0, x=-1.7..1.4, y=-1.4..1.4, z=-0.4..2.1, color=blue, thickness=2, axes=normal):
P2:=plots:-pointplot3d([eval([x,y,z],R[1]),eval([x,y,z],R[2])], color=red, symbolsize=12, symbol=solidsphere):
plots:-display(P1,P2);

    

Using the  Student:-Calculus1:-Roots  command, we find 2 real roots of the equation  log[2](7*x/10)=log[3](3*x-1)  and, based on the plot, find the solution to the inequality:

restart;
Student:-Calculus1:-Roots(log[2](7*x/10)=log[3](3*x-1));
plot([log[2](7*x/10),log[3](3*x-1)], x=0..20, -3..4, color=[red,blue], numpoints=5000, size=[800,400]);

                


So the result is   0.3730125034<= x <= 16.60731835

I replaced your operators  Not, Or  and so on (I never used them)  with more standard ones (not, or, and, implies) in prefix form . As a result of simplifications in 2 ways, we get  false , that is, your expression is internally contradictory for any values of the variables  x  and  y , just as, for example, x and not x  is contradictory.

restart;
expr:=`and`(
   `not`(`or`(`or`(0 >- 0, y^3=x), 
     `and`(((y*x - 0^0)^2 + (y^2 - x^2)^2)*(y^2 + x^2) > 
       0, 0 <- (y^3 - x)*(y - x^3)^3, 
      `implies`(y + 2*x >= 2*y^3 + x^3, 
       `or`(y + x < y^3 + x^3)), `not`((y^3 - x)*(y - x^3) = 0), 
      0 >= 0), y <> x^3)));
convert(expr, 'boolean_function'); # The first way
Logic:-BooleanSimplify(expr); # The second way

      

Do  

factor(simplify((2)));

 

restart;
with(plots): with(plottools):
Sph:=display(sphere(),spacecurve([cos(t),sin(t),0], t=0..2*Pi, color=red, thickness=3), orientation=[60,60,20]):
animate(display@rotate,[Sph,phi,[[0,0,0],[0,0,1]]], phi=0..2*Pi, frames=90, axes=none, paraminfo=false);

                   

 

In my opinion, all 3 limits were found correctly. We obtain the first limit if we substitute gamma = 0  in A and simplify. The second limit is the generic result for arbitrary parameter values. The third limit does not contradict the second, since  subject to conditions on parameters  sigma__e>0 , sigma__v>0 , sigma__d>0  will be  -sigma__d*sigma__e^2+sqrt(sigma__d^2*sigma__e^4) = 0

restart;
leader:=0:
parms:=[colour=red,thickness=0,linestyle =dash]:
i:=ListTools:-Search(thickness=0, parms);
 if leader=0 then parms:=subsop(i=(thickness=3),parms) fi:
parms;
plots:-display(plottools:-line([1,2], [3,4]),op(parms));

Let us introduce the concept of sublists of a given list and somewhat generalize the problem.

Definitions1. A list  N  is called a sublist of  L  if every element of  N  is included in  L  and these elements in L are in the same order as in  .

Definitions2. The list  N  is called a sublist of the list  L  in the sense of definition1; moreover, the elements of  N  are in  L  next to each other.

The procedure  IsSubList  tests in the sense of the first or second definition. This is indicated by the third formal parameter.

restart;
IsSubList:=proc(N::list,L::list,i::posint)
local n, P, T, k, M;
uses ListTools, combinat;
n:=nops(N);
P:=map([ListTools:-SearchAll],N,L);
T:= cartprod(P);
k := 0; 
while not T[finished] do k := k+1; M[k] := T[nextvalue]() end do: M:=convert(M, list):
if i=1 then
if not (convert(N,set) subset convert(L,set)) then return false else if `or`(seq(`and`(seq(m[j]<m[j+1],j=1..nops(N)-1)), m=M)) then true else false fi; fi; else
if not (convert(N,set) subset convert(L,set)) then return false else if `or`(seq(`and`(seq(m[j]<m[j+1] and m[j]+1=m[j+1] ,j=1..nops(N)-1)), m=M)) then true else false fi; fi; 
fi;
end proc:


Examples of use:

N:=[7,2,4]:
L1:=[7,4,2,7,2,4]:
L2:=[7,7,7,7,2,2,2,7,4]:
L3:=[7,2,2,7]:
                             
IsSubList(N,L1,1);
IsSubList(N,L2,1);
IsSubList(N,L1,2);
IsSubList(N,L2,2);
IsSubList(N,L3,1);
IsSubList(N,L3,2);

                                                       true
                                                       true
                                                       true
                                                       false
                                                       false
                                                       false

A procedure named  IsSameOrder  does this. For the comparison to be correct, all other elements of the lists L1  and L2  must differ from the elements of the list  N  in order to uniquely determine the positions of the elements of the list  N  in the lists  L1  and  L2 . So I changed 2 elements in  L1  and  L2 .

restart;
IsSameOrder:=proc(N,L)
local n, P;
uses ListTools;
n:=nops(N);
P:=map(ListTools:-Search,N,L);
if `and`(seq(P[i+1]-P[i]>0, i=1..n-1)) then true else false fi; 
end proc:


Examples of use:

N:=[7,2,4]:
L1:=[1,6,5,7,3,2,9,4]:
L2:=[2,1,4,5,6,7,3,9]:
IsSameOrder(N,L1);
IsSameOrder(N,L2);

                                                 true
                                                false

restart;
p:=2345: q:=1536:
dp:=convert(p,base,10);
dq:=convert(q,base,10);
S:=`intersect`(convert~([dp,dq],set)[]);
dp1:=remove(`in`, dp, S);
dq1:=remove(`in`, dq, S);
p1:=add(dp1[i]*10^(i-1), i=1..nops(dp1));
q1:=add(dq1[i]*10^(i-1), i=1..nops(dq1));

 

We can easily do without loops when making animation. I also multiplied each frame 10 times so that the frames did not flash too often. Now each frame lasts approximately 1 second. In addition, the scales along the axes have been adjusted to make the plot look more realistic:

restart;	
with(plots):
display(seq(plot(sin(j*x)^j, x=0..2*Pi, color=red, scaling=constrained) $ 10,j=1..10), insequence);

You should use the assignment operator, not the equality one:

f(x):=x^5+x:
g(x):=f(x-2)+3:
plot([f(x), g(x)], x=-3..5, y=-10..10, color=[red,blue]);

 

To solve we must first introduce a coordinate system. The vertex with an angle of 52 degrees will be denoted by  A(0,0,0) , the second vertex by  B(12,0,0) . To find the coordinates of the third vertex  C  of this tetrahedron opposite side  AB , we use the law of sines. The vertex of this tetrahedron is designated by  S .

restart;
with(geom3d):
AC:=fsolve(AC/sin(103*Pi/180)=12/sin(Pi-(52+103)*Pi/180)):
BC:=fsolve(BC/sin(52*Pi/180)=12/sin(Pi-(52+103)*Pi/180)):
point(A,0,0,0): point(B,12,0,0): point(C,AC*cos(52*Pi/180),AC*sin(52*Pi/180),0):
h:=AC*tan(34*Pi/180):
point(S,coordinates(C)[1..2][],h):
geom3d:-gtetrahedron(T, [A,B,C,S]):
draw(T, color="LightBlue", scaling=constrained, transparency=0.8, labels=[x,y,z], orientation=[-65,60]);

                     

I think you can easily do the rest yourself.

 

2 3 4 5 6 7 8 Last Page 4 of 283