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

### Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

# Solution 143646

Submitted on 1 Oct 2012 by William Smith

Correct

30Size
Leading solution size is 12.
`This solution is locked. To view this solution, you need to provide a solution of the same size or smaller.`

### Test Suite

Test
Code Input and Output
1
Pass

```x = [ 0 1 ; 2 3 ] ;
y_correct = [ -0.5 0.5 ; -0.5 0.5 ] ;
y = remove_average_vectorized(x);
assert(isequal(y,y_correct));
```

2
Pass

```%%
x = [ 0 1 ; 2 3 ] ;
timer=tic;
y = remove_average_vectorized(x);
duration=toc(timer)
% You can probably pass this test with a for loop.
assert(duration<0.1,sprintf('Time used %2.3f\n',duration));
```
```duration =
3.9700e-04
```
3
Pass

```%%
x = [ 1:9999 ; 2:10000 ; [ zeros(1,9998) 9999 ]  ];
x = repmat(x,1000,1);
y_correct = [ -4999:1:4999 ; -4999:1:4999 ; [ repmat(-1,1,9998) 9998 ] ];
y_correct = repmat(y_correct,1000,1);
y = remove_average_vectorized(x);
assert(isequal(y,y_correct));
```

4
Pass

```%%
x = [ 1:9999 ; 2:10000 ; [ zeros(1,9998) 9999 ]  ];
x = repmat(x,1000,1);
timer=tic;
y = remove_average_vectorized(x);
duration=toc(timer)
% A decent vectorized solution should take around 1 second.
assert(duration<2,sprintf('Time used %2.3f\n',duration));
```
```duration =
0.9130
```