> restart:interface(warnlevel=0):#"m01_p16"

Se tiene un cilindro horizontal de 1 cm de diámetro y 50 cm de largo, cerrado por ambos extremos, dentro del cual, un émbolo de acero imantado de 2 cm de espesor separa dos masas iguales de aire, inicialmente a To=Tamb y po=pamb., y se pretende desplazar el émbolo 1 cm hacia un lado, con ayuda de un dispositivo electromagnético, y después (ya atemperado el sistema) soltarlo. Se pide:

a) Determinar la fuerza necesaria y el trabajo requerido para mover el émbolo en el caso de realizar el proceso lentamente.

b) Determinar la fuerza necesaria y el trabajo requerido para mover el émbolo en el caso de realizar el proceso rápidamente.

c) Velocidad y aceleración del émbolo en la posición de suelta y en el instante del primer paso por el punto medio del cilindro.

e) Integrar las ecuaciones del movimiento del émbolo y representar la posición en función del tiempo, suponiéndo que la fuerza de fricción es proporcional a la velocidad del émbolo, con un coeficiente de 10 N/(m/s).

Datos:

> read"../therm_eq.m":read"../therm_proc.m":with(therm_proc):unprotect(gamma):

> su1:="Aire":su2:="Acero_inox":dat:=[Di=0.01*m_,Ltotal=0.5*m_,Le=0.02*m_,x1=0.01*m_,coef=0.1*N_/(m_/s_)]:dat:=[op(dat),L=subs(dat,(Ltotal-Le)/2),A=evalf(subs(dat,Pi*Di^2/4))];

`:=`(dat, [Di = `+`(`*`(0.1e-1, `*`(m_))), Ltotal = `+`(`*`(.5, `*`(m_))), Le = `+`(`*`(0.2e-1, `*`(m_))), x1 = `+`(`*`(0.1e-1, `*`(m_))), coef = `+`(`/`(`*`(.1, `*`(N_, `*`(s_))), `*`(m_))), L = `+`(...

Image

Esquema:

> `:=`(Sistemas, [gas1, emb, gas2, amb])

> `:=`(Estados, [1 = inicial, 2 = final])

Ecs. const.:

> eqET:=subs(eq1_11,eq1_12);eqEE:=eq1_16;gdat:=get_gas_data(su1):sdat:=get_sol_data(su2):mE_:=subs(dat,sdat,A*Le*rho);dat:=op(dat),mE=mE_,Const,gdat,SI2,SI1:

`:=`(eqET, `/`(`*`(m), `*`(V)) = `/`(`*`(p), `*`(R, `*`(T))))

`:=`(eqEE, DU = `*`(m, `*`(c[v], `*`(DT))))

`:=`(mE_, `+`(`*`(0.1240929098e-1, `*`(kg_))))

a) Determinar la fuerza necesaria y el trabajo requerido para mover el émbolo en el caso de realizar el proceso lentamente.

> p1(x):=p0*L/(L+x);p1lin(x):=collect(convert(series(p1(x),x=0,2),polynom),p0);

`:=`(p1(x), `/`(`*`(p0, `*`(L)), `*`(`+`(L, x))))

`:=`(p1lin(x), `*`(`+`(1, `-`(`/`(`*`(x), `*`(L)))), `*`(p0)))

> p2(x):=p0*L/(L-x);p2lin(x):=collect(convert(series(p2(x),x=0,2),polynom),p0);

`:=`(p2(x), `/`(`*`(p0, `*`(L)), `*`(`+`(L, `-`(x)))))

`:=`(p2lin(x), `*`(`+`(1, `/`(`*`(x), `*`(L))), `*`(p0)))

> p11_:=evalf(subs(x=x1,dat,p1(x))):p21_:=evalf(subs(x=x1,dat,p2(x))):p11lin_:=evalf(subs(x=x1,dat,p1lin(x))):p21lin_:=evalf(subs(x=x1,dat,p2lin(x))):'p11'=evalf(p11_/(1e3*Pa_/kPa_),3);'p21'=evalf(p21_/(1e3*Pa_/kPa_),4);'p11lin'=evalf(p11lin_/(1e3*Pa_/kPa_),3);'p12lin'=evalf(p21lin_/(1e3*Pa_/kPa_),4);

p11 = `+`(`*`(96.0, `*`(kPa_)))

p21 = `+`(`*`(104.3, `*`(kPa_)))

p11lin = `+`(`*`(95.8, `*`(kPa_)))

p12lin = `+`(`*`(104.2, `*`(kPa_)))

La fuerza necesaria, suponiendo despreciable el rozamiento del émbolo con la pared,  será:

> Fnon(x):='(p2(x)-p1(x))*A';Fnon(x):=collect(eval(Fnon(x)),p0);Fnon_(x):=subs(dat,SI0,Fnon(x)):Flin(x):=expand((p2lin(x)-p1lin(x))*A);Flin_(x):=subs(dat,SI0,Flin(x)):plot([Fnon_(x),Flin_(x)],x=0..0.1,labels=["x(m)","F(N)"],colour=black);

`:=`(Fnon(x), `*`(`+`(p2(x), `-`(p1(x))), `*`(A)))

`:=`(Fnon(x), `*`(`+`(`/`(`*`(L), `*`(`+`(L, `-`(x)))), `-`(`/`(`*`(L), `*`(`+`(L, x))))), `*`(A, `*`(p0))))

`:=`(Flin(x), `+`(`/`(`*`(2, `*`(A, `*`(p0, `*`(x)))), `*`(L))))
Plot_2d

cuyo valor máximo es F(x1)=0,66 N (F(x1)=0,65 N con el modelo lineal).

> F_:=subs(SI1,evalf(subs(x=x1,dat,Fnon(x))));Flin_:=subs(SI1,evalf(subs(x=x1,dat,Flin(x))));

`:=`(F_, `+`(`*`(.6556367288, `*`(N_))))

`:=`(Flin_, `+`(`*`(.6544984696, `*`(N_))))

El trabajo consumido (despreciando el rozamiento) será:

> assume(x1<L,L>0):W:=Int('Fnon(x)',x=0..x1);W:=(combine(factor(value(W)),ln));Wlin:=int(Flin(x),x=0..x1);

`:=`(W, Int(Fnon(x), x = 0 .. x1))
`:=`(W, int(`+`(`-`(`/`(`*`(2, `*`(L, `*`(x, `*`(A, `*`(p0))))), `*`(`+`(`-`(L), x), `*`(`+`(L, x)))))), x = 0 .. x1))

`:=`(Wlin, `/`(`*`(A, `*`(p0, `*`(`^`(x1, 2)))), `*`(L)))

resultando un valor de W=3,3.10-3 J en ambos modelos.

> W_:=subs(SI1,evalf(simplify(subs(dat,W)))):'W'=evalf(W_,2);Wlin_:=subs(SI1,evalf(subs(dat,Wlin)));

W = `+`(`-`(`/`(`*`(0.24e4, `*`(kg_, `*`(`^`(m_, 2), `*`(int(`/`(`*`(x), `*`(`+`(`-`(`*`(36., `*`(`^`(m_, 2)))), `*`(0.62e3, `*`(`^`(x, 2)))))), x = 0. .. `+`(`*`(0.10e-1, `*`(m_)))))))), `*`(`^`(s_, ...

`:=`(Wlin_, `+`(`*`(0.3272492348e-2, `*`(J_))))

b) Determinar la fuerza necesaria y el trabajo requerido para mover el émbolo en el caso de realizar el proceso rápidamente.

> p1(x):=p0*(L/(L+x))^gamma;p1lin(x):=collect(convert(series(p1(x),x=0,2),polynom),p0);

`:=`(p1(x), `*`(p0, `*`(`^`(`/`(`*`(L), `*`(`+`(L, x))), gamma))))

`:=`(p1lin(x), `*`(`+`(1, `-`(`/`(`*`(gamma, `*`(x)), `*`(L)))), `*`(p0)))

> p2(x):=p0*(L/(L-x))^gamma;p2lin(x):=collect(convert(series(p2(x),x=0,2),polynom),p0);

`:=`(p2(x), `*`(p0, `*`(`^`(`/`(`*`(L), `*`(`+`(L, `-`(x)))), gamma))))

`:=`(p2lin(x), `*`(`+`(1, `/`(`*`(gamma, `*`(x)), `*`(L))), `*`(p0)))

> p11_:=evalf(subs(x=x1,dat,p1(x))):p21_:=evalf(subs(x=x1,dat,p2(x))):p11lin_:=evalf(subs(x=x1,dat,p1lin(x))):p21lin_:=evalf(subs(x=x1,dat,p2lin(x))):'p11'=evalf(p11_/(1000*Pa_/kPa_),3);'p21'=evalf(p21_/(1000*Pa_/kPa_),4);'p11lin'=evalf(p11lin_/(1000*Pa_/kPa_),3);'p21lin'=evalf(p21lin_/(1000*Pa_/kPa_),4);

p11 = `+`(`*`(94.4, `*`(kPa_)))

p21 = `+`(`*`(106.1, `*`(kPa_)))

p11lin = `+`(`*`(94.2, `*`(kPa_)))

p21lin = `+`(`*`(105.8, `*`(kPa_)))

La fuerza necesaria (despreciando el rozamiento) será:

> Fnon(x):='(p2(x)-p1(x))*A';Fnon(x):=collect(eval(Fnon(x)),p0);Fnon_(x):=subs(dat,SI0,Fnon(x)):Flin(x):=expand((p2lin(x)-p1lin(x))*A);Flin__(x):=subs(dat,SI0,Flin(x)):plot([Fnon_(x),Flin__(x)],x=0..0.1,labels=["x(m)","F(N)"],colour=black);

`:=`(Fnon(x), `*`(`+`(p2(x), `-`(p1(x))), `*`(A)))

`:=`(Fnon(x), `*`(`+`(`^`(`/`(`*`(L), `*`(`+`(L, `-`(x)))), gamma), `-`(`^`(`/`(`*`(L), `*`(`+`(L, x))), gamma))), `*`(A, `*`(p0))))

`:=`(Flin(x), `+`(`/`(`*`(2, `*`(A, `*`(p0, `*`(gamma, `*`(x))))), `*`(L))))
Plot_2d

cuyo valor máximo es F(x1)=0,92 N en ambos modelos.

> F_:=subs(SI1,evalf(subs(x=x1,dat,Fnon(x))));Flin_:=subs(SI1,evalf(subs(x=x1,dat,Flin(x))));

`:=`(F_, `+`(`*`(.9182508484, `*`(N_))))

`:=`(Flin_, `+`(`*`(.9160839071, `*`(N_))))

El trabajo consumido (despreciando el rozamiento) será:

> W:=Int('Fnon(x)',x=0..x1);eval(W);W:=simplify(expand(value(W)));Wlin:=int(Flin(x),x=0..x1);W_:=evalf(subs(x=x1,dat,SI0,W))*J_:Wlin_:=subs(SI1,evalf(subs(x=x1,dat,Wlin))):'W'=evalf(W_,2);

`:=`(W, Int(Fnon(x), x = 0 .. x1))

Int(`*`(`+`(`^`(`/`(`*`(L), `*`(`+`(L, `-`(x)))), gamma), `-`(`^`(`/`(`*`(L), `*`(`+`(L, x))), gamma))), `*`(A, `*`(p0))), x = 0 .. x1)
`:=`(W, `+`(`-`(`/`(`*`(A, `*`(p0, `*`(`+`(`*`(2, `*`(L)), `-`(`*`(`^`(L, `+`(1, gamma)), `*`(`^`(`/`(1, `*`(`+`(L, x1))), gamma)))), `*`(`^`(`+`(L, `-`(x1)), `+`(`-`(gamma))), `*`(`^`(L, gamma), `*`(...

`:=`(Wlin, `/`(`*`(A, `*`(p0, `*`(gamma, `*`(`^`(x1, 2))))), `*`(L)))

W = `+`(`*`(0.46e-2, `*`(J_)))

c) Velocidad y aceleración del émbolo en la posición de suelta y en el instante del primer paso por el punto medio del cilindro.

> p10:=p0*(L/(L+x1));p1(x):=p10*((L+x1)/(L+x))^gamma;p1lin_1(x):=factor(convert(series(p1(x),x=0,2),polynom));p1lin_2(x):=expand(convert(series(p1lin_1(x),x1=0,2),polynom));p1lin(x):=collect(subsop(4=0,6=0,p1lin_2(x)),{p0});

`:=`(p10, `/`(`*`(p0, `*`(L)), `*`(`+`(L, x1))))

`:=`(p1(x), `/`(`*`(p0, `*`(L, `*`(`^`(`/`(`*`(`+`(L, x1)), `*`(`+`(L, x))), gamma)))), `*`(`+`(L, x1))))

`:=`(p1lin_1(x), `/`(`*`(p0, `*`(`^`(`/`(`*`(`+`(L, x1)), `*`(L)), gamma), `*`(`+`(L, `-`(`*`(gamma, `*`(x))))))), `*`(`+`(L, x1))))

`:=`(p1lin_2(x), `+`(p0, `-`(`/`(`*`(p0, `*`(gamma, `*`(x))), `*`(L))), `/`(`*`(x1, `*`(p0, `*`(gamma))), `*`(L)), `-`(`/`(`*`(x1, `*`(p0, `*`(`^`(gamma, 2), `*`(x)))), `*`(`^`(L, 2)))), `-`(`/`(`*`(x...

`:=`(p1lin(x), `*`(`+`(1, `-`(`/`(`*`(gamma, `*`(x)), `*`(L))), `/`(`*`(x1, `*`(gamma)), `*`(L)), `-`(`/`(`*`(x1), `*`(L)))), `*`(p0)))

> p20:=p0*(L/(L-x1));p2(x):=p20*((L-x1)/(L-x))^gamma;p2lin_1(x):=factor(convert(series(p2(x),x=0,2),polynom));p2lin_2(x):=expand(convert(series(p2lin_1(x),x1=0,2),polynom));p2lin(x):=collect(subsop(4=0,6=0,p2lin_2(x)),{p0});

`:=`(p20, `/`(`*`(p0, `*`(L)), `*`(`+`(L, `-`(x1)))))

`:=`(p2(x), `/`(`*`(p0, `*`(L, `*`(`^`(`/`(`*`(`+`(L, `-`(x1))), `*`(`+`(L, `-`(x)))), gamma)))), `*`(`+`(L, `-`(x1)))))

`:=`(p2lin_1(x), `/`(`*`(p0, `*`(`^`(`/`(`*`(`+`(L, `-`(x1))), `*`(L)), gamma), `*`(`+`(L, `*`(gamma, `*`(x)))))), `*`(`+`(L, `-`(x1)))))

`:=`(p2lin_2(x), `+`(p0, `/`(`*`(p0, `*`(gamma, `*`(x))), `*`(L)), `-`(`/`(`*`(x1, `*`(p0, `*`(gamma))), `*`(L))), `-`(`/`(`*`(x1, `*`(p0, `*`(`^`(gamma, 2), `*`(x)))), `*`(`^`(L, 2)))), `/`(`*`(x1, `...

`:=`(p2lin(x), `*`(`+`(1, `/`(`*`(gamma, `*`(x)), `*`(L)), `-`(`/`(`*`(x1, `*`(gamma)), `*`(L))), `/`(`*`(x1), `*`(L))), `*`(p0)))

> eqM:=mE*diff(x(t),t,t)=Fu(x);xp2-xp20=Int(2*diff(x(t),t,t),x=x1..0);eqE:=Ec-Ec0=Int(Fu(x),x=x1..x);acellin(x):=factor(expand((p1lin(x)-p2lin(x))*A/mE));acellinx1:=convert(series(subs(x=x1,acellin(x)),x1,2),polynom);acellin0:=convert(series(subs(x=0,acellin(x)),x1,2),polynom);vellin0:=convert(series(sqrt(2*int(acellin(x),x=x1..0)),x1,2),polynom);

`:=`(eqM, `*`(mE, `*`(diff(x(t), `$`(t, 2)))) = Fu(x))

`+`(xp2, `-`(xp20)) = Int(`+`(`*`(2, `*`(diff(x(t), `$`(t, 2))))), x = x1 .. 0)

`:=`(eqE, `+`(Ec, `-`(Ec0)) = Int(Fu(x), x = x1 .. x))

`:=`(acellin(x), `+`(`/`(`*`(2, `*`(A, `*`(p0, `*`(`+`(`-`(`*`(gamma, `*`(x))), `*`(x1, `*`(gamma)), `-`(x1)))))), `*`(mE, `*`(L)))))

`:=`(acellinx1, `+`(`-`(`/`(`*`(2, `*`(A, `*`(x1, `*`(p0)))), `*`(mE, `*`(L))))))

`:=`(acellin0, `+`(`/`(`*`(2, `*`(A, `*`(p0, `*`(`+`(`-`(1), gamma), `*`(x1))))), `*`(mE, `*`(L)))))
`:=`(vellin0, `*`(`^`(2, `/`(1, 2)), `*`(`^`(`/`(`*`(A, `*`(p0, `*`(`+`(`-`(gamma), 2)))), `*`(mE, `*`(L))), `/`(1, 2)), `*`(x1))))

> gamma_:=subs(dat,gamma):deqlin:=mE*diff(x(t),t,t)='(p1lin(x)-p2lin(x))*A';deqlin:=mE*diff(x(t),t,t)=factor(subs(x=x(t),(p1lin(x)-p2lin(x))*A));gamma:=omega^2/2/A/p0*mE*L:expand(deqlin/mE);

`:=`(deqlin, `*`(mE, `*`(diff(x(t), `$`(t, 2)))) = `*`(`+`(p1lin(x), `-`(p2lin(x))), `*`(A)))

`:=`(deqlin, `*`(mE, `*`(diff(x(t), `$`(t, 2)))) = `+`(`/`(`*`(2, `*`(p0, `*`(`+`(`-`(`*`(gamma, `*`(x(t)))), `*`(x1, `*`(gamma)), `-`(x1)), `*`(A)))), `*`(L))))

diff(x(t), `$`(t, 2)) = `+`(`-`(`*`(`^`(omega, 2), `*`(x(t)))), `*`(x1, `*`(`^`(omega, 2))), `-`(`/`(`*`(2, `*`(A, `*`(x1, `*`(p0)))), `*`(mE, `*`(L)))))

> sol1:=dsolve({expand(deqlin)/mE,x(0)=x1,D(x)(0)=0},x(t));omega:=sqrt(2*ga_*A*p0/mE/L);xlin(t):=rhs(sol1);T:=2*Pi/omega;T_:=evalf(subs(ga_=gamma_,dat,SI0,T))*s_;plot(subs(ga_=gamma_,dat,SI0,xlin(t)),t=0..0.1,color=black);

`:=`(sol1, x(t) = `+`(`/`(`*`(2, `*`(cos(`*`(omega, `*`(t))), `*`(A, `*`(x1, `*`(p0))))), `*`(L, `*`(mE, `*`(`^`(omega, 2))))), `/`(`*`(`+`(`*`(x1, `*`(`^`(omega, 2), `*`(mE, `*`(L)))), `-`(`*`(2, `*`...

`:=`(omega, `*`(`^`(2, `/`(1, 2)), `*`(`^`(`/`(`*`(ga_, `*`(A, `*`(p0))), `*`(mE, `*`(L))), `/`(1, 2)))))

`:=`(xlin(t), `+`(`/`(`*`(cos(`*`(`^`(2, `/`(1, 2)), `*`(`^`(`/`(`*`(ga_, `*`(A, `*`(p0))), `*`(mE, `*`(L))), `/`(1, 2)), `*`(t)))), `*`(x1)), `*`(ga_)), `/`(`*`(`/`(1, 2), `*`(`+`(`*`(2, `*`(x1, `*`(...

`:=`(T, `/`(`*`(Pi, `*`(`^`(2, `/`(1, 2)))), `*`(`^`(`/`(`*`(ga_, `*`(A, `*`(p0))), `*`(mE, `*`(L))), `/`(1, 2)))))

`:=`(T_, `+`(`*`(0.7312834178e-1, `*`(s_))))
Plot_2d

> acellin0_:=subs(ga_=gamma_,dat,acellin0):'acellin0'=evalf(acellin0_,4);acellinx1_:=subs(ga_=gamma_,dat,acellinx1):'acellinx1'=evalf(acellinx1_,4);vellin0_:=evalf(subs(ga_=gamma_,dat,SI0,vellin0))*m_/s_:'vellin0'=evalf(vellin0_,2);x_acellin_0:=solve(subs(dat,acellin(x))=0,x):'x_acellin_0'=evalf(x_acellin_0,2);

acellin0 = `+`(`/`(`*`(21.08, `*`(m_)), `*`(`^`(s_, 2))))
acellinx1 = `+`(`-`(`/`(`*`(52.74, `*`(m_)), `*`(`^`(s_, 2)))))

vellin0 = `+`(`/`(`*`(.56, `*`(m_)), `*`(s_)))

x_acellin_0 = `+`(`-`(`*`(0.73e-2, `*`(m_))))

e) Integrar las ecuaciones del movimiento del émbolo y representar la posición en función del tiempo, suponiéndo que la fuerza de fricción es proporcional a la velocidad del émbolo, con un coeficiente de 10 N/(m/s).

> gamma:='gamma':deq1:=mE*diff(x(t),t,t)='(p1(x)-p2(x))*A-coef*diff(x(t),t)';deq1_:=subs(dat,SI0,deq1);

`:=`(deq1, `*`(mE, `*`(diff(x(t), `$`(t, 2)))) = `+`(`*`(`+`(p1(x), `-`(p2(x))), `*`(A)), `-`(`*`(coef, `*`(diff(x(t), t))))))

`:=`(deq1_, `+`(`*`(0.1240929098e-1, `*`(diff(x(t), `$`(t, 2))))) = `+`(`*`(1.083113416, `*`(`^`(`/`(1, `*`(`+`(.2400000000, x))), 1.399673108))), `-`(`*`(1.047613060, `*`(`^`(`/`(1, `*`(`+`(.24000000...

> with(DEtools):DEplot(deq1_,x(t),t=0..1,{[x(0)=subs(dat,x1)/m_,D(x)(0)=0]},stepsize=0.001,linecolour=black);

Plot_2d

> x_acel0_:=fsolve(subs(dat,SI0,(p1(x)-p2(x))*A),x=0..0.03)*m_:'x_acel0'=evalf(x_acel0_);

x_acel0 = `+`(`*`(0.2856993840e-2, `*`(m_)))

> Int1:='int(p1(x)*A,x=x1..x_acel0_)';Int1_:=subs(dat,SI0,Int1)*J_:'Int1'=evalf(Int1_,2);Int2:='int(p2(x)*A,x=x1..x_acel0_)';Int2_:=subs(dat,SI0,Int2)*J_:'Int2'=evalf(Int2_,2);DInt12_:=Int1_-Int2_;Ec_xacel0_:=subs(dat,mE*subs(dat,sqrt(2*int(acellin(x),x=x1..x_acel0_)))^2/2);Emdf_xacel0_:=DInt12_-Ec_xacel0_;

`:=`(Int1, int(`*`(p1(x), `*`(A)), x = x1 .. x_acel0_))
Int1 = `+`(`-`(`*`(0.54e-1, `*`(J_))))
`:=`(Int2, int(`*`(p2(x), `*`(A)), x = x1 .. x_acel0_))
Int2 = `+`(`-`(`*`(0.58e-1, `*`(J_))))

`:=`(DInt12_, `+`(`*`(0.371600867e-2, `*`(J_))))

`:=`(Ec_xacel0_, `+`(`*`(0.3711304630e-2, `*`(J_))))

`:=`(Emdf_xacel0_, `+`(`*`(0.4704040e-5, `*`(J_))))

Baja fricción quiere decir Emdf<<Ecmax.

Se puede estimar el tiempo de relajación por coef*vel^2*t=Ec.

> t_:=subs(dat,Ec_xacel0_/(coef*vellin0_^2));

`:=`(t_, `+`(`*`(.1172133661, `*`(s_))))

>