Hi,
aakash here.
I have written the code below to solve the second order ODE using ODE45.   There is an event condition in my code. Because of presence of this event condition, I am not (i dont know) able  to use fixed time step in ODE45. Can somebody please help me with this. I request all to please help me  to add the fixed time step in this code.
Waiting for the responses.
Thank you
~aakash
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clc
clear all
close all
global  k Th0 e m c t
     
%% Input parameters (Length (L), co-efficient of restitution (e), acceleration due to gravity (g))
e=0.9;  m=1;    c=0;       k=246.46; 
%% Initial condition
Thid = 8*40/(5*pi)^3;	% position from where the mass is released
Thiv = 0;		                % inital velocity (at t=0)
Th0 = 0.05;	% Position where the wall is there 
tfi = 5;	        % time final time 
%% ode45 (function call)
eta0=[Thid Thiv];     % Initial conditions
tspan=[0 tfi];
options = odeset('Events',@aakash_function);
t_vec = [];
eta_vec = [];
tcon=0;
 ii=1;
while tcon<tfi		                            %% to check whether final time is reached or not
        tspan=[tcon tfi];
       [t,eta] = ode45(@aakash_mass,tspan,eta0,options);
    
    eta0=[eta(end,1)  -(e*eta(end,2))];	%% modified inital conditions after impact
    tcon=t(end,1);
   
    
   t_vec = [t_vec;t];
   eta_vec = [eta_vec;eta];
end
   t_vec = [t_vec;t];
   eta_vec = [eta_vec;eta];
%%
syms u5 x
u5 = sin(5*pi*x)*eta_vec(:,1)
%% Plot
%  close all
for i = 1:length(u5)
    fig = ezplot(u5(i))
set(fig,'Linewidth',1.5)
    xlim([0 1])
    ylim([-0.25 0.25])
    grid on
    title('only third mode')
    pause(0.0000000000001)
end