Question: Events in dsolve

Hi

I  have a system of second order differential equation to be solved numerically. I would like to set up events to halt integration  to find the values of phi when r(phi)=2/3 . Here is my code

DE:=diff(1/r(phi),phi,phi)+(1/r(phi))=(G*M/h^2)+(3*G*M/c^2*r(phi)^2));

ics:=r(0)=2/3,D(r)(0)=0;G:=1;M:=1;h:=1;c:=1;

p:=dsolve({DE,ics},numeric,events=[[r(phi),r(phi),halt]],[diff(r(phi),phi)=0,halt]]);

The code only works for the second event so it halts for r(phi)=1.63... etc

How do i stop this?

 

Thanks for any help.

Please Wait...