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: mk_linear_slam.m
    path of file: ./repos/bnt/BNT/examples/dynamic/SLAM
    
    the code of the file until where you have to start completion: function [A,B,C,Q,R,Qbig,Rbig,init_x,init_V,robot_block,landmark_block,...
	  true_landmark_pos, true_robot_pos, true_data_assoc, ...
	  obs_rel_pos, ctrl_signal] = mk_linear_slam(varargin)

% We create data from a linear system for testing SLAM algorithms.
% i.e. , new robot pos = old robot pos + ctrl_signal, which is just a displacement vector.
% and  observation = landmark_pos - robot_pos, which is just a displacement vector.
%
% The behavior is determined by the following optional arguments:
%
% 'nlandmarks' - num. landmarks

    
function [A,B,C,Q,R,Qbig,Rbig,init_x,init_V,robot_block,landmark_block,...
	  true_landmark_pos, true_robot_pos, true_data_assoc, ...
	  obs_rel_pos, ctrl_signal] = mk_linear_slam(varargin)

% We create data from a linear system for testing SLAM algorithms.
% i.e. , new robot pos = old robot pos + ctrl_signal, which is just a displacement vector.
% and  observation = landmark_pos - robot_pos, which is just a displacement vector.
%
% The behavior is determined by the following optional arguments:
%
% 'nlandmarks' - num. landmarks
% 'landmarks' - 'rnd' means random locations in the unit sqyare
%               'square' means at [1 1], [4 1], [4 4] and [1 4]
% 'T' - num steps to run
% 'ctrl' - 'stationary' means the robot remains at [0 0],
%          'leftright' means the robot receives a constant contol of [1 0],
%          'square' means we navigate the robot around the square
% 'data-assoc' - 'rnd' means we observe landmarks at random
%                'nn' means we observe the nearest neighbor landmark
%                'cycle' means we observe landmarks in order 1,2,.., 1, 2, ...

args = varargin;
% get mandatory params
for i=1:2:length(args)
  switch args{i},
   case 'nlandmarks', nlandmarks = args{i+1};
   case 'T', T = args{i+1};
  end