Add original basicVectorOperations.m
This commit is contained in:
parent
0c6868f4b6
commit
ff7b047dd5
44
basicVectorOperations.m
Normal file
44
basicVectorOperations.m
Normal file
@ -0,0 +1,44 @@
|
||||
% -----------------
|
||||
% Copyright © 2019 ACK Cyfronet AGH, Poland.
|
||||
%
|
||||
% This work was partially funded by EPOS Project funded in frame of PL-POIR4.2
|
||||
% -----------------
|
||||
|
||||
function [out_vector]=basicVectorOperations(in_vector, numerator, denominator, k, operation_type)
|
||||
%% BASICVECTOROPERATION Tool for performing simple operations on a given number vector
|
||||
%
|
||||
% Input Arguments:
|
||||
%
|
||||
% in_vector - input vector
|
||||
%
|
||||
% numerator, denominator, k - scalar number - operands of the operation to be performed on the vector
|
||||
%
|
||||
% operation_type - name of operation to be performed on vector
|
||||
%
|
||||
% Output Arguments:
|
||||
%
|
||||
% out_vector - output vector that is the result of the operation
|
||||
%
|
||||
|
||||
switch operation_type
|
||||
case {'^', 'POWER'}
|
||||
if(isempty(denominator))
|
||||
denominator = 1;
|
||||
end
|
||||
out_vector = in_vector .^ (numerator/denominator);
|
||||
case {'FILL_FROM_INDEX'}
|
||||
if(k>length(in_vector))
|
||||
error(['Index out of bound. Vector length is: %d, but index is %d'], length(in_vector), k);
|
||||
else
|
||||
out_vector = [in_vector(1:k) zeros(1,length(in_vector)-k)];
|
||||
end
|
||||
case {'FILL_TO_INDEX'}
|
||||
if(k>length(in_vector))
|
||||
error(['Index out of bound. Vector length is: %d, but index is %d'], length(in_vector), k);
|
||||
else
|
||||
out_vector = [zeros(1,k) in_vector(k+1:length(in_vector))];
|
||||
end
|
||||
otherwise
|
||||
error(['unsupported operation: "' operation_type '"']);
|
||||
end
|
||||
end
|
Loading…
Reference in New Issue
Block a user