summaryrefslogtreecommitdiff
path: root/frd.sci
diff options
context:
space:
mode:
Diffstat (limited to 'frd.sci')
-rw-r--r--frd.sci43
1 files changed, 33 insertions, 10 deletions
diff --git a/frd.sci b/frd.sci
index c3838b4..f0f1921 100644
--- a/frd.sci
+++ b/frd.sci
@@ -1,17 +1,40 @@
function varargout = frd(varargin)
+
+
+// Stores frequency and response data
+//
+// Calling Sequence
+// plantData = frd(respData,frdData,Ts)
+// Parameters
+// frdData : nx1 matrix of non-decreasing frequency points
+// respData : nx1 matrix of the frequency response
+// Ts : non-negative real number
+// plantData : frd type module
+// Description
+// It is a frd type module that stores the frequency and response data with sampling time Ts. The time unite is in second and frequency unit rad/sec.
+// Examples
+// frdData = 0:1024
+// frdData=frdData';
+// respData = rand(1024,1)
+// Ts = 0.1
+// plantData = frd(frdData,respData,Ts)
+// Authors
+// Ashutosh Kumar Bhargava, Bhushan Manjarekar
+
+
[lhs,rhs] = argn(0)
if rhs < 2 || rhs > 4 then
errmsg = msprintf(gettext("%s: Wrong numbers of input arguments."), "frd");
error(errmsg)
end
- frequency = varargin(2)
+ frequency = varargin(1)
freqUnit = 'rad/TimeUnit'
if ~iscolumn(frequency) then
- errmsg = msprintf(gettext("%s: frequency must be a finite row vector."), "frd");
+ errmsg = msprintf(gettext("%s: frequency must be a finite column vector."), "frd");
error(errmsg)
end
- respData = varargin(1)
-// pause
+ respData = varargin(2)
+// pause
if size(frequency,'r') <> size(respData,'r') then
errmsg = msprintf(gettext("%s: input output matrix dimension must be equal."), "frd");
error(errmsg)
@@ -25,13 +48,13 @@ function varargout = frd(varargin)
errmsg = msprintf(gettext("%s: Sampling time must be a scalar non negative real number."), "frd");
error(errmsg)
end
- // saving the spectrum value
+ // saving the spectrum value
if rhs == 4 then
spect = varargin(4)
else
spect = []
end
- /// matching its dimensions
+ // / matching its dimensions
if ~size(spect) then
elseif size(frequency,'r') <> size(spect,'r') then
errmsg = msprintf(gettext("%s: Numbers of power spectra must be equal to the numbers of frequency."), "frd");
@@ -42,7 +65,7 @@ function varargout = frd(varargin)
varargout(1) = t
endfunction
-//overloading
+// overloading
function %frd_p(varargin)
myTlist = varargin(1)
f = fieldnames(myTlist)
@@ -62,7 +85,7 @@ function %frd_p(varargin)
temp = temp + ' '
end
temp = temp + string(real(respData(ii)))
- // temp = string(real(respData(ii)))
+ // temp = string(real(respData(ii)))
if imag(respData(ii)) > 0 then
temp = temp +"+"
end
@@ -70,8 +93,8 @@ function %frd_p(varargin)
else
temp = temp + string(imag(respData(ii))) +"i"
end
- // temp = temp + string(imag(respData(ii))) + " i"
- mprintf("\n\t %f \t %s",freqData(ii),temp)//real(respData(ii)),imag(respData(ii)))
+ // temp = temp + string(imag(respData(ii))) + " i"
+ mprintf("\n\t %f \t %s",freqData(ii),temp)// real(respData(ii)),imag(respData(ii)))
end
mprintf("\n\n")
end