## How do you set up a function file to loop through a vector of values for use with ode45?

### Veronica (view profile)

on 27 Apr 2013

From input file (the length of CL is known--26):

```i = 1:length(CL);
in.C_L = CL(i);
in.C_D = CD(i);
```

From EOM Function file:

```C_L = in.C_L;
C_D = in.C_D;
```
```i = 1;  % this runs case 1 only
B = mass./(C_D(i)*area);  % ballistic coefficient
rho = rho_0*exp(-h/H);  % exponential atmosphere
r = R + h;  % radius of planet plus height
L = 0.5*rho*V^2.*C_L(i)*area;  % lift
D = 0.5*rho*V^2.*C_D(i)*area;  % drag
L_D = L/D;  % lift-to-drag coefficient
```
```% Planar equations of motion
Vdot = -(rho*V^2)./(2*B) - g*sin(gamma);
gammadot = (((V^2*cos(gamma))/r + ((rho.*V^2)./(2*B)).*(L_D) - g*cos(gamma))/V);
hdot = V.*sin(gamma);
```

Calling ode45 from main file with constant values for y0:

```[t,y] = ode45(@HW7_P4_EOM, [0:96], y0, options);
```

I can extract all the information needed for C_L and C_D. But I'm having trouble running each case of the 26-element vector through ode45 and saving the results from each case for plotting. I was thinking of running a for loop with the ode45 command, and using hold all for plotting, but I don't know how to vary loop through ode45 using the different parameters.

Thanks!

## Products

No products are associated with this question.

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi