You are an expert in writing code in many different languages. Your goal is to perform code completion for the following code, keeping in mind the rest of the code and the file meta data.
    Metadata details:
    filename: E_GradientMethod.m
    path of file: ./repos/Performance-Estimation-Toolbox/Examples/01_Methods for unconstrained convex minimization
    
    the code of the file until where you have to start completion: function E_GradientMethod
% In this example, we use a fixed-step gradient method for
% solving the L-smooth convex minimization problem
%   min_x F(x); for notational convenience we denote xs=argmin_x F(x).
%
% We show how to compute the worst-case value of F(xN)-F(xs) when xN is
% obtained by doing N steps of the gradient method starting with an initial
% iterate satisfying ||x0-xs||<=1.
%
% Result to be compared with that of
% [1] Yoel Drori. "Contributions to the Complexity Analysis of
%     Optimization Algorithms." PhD thesis, Tel-Aviv University, 2014.

% (0) Initialize an empty PEP
P = pep();

% (1) Set up the objective function
param.mu = 0;     % Strong convexity parameter
param.L  = 1;     % Smoothness parameter

F=P.DeclareFunction('SmoothStronglyConvex',param); % F is the objective function

    
function E_GradientMethod
% In this example, we use a fixed-step gradient method for
% solving the L-smooth convex minimization problem
%   min_x F(x); for notational convenience we denote xs=argmin_x F(x).
%
% We show how to compute the worst-case value of F(xN)-F(xs) when xN is
% obtained by doing N steps of the gradient method starting with an initial
% iterate satisfying ||x0-xs||<=1.
%
% Result to be compared with that of
% [1] Yoel Drori. "Contributions to the Complexity Analysis of
%     Optimization Algorithms." PhD thesis, Tel-Aviv University, 2014.

% (0) Initialize an empty PEP
P = pep();

% (1) Set up the objective function
param.mu = 0;     % Strong convexity parameter
param.L  = 1;     % Smoothness parameter

F=P.DeclareFunction('SmoothStronglyConvex',param); % F is the objective function

% (2) Set up the starting point and initial condition
x0      = P.StartingPoint();		 % x0 is some starting point
[xs,fs] = F.OptimalPoint(); 		 % xs is an optimal point, and fs=F(xs)
P.InitialCondition( (x0-xs)^2 <= 1); % Initial condition ||x0-xs||^2<= 1

% (3) Algorithm
h = 1/param.L;		% step size
N = 10;             % number of iterations

x = x0;
for i = 1:N
    x = x-h*F.gradient(x);
end