Maybe I'm wrong, but for sure the results in test 4 and 5 is NOT CORRECT
Note in the last paragraph of the explanation: "You will be provided with the 30-second rolling average power data set (vector)." In essence, your solution is calculating the 30-second rolling average of a 30-second rolling average data set.
Test | Status | Code Input and Output |
---|---|---|
1 | Fail |
%% steady
power = 200*ones(1,3600);
P_avg_corr = 200;
NP_corr = 200;
[P_avg,NP] = cycling_norm_power(power);
assert(isequal(P_avg_corr,P_avg))
assert(isequal(NP_corr,NP))
|
2 | Fail |
%% intervals
power = 100*ones(1,60);
power = [power 250*ones(1,240)];
power = [power 100*ones(1,60)];
power = repmat(power,[1,10]);
P_avg_corr = 200;
NP_corr = 227;
[P_avg,NP] = cycling_norm_power(power);
assert(isequal(P_avg_corr,P_avg))
assert(isequal(NP_corr,NP))
|
3 | Fail |
%% ramped intervals
power = 100*ones(1,30);
power = [power 100:249];
power = [power 250:-1:101];
power = [power 100*ones(1,30)];
power = repmat(power,[1,10]);
P_avg_corr = 163;
NP_corr = 182;
[P_avg,NP] = cycling_norm_power(power);
assert(isequal(P_avg_corr,P_avg))
assert(isequal(NP_corr,NP))
|
4 | Fail |
%% medium sprints
power = 100*ones(1,170);
power = [power 500*ones(1,20)];
power = [power 100*ones(1,170)];
power = repmat(power,[1,10]);
P_avg_corr = 122;
NP_corr = 244;
[P_avg,NP] = cycling_norm_power(power);
assert(isequal(P_avg_corr,P_avg))
assert(isequal(NP_corr,NP))
|
5 | Fail |
%% intense sprints
power = 100*ones(1,176);
power = [power 1500*ones(1,8)];
power = [power 100*ones(1,176)];
power = repmat(power,[1,10]);
P_avg_corr = 131;
NP_corr = 579;
[P_avg,NP] = cycling_norm_power(power);
assert(isequal(P_avg_corr,P_avg))
assert(isequal(NP_corr,NP))
|
6 | Fail |
%% anti-cheating (random)
ind = randi(5);
switch ind
case 1
power = 200*ones(1,3600);
P_avg_corr = 200;
NP_corr = 200;
case 2
power = 100*ones(1,60);
power = [power 250*ones(1,240)];
power = [power 100*ones(1,60)];
power = repmat(power,[1,10]);
P_avg_corr = 200;
NP_corr = 227;
case 3
power = 100*ones(1,30);
power = [power 100:249];
power = [power 250:-1:101];
power = [power 100*ones(1,30)];
power = repmat(power,[1,10]);
P_avg_corr = 163;
NP_corr = 182;
case 4
power = 100*ones(1,170);
power = [power 500*ones(1,20)];
power = [power 100*ones(1,170)];
power = repmat(power,[1,10]);
P_avg_corr = 122;
NP_corr = 244;
case 5
power = 100*ones(1,176);
power = [power 1500*ones(1,8)];
power = [power 100*ones(1,176)];
power = repmat(power,[1,10]);
P_avg_corr = 131;
NP_corr = 579;
end
[P_avg,NP] = cycling_norm_power(power);
assert(isequal(P_avg_corr,P_avg))
assert(isequal(NP_corr,NP))
|
Back to basics 21 - Matrix replicating
1052 Solvers
219 Solvers
413 Solvers
292 Solvers
52 Solvers
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!