Manipulate[
eq1=(∂_(t,t))θ[t]== Sin[θ[t]]Cos[θ[t]]((((∂_t)ϕ[t]))^2)+(-Sin[θ[t]]Cos[α]+Cos[θ[t]]Sin[α]Sin[ϕ[t]]);
eq2=ϕ''[t]== Sin[θ[t]]((( Cos[ϕ[t]]Sin[α]-2 ϕ'[t]θ'[t]Cos[θ[t]]))/((((Sin[θ[t]])^2)+β)));
sol=Reap[NDSolve[{eq1,eq2,θ[0]==θ0,ϕ[0]==ϕ0,θ'[0]==dθ0, ϕ'[0]==dϕ0},{θ[t],ϕ[t]},{t,0,Tmax},MaxSteps->∞,Method->{"EventLocator", "Event"->Cos[ϕ[t]],"Direction"-> 1,"EventAction":>Sow[{t,θ[t],θ'[t],ϕ[t],ϕ'[t]}]}]];



If[selection== "Trajectory",
sol=sol[[1]];
nθ=θ[t]/.sol[[1]];
nϕ=ϕ[t]/.sol[[1]];
dnθ=(∂_t) nθ[t];
dnϕ=(∂_t) nϕ[t];
x=Sin[nθ] Cos[nϕ];
y= Sin[nθ] Sin[nϕ];
z=-  Cos[nθ];
ParametricPlot3D[{x,y,z},{t,0,Tmax},ImageSize->{500,500},AxesLabel->{Style["x",Italic],Style["y",Italic],Style["z",Italic]},PlotRange->{{-1,1},{-1,1},{-1,1}},ColorFunction->Function[{X,Y,Z},ColorData["SouthwestColors"][Z]],ImagePadding->25,PlotPoints-> Tmax/10],
If[selection== "θ[t]",
θn=θ[t] /.sol[[1]];
Plot[θn,{t,tmin,tmax},PlotPoints-> 1000,AxesLabel->{"t","θ(t)"},ImageSize->{600,400}],

If[selection== "θ'[t]",
θn=θ[t] /.sol[[1]];
dθn=(∂_t)θn;
Plot[dθn,{t,tmin,tmax},PlotPoints-> 1000,PlotRange-> All,AxesLabel->{"t","θ'(t)"},ImageSize->{600,400}],

If[selection=="ϕ[t]",
ϕn=ϕ[t]/.sol[[1]];
Plot[ϕn,{t,tmin,tmax},PlotPoints-> 1000,PlotRange-> All,AxesLabel->{"t","ϕ(t)"},ImageSize->{600,400}],

If[selection== "ϕ'[t]",
ϕn=ϕ[t]/.sol[[1]];
dϕn=(∂_t)ϕn;
Plot[dϕn,{t,tmin,tmax},PlotPoints-> 1000,PlotRange-> All,AxesLabel->{"t","ϕ'(t)"},ImageSize->{600,400}],

If[selection=="Poincaré section",
poincare=sol[[2]][[1]];
ListPlot[poincare[[All,{2,3}]],AspectRatio->1,AxesLabel->{"θ","θ'"},ImageSize->{600,600},PlotRange->All],

If[selection=="cos(θ)+1",
θn=θ[t] /.sol[[1]];
ϕn=ϕ[t]/.sol[[1]];
Plot[Cos[θn]+1,{t,tmin,tmax},PlotPoints-> 1000,AxesLabel->{"t","cos(θ(t))+1"},PlotRange-> All,ImageSize->{600,400}],
(** distance au point fixe θ=π-α , ϕ=π/2 **)

If[selection=="1-cos(ϕ)",
θn=θ[t] /.sol[[1]];
ϕn=ϕ[t]/.sol[[1]];
Plot[1-Cos[ϕn],{t,tmin,tmax},PlotPoints-> 1000,AxesLabel->{"t","1-cos(ϕ(t))"},PlotRange-> All,ImageSize->{600,400}],
(** distance au point fixe θ=π-α , ϕ=π/2 **)

poincare=sol[[2]][[1]];
Δt=Table[poincare[[i,1]]-poincare[[i-1,1]],{i,2,Length[poincare]}];
ListPlot[Table[{Δt[[i]],Δt[[i-1]]},{i,Round[((Length[Δt])/2)],Length[Δt]}],AxesLabel->{"(Subscript[Z, n])","(Subscript[Z, n + 1])"},ImageSize->{500,400}]

]]]]]]]]
,
{{selection,"Trajectory"},{"Trajectory","θ[t]","ϕ[t]","θ'[t]","ϕ'[t]","cos(θ)+1","1-cos(ϕ)","Poincaré section", "First return application"}},
{{α,0.5,"α"},-π,π,Appearance->"Labeled",ImageSize->Tiny},
{{β,1,"β"},0,5,Appearance->"Labeled",ImageSize->Tiny},
{{θ0,π-0.5,"θ(0)"},-(π-0.01),π-0.01,.01,Appearance->"Labeled",ImageSize->Tiny},
{{dθ0,0,"θ'(0)"},-5,5,Appearance->"Labeled",ImageSize->Tiny},
{{ϕ0,(π/2)+0.1,"ϕ(0)"},-N[π],N[π],Appearance->"Labeled",ImageSize->Tiny},
{{dϕ0,0,"ϕ'(0)"},-5,5,Appearance->"Labeled",ImageSize->Tiny},
{{Tmax,150,"t"},0,20000,200,Appearance->"Labeled",ImageSize->Tiny},
OpenerView[{"Graph controls",Column[{Control[{{tmin,0,"(Subscript[t, min])"},0,Tmax-1,1}],Control[{{tmax,Tmax,"(Subscript[t, max])"},1,Tmax,1}]}]},True],
AutorunSequencing->{3},ControlPlacement->Left,TrackedSymbols->{selection,α,β,θ0,dθ0,ϕ0,dϕ0,Tmax,tmin,tmax}
]