/ / मैटलैब में स्थानिक परिवर्तन - मैटलैब, औसत, स्थानिक

Matlab में स्थानिक औसत - matlab, औसत, स्थानिक

मैं अपने असतत वेग डेटा यू पर एक अभिन्न औसत प्रदर्शन करना चाहता हूं, एक आयाम के साथ औसत सूत्र

यू एक आयामी सरणी है, प्रत्येक मूल्य phi के स्थानिक मूल्य के अनुरूप है।

   U(phi) =[15 20 30 74 89 25 78 75 72 56 15]
0              pi             2pi

U (थीटा + phi) कुछ भी नहीं है, लेकिन सरणी के मान द्वारा U (phi) को घुमाने से भी भिन्न होता है (0 से 2pi तक)

 if (theta = pi)  % example %
U(theta+phi) = [25 78 75 56 15 15 20 30 74 89]  % Matrix is shifted by pi

मेरा प्रश्न यह है कि मैं इन दो मैट्रिक्स को कैसे एकीकृत करता हूं, क्योंकि अब मैंने इस विधि को लागू किया है (नीचे) लेकिन मुझे यकीन नहीं है कि यह सही है:

U = [15 20 30 74 89 25 78 75 72 56 15];
L = 0:(2*pi)/10:2*pi;
C1 = U;

for lt = 1:1:length(L)

if (lt > 1)

rt = lt -1;
C1 = circshift(U , [1 -rt]);

end

Cm(lt) = 1/(2*pi) * trapz(C1.*U,L);


end

क्या कोई मेरे लिए इसे सत्यापित कर सकता है, या यदि संभव हो तो मुझे कुछ अन्य सुझाव दे सकता है।

धन्यवाद

उत्तर:

उत्तर № 1 के लिए 1

आप क्या जोर से एकीकृत करना चाहते हैं की मेरी समझ से

Cm(lt) = 1/(2*pi) * trapz(L,C1.*U);

क्योंकि अगर तुम मदद को देखो trapz:

Q = trapz(X,Y) जुड़ता है Y वेतन वृद्धि के साथ X। [..] length(X) इस आयाम के आकार के बराबर होना चाहिए


जवाब के लिए 0 № 2

इस विधि के लिए (1 आयाम) स्थानिक Averaging बहुत अच्छी तरह से काम करती है

  U = [15 20 30 74 89 25 78 75 72 56 15];
L = 0:(2*pi)/10:2*pi;
C1 = U;

for lt = 1:1:length(L)

if (lt > 1)
rt = lt -1;
C1 = circshift(U , [1 -rt]); % Shifts the matrix
end

Cm(lt) = 1/(2*pi) * trapz(L,C1.*U);   % Integration over the data

समाप्त