Base de conocimiento

Inorgánica, Química

Combinaciones binarias No Metal- No Metal. Regla de nomenclatura y ejemplos

Las Combinaciones binarias No Metal- No Metal: son compuestos binarios formados por la unión de dos elementos de la siguiente lista: B, Si, C, Sb, As, P, N, Te, Se, S, O, I, Br, Cl, F. Se formulan colocando en primer lugar el elemento que aparece primero en la lista anterior, Se intercambian los números de oxidación. Es decir, en el ejemplo de IBr3, (tribromuro de yodo) el número de oxidación del bromuro es -1 y este se coloca como subíndice del yodo en la fórmula. Simultáneamente, el número de oxidación del yodo es -3 y este se coloca como subíndice del bromuro. Las combinaciones binarias No Metal-No metal se nombran mediante la nomenclatura de composición en sus dos formas: Prefijos multiplicadores o números romanos.

null

A continuación algunos ejemplos:

null

Fuente:

Nomenclatura Q Inorgánica 1920

Quimica_11va_Edicion_Raymond_Chang_FREEL

ANTERIOR: Nomenclatura de Química Inorgánica

Revisión literaria hecha por:

Prof. Larry Francis Obando – Technical Specialist – Educational Content Writer

WhatsApp:  +34633129287  Atención Inmediata!!

Twitter: @dademuch

Copywriting, Content Marketing, Tesis, Monografías, Paper Académicos, White Papers (Español – Inglés)

Escuela de Ingeniería Electrónica de la Universidad Simón Bolívar, USB Valle de Sartenejas.

Escuela de Ingeniería Eléctrica de la Universidad Central de Venezuela, UCV CCs

Escuela de Turismo de la Universidad Simón Bolívar, Núcleo Litoral.

Contacto: España. +34633129287

Caracas, Quito, Guayaquil, Cuenca. 

WhatsApp:  +34633129287  

Twitter: @dademuch

FACEBOOK: DademuchConnection

email: dademuchconnection@gmail.com

Digital Signal Processing

Convolution in Discrete-Time – Matlab

The output y[n] of a particular LTI-system can be obtained by:

The previous equation is called Convolution between discrete-time signals x[n] and h[n].

By convention, the convolution between x[n] and h[n] is expressed as follows:

Example 1. 

Let the following rectangular pulse x[n] be an input to an LTI system with impulse response h[n]:

Determine the output y[n] of the system.

Solution:

In Elementary sequences we have designed a function stepseq for plotting the unit step function in discrete time, or any combination as example 1. Next Script allows plotting x[n].

n=[0:40];
x=stepseq(0,0,40)-stepseq(10,0,40);
stem(n,x)
xlabel(‘n’); ylabel(‘x[n]’)

Figure 1. Input sequence x[n], example 1.

Next Script allows plotting h[n].

n=[0:40];
h=(0.9).^n;
stem(n,h)
xlabel(‘n’); ylabel(‘h[n]’)

Figure 2. Impulse response h[n] for system in example 1.

Now, we use conv Matlab function to determine :

y=conv(x,h);
n=[0:80];
stem(n,y);
xlabel(‘n’); ylabel(‘y[n]’)

Figure 3. Output sequence y[n]=x[n]*h[n] for example 1.

We can do the convolution of x[n] and h[n] Analytically:

Applying the given equation for convolution:

We now use an expression for the sum of any finite number of terms of a geometric series (The Geometric Series in DSP), and that is given by:

So, we can express equation (1) as follows:

Equation (3) is almost a geometric series sum as equation (2) except that the terms u(n-k) takes different values depending on n and k. There are three possible conditions under u(n-k) which can be evaluated:

Case 1. n<0: Then u(n-k)=0 for 0 k 9. In consequence:

Case 2. In this case the nonzero values of and do not overlap. So, for 0n<9: u(n-k)=1 for 0kn. In consequence:

Applying formula of equation (2):

Case 3. In this case the impulse response h[n] partially overlap the input x[n]. So, for 9 n: u(n-k)=1 for 0 k 9. In consequence:

In this last case h[n] completely overlaps the input x[n].

We can use a graphical method as in the following example.

Example 2

The input signal x[n] to an LTI system with impulse response h[n]:

Determine graphically y[n] through:

La imagen tiene un atributo ALT vacío; su nombre de archivo es null-63.png

Solution:

Sequences x[k] and h[n-k], and the convolution of both signals can be seen as follows:

Or, We can use convolution properties as follows.

Example 3
Convolution Properties.

Other interesting properties are:

With an input x[n], the response of a LTI system y[n] is:

The impulse response h[n] of the system is:

Determine x[n]. Choose the right answer from:

Solution:

Considering:

We express the impulse response in terms of displaced Dirac deltas:

If we select:

Then:

So right answer is letter a). Demonstration: Using the previous equation, Let´s plot y[n] in Matlab.

The impulse response h[n] and option a) for input x[n] can be plotting in Matlab using:

n=[-3:10];
h=stepseq(0,-3,10)-stepseq(4,-3,10);
stem(n,h)
xlabel(‘n’); ylabel(‘h[n]’)

Figure 4. Impulse response h[n] for system in example 3.

n=[-3:10];
x=stepseq(-3,-3,10)-stepseq(1,-3,10);
stem(n,x)
xlabel(‘n’); ylabel(‘x[n]’)

Figure 5. Input signal x[n] for system in example 3.

Now, y[n] can be plotting by using:

n=[-3:10];
h=stepseq(0,-3,10)-stepseq(4,-3,10);
x=stepseq(-3,-3,10)-stepseq(1,-3,10);
x1=stepseq(-2,-3,10)-stepseq(2,-3,10);
x2=stepseq(-1,-3,10)-stepseq(3,-3,10);
x3=stepseq(0,-3,10)-stepseq(4,-3,10);
y=x+x1+x2+x3;
stem(n,y)

Figure 6. Output sequence y[n] for example 3.

Which we would also have been able to get by using:

La imagen tiene un atributo ALT vacío; su nombre de archivo es null-64.png

n=[-3:10];;
h=stepseq(0,-3,10)-stepseq(4,-3,10);
x=stepseq(-3,-3,10)-stepseq(1,-3,10);
y=conv(h,x);
n=[0:26];
stem(n,y)
xlabel(‘n’); ylabel(‘y[n]’)

Figure 7. Output sequence y[n]=x[n]*h[n] for example 3.

In construction…

Source:

  • Digital Signal Processing Using Matlab, 3erd ed
  • Fundamentos_de_Señales_y_Sistemas_usando la Web y Matlab
  • Oppenheim – Señales y Sistemas
  • Análisis de Sistemas Lineales Asistido con Scilab – Un Enfoque desde la Ingeniería Eléctrica.

Literature review by:

Prof. Larry Francis Obando – Technical Specialist – Educational Content Writer

Exercises are solved!!

WhatsApp:  +34633129287  Inmediate Attention!!

Twitter: @dademuch

Copywriting, Content Marketing, Tesis, Monografías, Paper Académicos, White Papers (Español – Inglés)

Escuela de Ingeniería Electrónica de la Universidad Simón Bolívar, USB Valle de Sartenejas.

Escuela de Ingeniería Eléctrica de la Universidad Central de Venezuela, UCV Caracas.

Escuela de Turismo de la Universidad Simón Bolívar, Núcleo Litoral.

Contacto: España. +34633129287

Caracas, Quito, Guayaquil, Jaén. 

WhatsApp:  +34633129287   

Twitter: @dademuch

FACEBOOK: DademuchConnection

email: dademuchconnection@gmail.com

Sin categoría

La función coseno en tiempo discreto – Matlab

Las señales sinusoidales son muy importantes porque la Transformada de Fourier afirma que la mayoría de las señales de uso práctico se pueden descomponer en una suma infinita de señales sinusoidales. Una señal sinusoidal en el tiempo discreto se representa mediante:

Donde A es la amplitud y θo es la fase en radianes. Por su parte, ωo=2πf es la frecuencia angular y x[n] puede ser escrita como:

Es muy importante entender que la frecuencia de una sinusoide de tiempo discreto no está definida de forma única. Esta ambigüedad fundamental se debe a la siguiente propiedad trigonométrica:

En palabras, el valor de una sinusoide no cambia si un número entero múltiplo de se suma a su argumento. Sumando 2πkn al argumento de la ecuación (1) obtenemos:

Se distinguen dos casos. Si k≥-f, la ecuación (2) es equivalente a una sinusoide con frecuencia f+k sin cambio de fase:

Por otra parte, si k<-f, la ecuación (3) conduce a una frecuencia negativa. Para evita esto, definimos:

Además hacemos uso de la siguiente propiedad:

En consecuencia, volviendo a las ecuaciones (2) y (3), obtenemos una sinusoide de frecuencia l-f con una inversión de fase:

En conclusión: “a discrete-time sinusoid with frequency f is identical to a same-phase sinusoid of frequency f+k, where k is any integer greater than –f, or to a phase-reversed sinusoid of frequency l-f if l>f“.

La ecuación (3) se puede expresar de forma más concisa utilizando la notación exponencial compleja:

Because value of a complex exponential does not change if a multiple of is added to its argument, we get:

Equation (5) is equivalent to equation (4). Because of this fundamental frequency ambiguity, we will often implicitly assume that the angular frequency of a discrete-time sinusoid is restricted to the range –π≤ω≤π, or equivalent, that -1/2≤f≤1/2.

The Matlab function cos or sin generates the sinusoidal sequences. For example, for x[n]=3cos(0.1πn+π/3)+2sin(0.5πn), 0n10, we will use the following script:

n=[0:10]; x=3*cos(0.1*pi*n+pi/3)+2*sin(0.5*pi*n);
stem(n,x)

This script yields:

Source:

  • Digital Signal Processing Using Matlab, 3erd ed

PREVIOUS:

Literature review by:

Prof. Larry Francis Obando – Technical Specialist – Educational Content Writer

Exercises are solved!!

WhatsApp:  +34633129287  Inmediate Attention!!

Twitter: @dademuch

Copywriting, Content Marketing, Tesis, Monografías, Paper Académicos, White Papers (Español – Inglés)

Escuela de Ingeniería Electrónica de la Universidad Simón Bolívar, USB Valle de Sartenejas.

Escuela de Ingeniería Eléctrica de la Universidad Central de Venezuela, UCV CCs

Escuela de Turismo de la Universidad Simón Bolívar, Núcleo Litoral.

Contacto: España. +34633129287

Caracas, Quito, Guayaquil, Jaén. 

WhatsApp:  +34633129287     

Twitter: @dademuch

FACEBOOK: DademuchConnection

email: dademuchconnection@gmail.com

Sin categoría

The sinusoidal function in discrete time – Matlab

Sine waves are important because Fourier´s Theorem states that most signals of practical interest can be decomposed into an infinite sum of sine waves. Discrete-time signals (also called time series) are defined over the set of integers, that is, they are indexed sequences. A discrete-time sine wave is defined by:

Where A is an amplitude and  θo is the phase in radians. Meanwhile, ωo=2πf is the angular frequency and x[n] could be written as:

It is important to understand that the frequency of a discrete-time sinusoid is not uniquely defined. This fundamental ambiguity is a consequence of a basic trigonometric property:

In words, the value of a sinusoid does not change if an integer multiple of is added to its argument. Adding the 2πkn to the argument of equation (1) we get:

Two cases must be distinguished. If k≥-f, the equation (2) is equivalent to a sinusoid with frequency f+k with no change in phase:

On the other hand, if k<-f, equation (3) leads to a negative frequency. To avoid this, we introduce:

We also make use of the property:

In consequence, returning to equations (2) and (3), we obtain a sinusoid of frequency l-f with a reversal in phase:

In conclusion, a discrete-time sinusoid with frequency f is identical to a same-phase sinusoid of frequency f+k, where k is any integer greater than –f, or to a phase-reversed sinusoid of frequency l-f if l>f.

Equation (3) can be expressed more concisely using complex exponential notation:

Because value of a complex exponential does not change if a multiple of is added to its argument, we get:

Equation (5) is equivalent to equation (4). Because of this fundamental frequency ambiguity, we will often implicitly assume that the angular frequency of a discrete-time sinusoid is restricted to the range –π≤ω≤π, or equivalent, that -1/2≤f≤1/2.

The Matlab function cos or sin generates the sinusoidal sequences. For example, for x[n]=3cos(0.1πn+π/3)+2sin(0.5πn), 0n10, we will use the following script:

n=[0:10]; x=3*cos(0.1*pi*n+pi/3)+2*sin(0.5*pi*n);
stem(n,x)

This script yields:

Source:

  • Digital Signal Processing Using Matlab, 3erd ed

PREVIOUS:

Literature review by:

Prof. Larry Francis Obando – Technical Specialist – Educational Content Writer

Exercises are solved!!

WhatsApp:  +34633129287  Inmediate Attention!!

Twitter: @dademuch

Copywriting, Content Marketing, Tesis, Monografías, Paper Académicos, White Papers (Español – Inglés)

Escuela de Ingeniería Electrónica de la Universidad Simón Bolívar, USB Valle de Sartenejas.

Escuela de Ingeniería Eléctrica de la Universidad Central de Venezuela, UCV CCs

Escuela de Turismo de la Universidad Simón Bolívar, Núcleo Litoral.

Contacto: España. +34633129287

Caracas, Quito, Guayaquil, Jaén. 

WhatsApp:  +34633129287     

Twitter: @dademuch

FACEBOOK: DademuchConnection

email: dademuchconnection@gmail.com

Sin categoría

La Serie Geométrica – Procesamiento de Señales Digitales en Matlab

En Matlab es requerido el operador “” para implementar a real exponential sequence de la forma:

En el intervalo n1< no < n2. Por ejemplo, para implementar:

Usaremos la siguiente función de Matlab:

n=[0:10];;
x=(0.9).^n;
stem(n,x);
xlabel(‘n’); ylabel(‘x[n]’)

Este script genera:

Serie Geométrica

Una secuencia exponencial de un solo lado, de la forma:

Donde α es una constante arbitraria. Esta secuencia es llamada a geometric series.  En PDS, la convergencia y la expresión para la suma de los componentes de esta serie are es utilizado en muchas aplicaciones. La serie converge para:

Mientras se cumpla esta condición, la suma de los componentes de la serie geométrica converge a:

A partir de aquí, necesitamos además una expresión para la suma de cualquier número finito de términos de la serie, y está dado por:

Estos dos importantes resultados se utilizarán ampliamente en PDS.

Complex-valued exponential sequence

Where σ produces an attenuation (if<0) or amplification (if>0)  and ωo is the frequency in radians. The Matlab function exp generates the exponential sequences. For example, for x[n] =exp[(2+j3)n], 0n10, we will use the following script:

n=[0:10]; x=exp(3j*n);
stem(n,k)

This script yields:

Fuente:

  • Digital Signal Processing Using Matlab, 3erd ed

ANTERIOR:

Revisión literaria hecha por:

Prof. Larry Francis Obando – Technical Specialist – Educational Content Writer

Se hacen trabajos, se resuelven ejercicios!!

WhatsApp:  +34633129287  Atención Inmediata!!

Twitter: @dademuch

Copywriting, Content Marketing, Tesis, Monografías, Paper Académicos, White Papers (Español – Inglés)

Escuela de Ingeniería Electrónica de la Universidad Simón Bolívar, USB Valle de Sartenejas.

Escuela de Ingeniería Eléctrica de la Universidad Central de Venezuela, UCV CCs

Escuela de Turismo de la Universidad Simón Bolívar, Núcleo Litoral.

Contacto: España. +34633129287

Caracas, Quito, Guayaquil, Jaén. 

WhatsApp:  +34633129287     

Twitter: @dademuch

FACEBOOK: DademuchConnection

email: dademuchconnection@gmail.com

Procesamiento de señales digitales

The Geometric Series in Digital Signal Processing

In Matlab an array operator “” is required to implement a real exponential sequence of the form:

Over the n1< no < n2 interval. For example, to implement:

We will use the following Matlab function:

n=[0:10];;
x=(0.9).^n;
stem(n,x);
xlabel(‘n’); ylabel(‘x[n]’)

This script yields:

Geometric series

A one-side exponential sequence of the form:

Where α is an arbitrary constant. This sequences is called a geometric series.  In DSP, the convergence and expression for the sum of this series are used in many applications. The series converges for:

While this condition is true, the sum of the geometric series components converges to:

From here, we also need an expression for the sum of any finite number of terms of the series, and that is given by:

These two important results will be used deeply throughout DSP.

Complex-valued exponential sequence

Where σ produces an attenuation (if<0) or amplification (if>0)  and ωo is the frequency in radians. The Matlab function exp generates the exponential sequences. For example, for x[n] =exp[(2+j3)n], 0n10, we will use the following script:

n=[0:10]; x=exp(3j*n);
stem(n,k)

This script yields:

Source:

  • Digital Signal Processing Using Matlab, 3erd ed

PREVIOUS:

Literature review by:

Prof. Larry Francis Obando – Technical Specialist – Educational Content Writer

Exercises are solved!!

WhatsApp:  +34633129287  Inmediate Attention!!

Twitter: @dademuch

Copywriting, Content Marketing, Tesis, Monografías, Paper Académicos, White Papers (Español – Inglés)

Escuela de Ingeniería Electrónica de la Universidad Simón Bolívar, USB Valle de Sartenejas.

Escuela de Ingeniería Eléctrica de la Universidad Central de Venezuela, UCV CCs

Escuela de Turismo de la Universidad Simón Bolívar, Núcleo Litoral.

Contacto: España. +34633129287

Caracas, Quito, Guayaquil, Jaén. 

WhatsApp:  +34633129287     

Twitter: @dademuch

FACEBOOK: DademuchConnection

email: dademuchconnection@gmail.com

Procesamiento de señales digitales

Graficar el escalón unitario discreto con Matlab

La función ones(1,N) genera un vector fila de N unos. Se puede utilizar para generar u[n] en un intervalo finito. Un enfoque elegante es utilizar la relación lógica n>=0. Para implementar:

En el intervalo n1< no < n2 , utilizaremos la siguiente función Matlab:

function[x,n]=stepseq(n0,n1,n2)

% Generates x(n)=u(n-n0); n1<=n<=n2

n=[n1:n2]; x=[(n-n0)>=0];

Note: para ver como se implementa una función en Matlab ver: matlab getstart, page 176, (4-22)

Ahora podemos utilizar la función stepseq como sigue,para implementar una función arbitraria P=u[n-5] en el intervalo 0< no < 18:

n=[0:18];
P=stepseq(5,0,18);
stem(n,P)

Obtenemos:

P =     0     0     0     0     0     1     1     1     1     1     1     1     1     1     1     1     1     1     1

La imagen tiene un atributo ALT vacío; su nombre de archivo es null-7.png

Ejemplo 2. Generar y graficar la siguiente secuencia sobre el intervalo indicado:

n=[0:20]; x1=10exp(-0.3(n-10)).(stepseq(10,0,20)-stepseq(20,0,20)); x2=n.(stepseq(0,0,20)-stepseq(10,0,20));
x=x1+x2;
stem(n,x); title(‘Secuencia de Problema 2’)

Este script genera el siguiente gráfico:

Fuente:

  • Digital Signal Processing Using Matlab, 3erd ed

RELACIONADO:

Revisión literaria hecha por:

Prof. Larry Francis Obando – Technical Specialist – Educational Content Writer

Se hacen trabajos, se resuelven ejercicios!!

WhatsApp:  +34633129287  Atención Inmediata!!

Twitter: @dademuch

Copywriting, Content Marketing, Tesis, Monografías, Paper Académicos, White Papers (Español – Inglés)

Escuela de Ingeniería Electrónica de la Universidad Simón Bolívar, USB Valle de Sartenejas.

Escuela de Ingeniería Eléctrica de la Universidad Central de Venezuela, UCV CCs

Escuela de Turismo de la Universidad Simón Bolívar, Núcleo Litoral.

Contacto: España. +34633129287

Caracas, Quito, Guayaquil, Jaén. 

WhatsApp:  +34633129287     

Twitter: @dademuch

FACEBOOK: DademuchConnection

Sin categoría

Generar y graficar la función impulso unitario con Matlab

Se trata de una de las señales discretas más simples, la señal impulso unitario discreto, la cual se define como:

De hecho, la señal impulso unitario discreto es la base de la representación de las señales discretas, cualquier señal discreta se puede obtener como combinación lineal de deltas desplazadas. El ejemplo más relevante es el escalón unidad o escalón unitario.

Generar la función Impulso Unidad en Matlab

La función zeros(1,N) genera un vector de fila de N ceros, que se puede utilizar para implementar δ[n] en un intervalo finito. Sin embargo, la relación lógica n==0 es una forma elegante de implementar δ[n]. Por ejemplo, para implementar:

En el intervalo n1< no < n2 , usaremos la siguiente función en Matlab:

function[x,n]=impseq(n0,n1,n2)

%generates x[n]=delta(n-no); n1<=n<=n2

n=[n1:n2]; x=[(n-n0)==0];

Ahora podemos usar la función impseq como sigue, para implementar una función arbitraria T=δ[n-5] en el intervalo 0< no < 9:

n=[0:9];
T=impseq(5,0,9);
stem(n,T)

Obtenemos:

T =     0     0     0     0     0     1     0     0     0     0

La imagen tiene un atributo ALT vacío; su nombre de archivo es null-8.png

Note: para ver como se implementa una función en Matlab ver: matlab getstart, page 176, (4-22)

El poder y la eficiencia de esta aproximación se puede apreciar en el siguiente ejemplo.

Graficar la Función Impulso Unidad en Matlab

Ejemplo 1. Generar y graficar la siguiente secuencia sobre el intervalo indicado:

n=[-5:5];
x=2*impseq(-2,-5,5)-impseq(4,-5,5);
stem(n,x); title(‘Secuencia de Problema 1’)
xlabel(‘n’); ylabel(‘x[n]’)

Estos comandos generan el siguiente gráfico:

Revisión literaria hecha por:

Prof. Larry Francis Obando – Technical Specialist – Educational Content Writer

Se hacen trabajos, se resuelven ejercicios!!

WhatsApp:  +34633129287  Atención Inmediata!!

Twitter: @dademuch

Copywriting, Content Marketing, Tesis, Monografías, Paper Académicos, White Papers (Español – Inglés)

Escuela de Ingeniería Electrónica de la Universidad Simón Bolívar, USB Valle de Sartenejas.

Escuela de Ingeniería Eléctrica de la Universidad Central de Venezuela, UCV CCs

Escuela de Turismo de la Universidad Simón Bolívar, Núcleo Litoral.

Contacto: España. +34633129287

Caracas, Quito, Guayaquil, Jaén. 

WhatsApp:  +34633129287     

Twitter: @dademuch

FACEBOOK: DademuchConnection

Sin categoría

Secuencias elementales en Matlab- procesamiento de señales digitales

En MATLAB podemos representar una secuencia de duración finita mediante un vector de fila de valores apropiados. Sin embargo, dicho vector no tiene información sobre la posición n de la muestra. por lo tanto, una representación correcta de requeriría dos vectores, uno para x y otro para n. Por ejemplo

>> n=[-3,-2,-1,0,1,2,3,4]; x=[2,1,-1,0,1,4,3,7]

Generalmente, usaremos la representación del vector x solo cuando la información de la posición de la muestra no sea necesaria o cuando dicha información sea trivial (por ejemplo, cuando la secuencia comience en n = 0)

Tipos de secuencias

Usamos varias secuencias elementales en Procesamiento de señales digitales para propósitos de análisis. Lo ideal al utilizar Matlab para el procesamiento de señales digitales es diseñar funciones en archivos .m para aumentar la eficiencia y la claridad de los programas (scripts) que utilizaremos en la consola (Command Window) para procesar señales complejas que son combinaciones de las señales elementales. Proponemos este método a continuación. Para algunas funciones elementales sin embargo, como por ejemplo la secuencia sinusoidal coseno, ya Matlab tiene lo necesario en su menú.

Unit Sample sequence - Impulso Unitario

La función zeros(1,N) genera un vector de fila de N ceros, que se puede utilizar para implementar δ[n] en un intervalo finito. Sin embargo, la relación lógica n==0 es una forma elegante de implementar δ[n]. Por ejemplo, para implementar:

En el intervalo n1< no < n2 , usaremos la siguiente función en Matlab:

function[x,n]=impseq(n0,n1,n2)

%generates x[n]=delta(n-no); n1<=n<=n2

n=[n1:n2]; x=[(n-n0)==0];

Ahora podemos usar la función impseq como sigue, para implementar una función arbitraria T=δ[n-5] en el intervalo 0< no < 9:

>> T=impseq(5,0,9)

Obtenemos:

T =     0     0     0     0     0     1     0     0     0     0

La imagen tiene un atributo ALT vacío; su nombre de archivo es null-8.png

Note: para ver como se implementa una función en Matlab ver: matlab getstart, page 176, (4-22)

El poder y la eficiencia de esta aproximación se puede apreciar en el siguiente ejemplo.

Ejemplo 1. Generar y graficar la siguiente secuencia sobre el intervalo indicado:

n=[-5:5];
x=2*impseq(-2,-5,5)-impseq(4,-5,5);
stem(n,x); title(‘Secuencia de Problema 1’)
xlabel(‘n’); ylabel(‘x[n]’)

Estos comandos generan el siguiente gráfico:

Unit Step sequence - Escalón Unitario

La función ones(1,N) genera un vector fila de N unos. Se puede utilizar para generar u[n] en un intervalo finito. Una vez más, un enfoque elegante es utilizar la relación lógica n>=0. Para implementar:

En el intervalo n1< no < n2 , utilizaremos la siguiente función Matlab:

function[x,n]=stepseq(n0,n1,n2)

% Generates x(n)=u(n-n0); n1<=n<=n2

n=[n1:n2]; x=[(n-n0)>=0];

Ahora podemos utilizar la función stepseq como sigue,para implementar una función arbitraria P=u[n-5] en el intervalo 0< no < 18:

>> P=stepseq(5,0,18)

Obtenemos:

P =     0     0     0     0     0     1     1     1     1     1     1     1     1     1     1     1     1     1     1

La imagen tiene un atributo ALT vacío; su nombre de archivo es null-7.png

Ejemplo 2. Generar y graficar la siguiente secuencia sobre el intervalo indicado:

n=[0:20]; x1=10exp(-0.3(n-10)).(stepseq(10,0,20)-stepseq(20,0,20)); x2=n.(stepseq(0,0,20)-stepseq(10,0,20));
x=x1+x2;
stem(n,x); title(‘Secuencia de Problema 2’)

Estos comandos generan el siguiente gráfico:

Secuencia exponencial con valores reales

En Matlab es requerido el operador “” para implementar a real exponential sequence de la forma:

En el intervalo n1< no < n2. Por ejemplo, para implementar:

Usaremos la siguiente función de Matlab:

n=[0:10];;
x=(0.9).^n;
stem(n,x);
xlabel(‘n’); ylabel(‘x[n]’)

Este script genera:

Serie Geométrica

Una secuencia exponencial de un solo lado, de la forma:

Donde α es una constante arbitraria. Esta secuencia es llamada a geometric series.  En PDS, la convergencia y la expresión para la suma de los componentes de esta serie are es utilizado en muchas aplicaciones. La serie converge para:

Mientras se cumpla esta condición, la suma de los componentes de la serie geométrica converge a:

A partir de aquí, necesitamos además una expresión para la suma de cualquier número finito de términos de la serie, y está dado por:

Estos dos importantes resultados se utilizarán ampliamente en PDS.

Complex-valued exponential sequence

Where σ produces an attenuation (if<0) or amplification (if>0)  and ωo is the frequency in radians. The Matlab function exp generates the exponential sequences. For example, for x[n] =exp[(2+j3)n], 0n10, we will use the following script:

n=[0:10]; x=exp(3j*n);
stem(n,k)

This script yields:

Secuencia sinusoidal

Donde A es la amplitud y θo es la fase en radianes. Más sobre la frecuencia angular en La sinusoide en tiempo discreto

Las funciones Matlab cos o sin generan una secuencia sinusoidal. Por ejmplo, para x[n] =3cos(0.1πn+π/3)+2sin(0.5πn), 0n10, utilizaremos el siguiente script:

n=[0:10]; x=3*cos(0.1*pi*n+pi/3)+2*sin(0.5*pi*n);
stem(n,x)

Este script genera:

En construcción….

Fuente:

  • Digital Signal Processing Using Matlab, 3erd ed

ANTERIOR:

Revisión literaria hecha por:

Prof. Larry Francis Obando – Technical Specialist – Educational Content Writer

Se hacen trabajos, se resuelven ejercicios!!

WhatsApp:  +34633129287  Atención Inmediata!!

Twitter: @dademuch

Copywriting, Content Marketing, Tesis, Monografías, Paper Académicos, White Papers (Español – Inglés)

Escuela de Ingeniería Electrónica de la Universidad Simón Bolívar, USB Valle de Sartenejas.

Escuela de Ingeniería Eléctrica de la Universidad Central de Venezuela, UCV CCs

Escuela de Turismo de la Universidad Simón Bolívar, Núcleo Litoral.

Contacto: España. +34633129287

Caracas, Quito, Guayaquil, Jaén. 

WhatsApp:  +34633129287     

Twitter: @dademuch

FACEBOOK: DademuchConnection

email: dademuchconnection@gmail.com

Sin categoría

Elementary sequences in digital signal processing with Matlab

In MATLAB we can represent a finite-duration sequence by a row vector of appropriate values. However, such a vector does not have any information about sample position n. therefore, a correct representation of a discrete function x[n] would require two vectors, one each for x and n. For example, a sequence x[n] ={2,1,-1,0,1,4,3,7} can be represented in Matlab by:

>> n=[-3,-2,-1,0,1,2,3,4]; x=[2,1,-1,0,1,4,3,7]

Generally, we will use the x-vector representation alone when the sample position information is not required or when such information is trivial (e.g. when the sequence begins at n=0)

Types of sequences

We use several elementary sequences in Digital Signal Processing for analysis purposes.

Unit Sample sequence

The function zeros(1,N) generates a row vector of N zeros, which can be used to implement δ[n] over a finite interval. However, the logical relation n==0 is an elegant way of implementing δ[n]. For example, to implement:

Over the n1< no < n2  interval, will use the following Matlab function:

function[x,n]=impseq(n0,n1,n2)

%generates x[n]=delta(n-no); n1<=n<=n2

n=[n1:n2]; x=[(n-n0)==0];

Now, we can use the impseq function as follows, to implement an arbitrary function T=δ[n-5] over the 0< no < 9  interval:

>> T=impseq(5,0,9)

Result:

T =     0     0     0     0     0     1     0     0     0     0

Note: to see how to implement a Matlab function see: matlab getstart, page 176, (4-22)

The power of this approach can be see in the follow example.

Example 1. Generate and plot the following sequence over the indicated interval:

n=[-5:5];
x=2*impseq(-2,-5,5)-impseq(4,-5,5);
stem(n,x); title(‘Secuencia de Problema 1’)
xlabel(‘n’); ylabel(‘x[n]’)

This commands yield:

Unit Step sequence

The function ones(1,N) generates a row vector of N ones. It can be used to generate u[n] over a finite interval. Once again, an elegant approach is to use the logical relation n>=0. To implement:

Over the n1< no < n2  interval, will use the following Matlab function:

function[x,n]=stepseq(n0,n1,n2)

% Generates x(n)=u(n-n0); n1<=n<=n2

n=[n1:n2]; x=[(n-n0)>=0];

Now, we can use the stepseq function as follows, to implement an arbitrary function P=u[n-5] over the 0< no < 18 interval:

>> P=stepseq(5,0,18)

Result:

P =     0     0     0     0     0     1     1     1     1     1     1     1     1     1     1     1     1     1     1

Example 2. Generate and plot each of the following sequence over the indicated interval:

n=[0:20]; x1=10*exp(-0.3*(n-10)).*(stepseq(10,0,20)-stepseq(20,0,20));

x2=n.*(stepseq(0,0,20)-stepseq(10,0,20));
x=x1+x2;
stem(n,x); title(‘Secuencia de Problema 2’)

This commands yield:

Real-valued exponential sequence

In Matlab an array operator “” is required to implement a real exponential sequence of the form:

Over the n1< no < n2 interval. For example, to implement:

We will use the following Matlab function:

n=[0:10];;
x=(0.9).^n;
stem(n,x);
xlabel(‘n’); ylabel(‘x[n]’)

This script yields:

Geometric series

A one-side exponential sequence of the form:

Where α is an arbitrary constant. This sequences is called a geometric series.  In DSP, the convergence and expression for the sum of this series are used in many applications. The series converges for:

While this condition is true, the sum of the geometric series components converges to:

From here, we also need an expression for the sum of any finite number of terms of the series, and that is given by:

These two important results will be used deeply throughout DSP.

Complex-valued exponential sequence

Where σ produces an attenuation (if<0) or amplification (if>0)  and ωo is the frequency in radians. The Matlab function exp generates the exponential sequences. For example, for x[n] =exp[(2+j3)n], 0n10, we will use the following script:

n=[0:10]; x=exp(3j*n);
stem(n,k)

This script yields:

Sinusoidal sequence 

Sine waves are important because Fourier´s Theorem states that most signals of practical interest can be decomposed into an infinite sum of sine waves. Discrete-time signals (also called time series) are defined over the set of integers, that is, they are indexed sequences. A discrete-time sine wave is defined by:

Where A is an amplitude and  θo is the phase in radians. Where A is an amplitude and teta is the phase in radians. Meanwhile, ωo=2πf is the angular frequency and x[n] could be written as:

It is important to understand that the frequency of a discrete-time sinusoid is not uniquely defined. This fundamental ambiguity is a consequence of a basic trigonometric property:

In words, the value of a sinusoid does not change if an integer multiple of is added to its argument. Adding the 2πkn to the argument of equation (1) we get:

Two cases must be distinguished. If k≥-f, the equation (2) is equivalent to a sinusoid with frequency f+k with no change in phase:

On the other hand, if k<-f, equation (3) leads to a negative frequency. To avoid this, we introduce:

We also make use of the property:

In consequence, returning to equations (2) and three, we obtain a sinusoid of frequency l-f with a reversal in phase:

In conclusion, a discrete-time sinusoid with frequency f is identical to a same-phase sinusoid of frequency f+k, where k is any integer greater than –f, or to a phase-reversed sinusoid of frequency l-f if l>f.

Equation (3) can be expressed more concisely using complex exponential notation:

Because value of a complex exponential does not change if a multiple of is added to its argument, we get:

Equation (5) is equivalent to equation (4). Because of this fundamental frequency ambiguity, we will often implicitly assume that the angular frequency of a discrete-time sinusoid is restricted to the range –π≤ω≤π, or equivalent, that -1/2≤f≤1/2.

The Matlab function cos or sin generates the sinusoidal sequences. For example, for x[n]=3cos(0.1πn+π/3)+2sin(0.5πn), 0n10, we will use the following script:

n=[0:10]; x=3*cos(0.1*pi*n+pi/3)+2*sin(0.5*pi*n);
stem(n,x)

This script yields:

In construction ….

Source:

  • Digital Signal Processing Using Matlab, 3erd ed
  • Fundamentos_de_Señales_y_Sistemas_usando la Web y Matlab
  • Oppenheim – Señales y Sistemas
  • Análisis de Sistemas Lineales Asistido con Scilab – Un Enfoque desde la Ingeniería Eléctrica.

PREVIOUS:

Literature review by:

Prof. Larry Francis Obando – Technical Specialist – Educational Content Writer

Exercises are solved!!

WhatsApp:  +34633129287  Inmediate Attention!!

Twitter: @dademuch

Copywriting, Content Marketing, Tesis, Monografías, Paper Académicos, White Papers (Español – Inglés)

Escuela de Ingeniería Electrónica de la Universidad Simón Bolívar, USB Valle de Sartenejas.

Escuela de Ingeniería Eléctrica de la Universidad Central de Venezuela, UCV CCs

Escuela de Turismo de la Universidad Simón Bolívar, Núcleo Litoral.

Contacto: España. +34633129287

Caracas, Quito, Guayaquil, Jaén. 

WhatsApp:  +34633129287     

Twitter: @dademuch

FACEBOOK: DademuchConnection

email: dademuchconnection@gmail.com

Sin categoría

¿Cómo procesar una suma de funciones sinusoidales con Matlab?

Supongamos que queremos los valores generados por la señal x(t) siguiente a lo largo de un período de tiempo desde 0 hasta 1 segundos, con incrementos de 0.1 segundos, es decir, t=0:0.1:1:

>> t=0:0.1:1

t =   0    0.1000    0.2000    0.3000    0.4000    0.5000    0.6000    0.7000    0.8000    0.9000    1.0000

Vemos que la operación consiste en evaluar x(t) 11 veces (para 11 valores distintos de t):

¿Qué pasaría si tuviéramos que evaluar en un rango más amplio, tal como t entre 0 y 1, pero con incrementos de 0.01, es decir, t=0:0.01:1? Tendríamos que repetir el cálculo anterior 101 veces!!.

He aquí donde se observa claramente la ventaja del procesamiento de señales digitales, ya que la computadora nos permite hacer este trabajo iterativo mediante flujos de control aportados por aplicaciones que están al alcance de presupuestos ajustados. Veamos cómo se hace con Matlab.

Podemos expresar la función x(t) de nuestro ejemplo de la manera siguiente:

Primer método: En este enfoque, calcularemos cada componente sinusoidal en un paso como un vector, utilizando el tiempo t=0:0.1:1 como otro vector y luego sumando cada componente sinusoidal mediante un bucle for..end.

>> t=0:0.1:1;

>> xt=zeros(1,length(t));

>> for k=1:3

xt=xt+(1/k)*sin(2*pi*k*t);

>> end

Este algoritmo nos permite obtener de una manera muy eficiente, los valores de x(t) para el período de tiempo de interés:

xt = 0    1.3803    1.0490    0.4612    0.4293    0.0000   -0.4293   -0.4612   -1.0490   -1.3803   -0.0000

Segundo método: Veremos ahora como, por medio de la multiplicación matriz-vector, Matlab puede ser incluso más eficiente. Para fines de demostración, considere solo cuatro valores para t:

Que se puede escribir en forma de matriz como:

Después de realizar la transposición:

En consecuencia, el código en Matlab es:

>> t=0:0.1:1; k=1:3;

>> xt=(1./k)*sin(2*pi*k’*t)

Respuesta:

xt =    0    1.3803    1.0490    0.4612    0.4293    0.0000   -0.4293   -0.4612   -1.0490   -1.3803   -0.0000

Este es el código más compacto y la ejecución más eficiente en Matlab, especialmente cuando el número de términos sinusoidales es muy grande.

Revisión literaria hecha por:

Prof. Larry Francis Obando – Technical Specialist – Educational Content Writer

Se hacen trabajos, se resuelven ejercicios!!

WhatsApp:  +34633129287  Atención Inmediata!!

Twitter: @dademuch

Copywriting, Content Marketing, Tesis, Monografías, Paper Académicos, White Papers (Español – Inglés)

Escuela de Ingeniería Electrónica de la Universidad Simón Bolívar, USB Valle de Sartenejas.

Escuela de Ingeniería Eléctrica de la Universidad Central de Venezuela, UCV Caracas.

Escuela de Turismo de la Universidad Simón Bolívar, Núcleo Litoral.

Contacto: España. +34633129287

Caracas, Quito, Guayaquil, Jaén. 

WhatsApp:  +34633129287   

Twitter: @dademuch

FACEBOOK: DademuchConnection