Red de conocimiento informático - Conocimiento del nombre de dominio - ¡Urgente! Utilice Matlab para dibujar un modelo físico arbitrario, ni demasiado complejo ni demasiado simple. Si tiene el código fuente, el color y la integración adecuados, envíeme un correo electrónico.

¡Urgente! Utilice Matlab para dibujar un modelo físico arbitrario, ni demasiado complejo ni demasiado simple. Si tiene el código fuente, el color y la integración adecuados, envíeme un correo electrónico.

función [WT,FreqBins,Scales]=CWT_Morlet(Sig,WinLen,nLevel)

%Transformación Wavelet continua usando la función Morlet

%Sig:Signal

% WinLen: longitud de la función wavelet con parámetro de escala a=1 (por defecto 10)

%nNivel: División del eje de frecuencia (por defecto es 1024)

%

%WT: devuelve el resultado del cálculo de la transformada wavelet

%FreqBins: devuelve el resultado de la segmentación del eje de frecuencia (frecuencia normalizada, la frecuencia más alta es 0. La frecuencia más alta es 0,5)

%Scales : Devuelve la división proporcional correspondiente al valor de división del eje de frecuencia (la frecuencia 0,5 corresponde a la escala 1)

if (nargin==0),

error('¡Se requiere al menos 1 parámetro! ') ;

fin ;

if (nargin<3),

nLevel=1024;

fin

if (nargin<2),

WinLen=10;

end

Sig=hilbert(real(Sig));% calcula y analiza el señal

SigLen=length(Sig);%Obtener la longitud de la señal

fmax=0.5;%Establecer la frecuencia máxima de análisis

fmin=0.005;%Establecer la frecuencia mínima de análisis

FreqBins=logspace(log10(fmin),log10(fmax),nLevel);%Coloque el eje de frecuencia en el rango de análisis, etc.

%Coordenada logarítmica división

Escalas=fmax*ones(tamaño(FreqBins)).

/FreqBins;% Calcular los parámetros de escala de la respuesta

omg0=WinLen/6;

WT=zeros(nLevel,SigLen);%Asignar unidades de almacenamiento para los resultados del cálculo

wait=waitbar(0,'Calculando, por favor espera');

for m=1:nLevel,

waitbar(m/nLevel,wait);

p>

a=Scales(m);% Extraer parámetros de escala

t=round(a*WinLen):1:round(a*WinLen);

Mor1= pi^(-1/4)*exp(1i*2*pi*0.5*t/a).*exp(-t.^2/2/(2*omg0*a)^2);

%Calcular la función wavelet de la escala actual

temp=conv(Sig,Mor1)/sqrt(a); %Calcular la convolución de la señal y la función wavelet

PESO(m ,:)=temp(round(a*WinLen) +1:longitud(temp)-round(a*WinLen));

end;

cerrar(esperar);

WT=WT/WinLen;

Ejemplo:

rastreo de función

SampFreq = 50;

t= 0:0.02:12-0.02;

sig =zeros(longitud(t),1);

sig(ronda(fin/2)- 50) = 1;sig( round(end/2)) = -1;

WinLen = 10;

[WT, FreqBins, Scales] = CWT_Morlet(sig,WinLen,512);

FreqBins = FreqBins * SampFreq;

clf

set(gcf,'Position',[200 100 300 220]);

set(gcf,'Color' ,'w');

pcolor(FreqBins,t,abs(WT)');

chorro de mapa de colores;

sombreado interp;

colorbar;

xlabel('Frecuencia / Hz');

ylabel('Tiempo / seg');

2 Produce varios modelos b, Y para ver Consulte Liuyanghe Model Factory, la calidad es buena y el precio es bueno ∩ Ingrese el modelo Liuyanghe en línea para buscar 2011-5-10 19:24:27..