Dirichlet BC: Wave generated by perturbation of end

Manipulate[Plot[UnitStep[t-x]*(t-x)*Sech[t-x],{x,0,10},PlotRange->{0,1}],{t,0,14,0.1}]

Dirichlet BC : Reflection of left moving wave

Manipulate[Plot[UnitStep[x-t]*Sech[x+t-10]+UnitStep[t-x]*(Sech[x+t-10]-Sech[t-x-10]),{x,0,20},PlotRange->{-1,1}],{t,0,35,0.1}]

Neumann BC : Reflection of left moving wave

Manipulate[Plot[UnitStep[x-t]*Sech[x+t-10]+UnitStep[t-x]*(Sech[x+t-10]+Sech[t-x-10]),{x,0,20},PlotRange->{0,2}],{t,0,35,0.1}]

The Wave Equation on the Half Line : Dirichlet BCs

Manipulate[Plot[1/(2*Cosh[x+t-20])+(UnitStep[x-t]-UnitStep[t-x])/(2*Cosh[x-t+20])+(UnitStep[t-x]*(t-x))/(1+(t-x)^2),{x,0,40},PlotRange->{-1,1},PlotLabel->"Wave equation with Dirichlet BC"],{t,0,50}]
Manipulate[Plot[{1/(2*Cosh[x+t-20])+(UnitStep[x-t]-UnitStep[t-x])/(2*Cosh[x-t+20])+(UnitStep[t-x]*(t-x))/(1+(t-x)^2),1/(2*Cosh[x+t-20]),(UnitStep[x-t]-UnitStep[t-x])/(2*Cosh[x-t+20])+(UnitStep[t-x]*(t-x))/(1+(t-x)^2)},{x,0,40},PlotRange->{-1,1},PlotLabel->"Wave equation with Dirichlet BC (with decomposition)",PlotLegends->{"superposition","left mover","right mover"}],{t,0,50}]

Manipulate[Plot[(x+t-20)/(2*Cosh[x+t-20])+(UnitStep[x-t]*(x-t-20))/(2*Cosh[x-t-20])-(UnitStep[t-x]*(t-x-20))/(2*Cosh[t-x-20]),{x,0,40},PlotRange->{-0.75,0.75},PlotLabel->"Wave equation with Dirichlet BC"],{t,0,70}]
Manipulate[Plot[{(x+t-20)/(2*Cosh[x+t-20])+(UnitStep[x-t]*(x-t-20))/(2*Cosh[x-t-20])-(UnitStep[t-x]*(t-x-20))/(2*Cosh[t-x-20]),(x+t-20)/(2*Cosh[x+t-20]),(UnitStep[x-t]*(x-t-20))/(2*Cosh[x-t-20])-(UnitStep[t-x]*(t-x-20))/(2*Cosh[t-x-20])},{x,0,40},PlotRange->{-0.75,0.75},PlotLabel->"Wave equation with Dirichlet BC (with decomposition)",PlotLegends->{"superposition","left mover","right mover"}],{t,0,70}]

The Wave Equation on the Half Line: Neumann BCs

Manipulate[Plot[(1/2)*(Cos[x+t]*Log[1+(x+t)^2]+Cos[x-t]*Log[1+(x-t)^2]),{x,0,30},PlotRange->{-7,7},PlotLabel->"Wave equation with Neumann BC"],{t,0,20}]
Manipulate[Plot[{(1/2)*(Cos[x+t]*Log[1+(x+t)^2]+Cos[x-t]*Log[1+(x-t)^2]),(1/2)*Cos[x+t]*Log[1+(x+t)^2],Cos[x-t]*Log[1+(x-t)^2]},{x,0,30},PlotRange->{-7,7},PlotLabel->"Wave equation with Neumann BC (with decomposition)",PlotLegends->{"superposition","left mover","right mover"}],{t,0,20}]

Manipulate[Plot[Cos[x+t]+Cos[x-t]-UnitStep[t-x]*(t-x)^2,{x,0,20},PlotRange->{-40,2}],{t,0,30}]

Manipulate[Plot[Cos[x+t]+Cos[x-t]-UnitStep[t-x]*((t-x)*(t-x-2)+2*Log[1+t-x]),{x,0,15},PlotRange->{-30,2.5},PlotLabel->"Wave equation with Neumann BC"],{t,0,25}]
Manipulate[Plot[{Cos[x+t]+Cos[x-t]-UnitStep[t-x]*((t-x)*(t-x-2)+2*Log[1+t-x]),Cos[x+t],Cos[x-t]-UnitStep[t-x]*((t-x)*(t-x-2)+2*Log[1+t-x])},{x,0,15},PlotRange->{-30,2.5},PlotLabel->"Wave equation with Neumann BC (with decomposition)",PlotLegends->{"superposition","left mover","right mover"}],{t,0,25}]