Skip to content

Commit

Permalink
Maintenance cycle R2024b
Browse files Browse the repository at this point in the history
  • Loading branch information
vboutrou committed Oct 18, 2024
1 parent 265a932 commit 92698fe
Show file tree
Hide file tree
Showing 149 changed files with 1,079 additions and 224 deletions.
Binary file added Images/image_0.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Images/image_1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Images/image_2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Images/image_3.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Images/image_4.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Images/image_5.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Images/image_6.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Images/image_7.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Images/image_8.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file added InstructorResources/Solutions/Lab4_DFT_esSoln.mlx
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file added MainMenu.mlx
Binary file not shown.
11 changes: 0 additions & 11 deletions Navigation/LabStartup.m

This file was deleted.

Binary file removed Navigation/Navigacion.mlx
Binary file not shown.
Binary file removed Navigation/Navigacion2.mlx
Binary file not shown.
12 changes: 0 additions & 12 deletions Navigation/OpenOverview.m

This file was deleted.

129 changes: 4 additions & 125 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,130 +1,9 @@
# Análisis de Fourier
[![Ver ​​Análisis de Fourier​ en File Exchange](https://www.mathworks.com/matlabcentral/images/matlab-file-exchange.svg)](https://www.mathworks.com/matlabcentral/fileexchange/135291-analisis-de-fourier) o [![Abrir en MATLAB Online](https://www.mathworks.com/images/responsive/global/open-in-matlab-online.svg)](https://matlab.mathworks.com/open/github/v1?repo=MathWorks-Teaching-Resources/Fourier-Analysis_es&project=FourierAnalysis.prj&file=README.mlx)

**Módulo Curricular**
_Creado con R2021b. Compatible con R2021b y versiones posteriores._
[![View on File Exchange](https://www.mathworks.com/matlabcentral/images/matlab-file-exchange.svg)](https://www.mathworks.com/matlabcentral/fileexchange/135291-analisis-de-fourier) or [![Open in MATLAB Online](https://www.mathworks.com/images/responsive/global/open-in-matlab-online.svg)](https://matlab.mathworks.com/open/github/v1?repo=MathWorks-Teaching-Resources/Fourier-Analysis_es&project=FourierAnalysis.prj&file=README.mlx)

## Descripción ##
Este módulo curricular enseña el análisis de Fourier utilizando [live scripts](https://www.mathworks.com/products/matlab/live-editor.html) y [aplicaciones de MATLAB®](https://www.mathworks.com/products/matlab/app-designer.html) interactivas. El módulo se enseña desde una perspectiva de procesamiento de señales, adecuada para un curso introductorio de señales y sistemas. En la primera lección, los estudiantes utilizan aplicaciones para visualizar series de Fourier y desarrollar intuición sobre el dominio de frecuencia. En lecciones posteriores, los estudiantes estudian series de Fourier complejas, transformadas de Fourier y transformadas de Fourier discretas. A medida que los estudiantes avanzan, pasan de utilizar aplicaciones a escribir su propio código para analizar señales. A lo largo del módulo, los estudiantes aplican técnicas de Fourier para analizar señales de audio grabadas.
[![MATLAB Versions Tested](https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2FMathWorks-Teaching-Resources%2FFourier-Analysis_es%2Frelease%2FImages%2FTestedWith.json)](https://MathWorks-Teaching-Resources.github.io/Fourier-Analysis_es)

Cada tema incluye un laboratorio que aplica los conceptos enseñados en la lección. Las soluciones están disponibles a solicitud del instructor. Si desea solicitar soluciones o tiene alguna pregunta, comuníquese con el <a href="mailto:[email protected]">equipo de enseñanza en línea de MathWorks.</a>
**Curriculum Module**

Comience con el módulo curricular de Análisis de Fourier descargando y descomprimiendo el repositorio. Luego, haga doble clic en el archivo .prj del proyecto dentro de MATLAB. A partir de ahí, puede seguir las instrucciones de la página de inicio para comenzar con los ejemplos y laboratorios.
_Created with R2024a. Compatible with R2024a and later releases._

Este módulo ha sido traducido automáticamente del inglés.

## Detalles ##

<table style="vertical-align:top">
<tr>
<th>Módulo</th>
<th>Objetivos de Aprendizaje</th>
</tr>
<tr>
<td>
<b>1. Series de Fourier</b><br><br>
<img width="500" src="./Images/FourierSeriesCover.png" style="margin:10px" >
</td>
<td>
<ul>
<li>Comparar señales en los dominios de tiempo y frecuencia.</li>
<li>Analizar señales de audio en el dominio de frecuencia.</li>
<li>Visualizar modos de series de Fourier.</li>
<li>Describir cómo se representa el desplazamiento de fase en una serie de Fourier.</li>
<li>Discutir magnitud y fase.</li>
</ul>
</td>
</tr>
<tr>
<td>
<b>2. Series de Fourier Complejas</b><br><br>
<img width="500" src="./Images/ComplexSeriesCover.png" style="margin:10px" >
</td>
<td>
<ul>
<li>Recordar la fórmula de Euler.</li>
<li>Comparar series de Fourier complejas y reales.</li>
<li>Visualizar series de Fourier complejas.</li>
<li>Construir funciones utilizando series de Fourier complejas.</li>
</ul>
</td>
</tr>
<tr>
<td>
<b>3. Transformada de Fourier</b><br><br>
<img width="500" src="./Images/FourierTransformCover.png" style="margin:10px" >
</td>
<td>
<ul>
<li>Comparar series de Fourier con la transformada de Fourier.</li>
<li>Evaluar la transformada de Fourier de una función.</li>
<li>Representar señales utilizando funciones continuas.</li>
<li>Discutir ondas portadoras y modulación.</li>
<li>Comparar funciones en los dominios de tiempo y frecuencia utilizando la transformada de Fourier.</li>
</ul>
</td>
</tr>
<tr>
<td>
<b> 4. Transformada Discreta de Fourier</b><br><br>
<img width="500" src="./Images/DFTCover.png" style="margin:10px" >
</td>
<td>
<ul>
<li>Graficar la transformada discreta de Fourier (DFT).</li>
<li>Usar la función fft para calcular la DFT.</li>
<li>Relacionar la DFT con la transformada de Fourier.</li>
<li>Aplicar la DFT para analizar una señal de audio.</li>
</ul>
</td>
</tr>
</table>

## Aplicaciones ##

<table style="vertical-align:top">
<tr>
<td>
Series de Seno y Coseno <br>

<img width="200" src="./Images/SinCosSeriesApp.png" style="margin:10px">
</td>
<td>
Series de Fourier<br>

<img width="200" src="./Images/FourierSeriesApp.png" style="margin:10px">
</td>
<td>
Magnitud y Fase<br>

<img width="200" src="./Images/MagPhaseApp.png" style="margin:10px">
</td>
<td>
Series de Fourier Complejas<br>

<img width="200" src="./Images/ComplexSeriesApp.png" style="margin:10px">
</td>
</tr>
</table>

## Preparación sugerida ##

[MATLAB Onramp](https://matlabacademy.mathworks.com/details/matlab-onramp/gettingstarted) - un tutorial introductorio gratuito de dos horas que enseña los conceptos esenciales de MATLAB.

## Productos ##

MATLAB, Symbolic Math Toolbox&trade;

## Licencia ##

La licencia para este módulo está disponible en el archivo [LICENSE.md](LICENSE.md) en este repositorio de GitHub.

## Recursos para educadores ##

* [Featured Courseware](https://www.mathworks.com/academia/courseware/course-materials.html)
* [Enseñar con MATLAB y Simulink](https://www.mathworks.com/academia/educators.html)
* [MATLAB Grader](https://www.mathworks.com/products/matlab-grader.html)

## ##

_Copyright 2023 The MathWorks, Inc._
Binary file added README.mlx
Binary file not shown.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Binary file not shown.
Binary file not shown.
49 changes: 49 additions & 0 deletions SoftwareTests/CheckTestResults.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
classdef CheckTestResults < matlab.unittest.TestCase

properties (SetAccess = protected)
end

properties (ClassSetupParameter)
Project = {currentProject()};
end

properties (TestParameter)
Version
end


methods (TestParameterDefinition,Static)

function Version = GetResults(Project)
RootFolder = Project.RootFolder;
Version = dir(fullfile(RootFolder,"public","TestResults*.txt"));
Version = extractBetween([Version.name],"TestResults_",".txt");
end

end

methods (TestClassSetup)

function SetUpSmokeTest(testCase,Project)
try
currentProject;
catch
error("Project is not loaded.")
end
end

end

methods(Test)

function CheckResults(testCase,Version)
File = fullfile("public","TestResults_"+Version+".txt");
Results = readtable(File,TextType="string");
if ~all(Results.Passed)
error("Some of the tests did not pass.")
end
end

end

end
9 changes: 9 additions & 0 deletions SoftwareTests/FunctionTests.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
classdef FunctionTests < matlab.unittest.TestCase

% https://www.mathworks.com/help/matlab/matlab_prog/use-parameters-in-class-based-tests.html

methods(Test)

end % methods

end % classdef
3 changes: 3 additions & 0 deletions SoftwareTests/PostFiles/PostFourierCompleja.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
% Post-run script for FourierCompleja.mlx
% ---- Post-run commands -----

3 changes: 3 additions & 0 deletions SoftwareTests/PostFiles/PostFourierComplejaSoln.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
% Post-run script for FourierComplejaSoln.mlx
% ---- Post-run commands -----

3 changes: 3 additions & 0 deletions SoftwareTests/PostFiles/PostFourierDiscreta.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
% Post-run script for FourierDiscreta.mlx
% ---- Post-run commands -----

3 changes: 3 additions & 0 deletions SoftwareTests/PostFiles/PostFourierDiscretaSoln.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
% Post-run script for FourierDiscretaSoln.mlx
% ---- Post-run commands -----

3 changes: 3 additions & 0 deletions SoftwareTests/PostFiles/PostLab1_SerieDeFourier.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
% Post-run script for Lab1_SerieDeFourier.mlx
% ---- Post-run commands -----

3 changes: 3 additions & 0 deletions SoftwareTests/PostFiles/PostLab1_SerieDeFourierSoln.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
% Post-run script for Lab1_SerieDeFourierSoln.mlx
% ---- Post-run commands -----

3 changes: 3 additions & 0 deletions SoftwareTests/PostFiles/PostLab2_SerieDeFourierCompleja.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
% Post-run script for Lab2_SerieDeFourierCompleja.mlx
% ---- Post-run commands -----

3 changes: 3 additions & 0 deletions SoftwareTests/PostFiles/PostLab2_SerieDeFourierComplejaSoln.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
% Post-run script for Lab2_SerieDeFourierComplejaSoln.mlx
% ---- Post-run commands -----

3 changes: 3 additions & 0 deletions SoftwareTests/PostFiles/PostLab3_TransformadaFourier.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
% Post-run script for Lab3_TransformadaFourier.mlx
% ---- Post-run commands -----

3 changes: 3 additions & 0 deletions SoftwareTests/PostFiles/PostLab3_TransformadaFourierSoln.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
% Post-run script for Lab3_TransformadaFourierSoln.mlx
% ---- Post-run commands -----

3 changes: 3 additions & 0 deletions SoftwareTests/PostFiles/PostLab4_DFT_es.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
% Post-run script for Lab4_DFT_es.mlx
% ---- Post-run commands -----

3 changes: 3 additions & 0 deletions SoftwareTests/PostFiles/PostLab4_DFT_esSoln.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
% Post-run script for Lab4_DFT_esSoln.mlx
% ---- Post-run commands -----

3 changes: 3 additions & 0 deletions SoftwareTests/PostFiles/PostSerieDeFourier.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
% Post-run script for SerieDeFourier.mlx
% ---- Post-run commands -----

3 changes: 3 additions & 0 deletions SoftwareTests/PostFiles/PostSerieDeFourierSoln.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
% Post-run script for SerieDeFourierSoln.mlx
% ---- Post-run commands -----

3 changes: 3 additions & 0 deletions SoftwareTests/PostFiles/PostTransformadaDeFourier.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
% Post-run script for TransformadaDeFourier.mlx
% ---- Post-run commands -----

3 changes: 3 additions & 0 deletions SoftwareTests/PostFiles/PostTransformadaDeFourierSoln.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
% Post-run script for TransformadaDeFourierSoln.mlx
% ---- Post-run commands -----

66 changes: 66 additions & 0 deletions SoftwareTests/PostSmokeTest.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
function PostSmokeTest(ShowReport)
arguments
ShowReport (1,1) logical = false;
end

import matlab.unittest.plugins.TestRunnerPlugin;

% Create the runner:
Runner = matlab.unittest.TestRunner.withTextOutput;

% Create report folder:
Folder = fullfile(currentProject().RootFolder,"public");
if ~isfolder(Folder)
mkdir(Folder)
end

% Add HTML plugin:
Plugin = matlab.unittest.plugins.TestReportPlugin.producingHTML(Folder,...
"IncludingPassingDiagnostics",true,...
"IncludingCommandWindowText",false,...
"LoggingLevel",matlab.automation.Verbosity(1));
Runner.addPlugin(Plugin);


% Create Test Suite
Suite = testsuite("CheckTestResults");

% Run the test suite
Results = Runner.run(Suite);


% Format the results in a table and save them
Results = table(Results');
Version = extractBetween(string(Results.Name),"Version=",")");
Passed = Results.Passed;

% Add link to other report
File = fileread(fullfile("public","index.html"));
for iVer = 1:length(Version)
File = replace(File,"Version="+Version(iVer),...
sprintf('<a href="%s/index.html">%s</a>',Version(iVer),"Version="+Version(iVer)));
end
writelines(File,fullfile("public","index.html"),"WriteMode","overwrite");

% Format the JSON file
Badge = struct;
Badge.schemaVersion = 1;
Badge.label = "Test Status";
if all(Passed)
Badge.color = "success";
Badge.message = join("R"+Version," | ");
elseif any(Passed)
Badge.color = "yellowgreen";
Badge.message = join("R")
elseif all(~Passed)
Badge.color = "critical";
Badge.message = join("R"+Version," | ");
end
Badge = jsonencode(Badge);
writelines(Badge,fullfile("Images","TestedWith.json"));

if ShowReport
web(fullfile(Folder,"index.html"))
end

end
Binary file added SoftwareTests/PreFiles/ComplexFourierSeries.mat
Binary file not shown.
Binary file not shown.
Binary file added SoftwareTests/PreFiles/FourierSeries.mat
Binary file not shown.
Binary file added SoftwareTests/PreFiles/Lab1_FourierSeries.mat
Binary file not shown.
Binary file added SoftwareTests/PreFiles/Lab4_DFTSoln.mat
Binary file not shown.
10 changes: 10 additions & 0 deletions SoftwareTests/PreFiles/PreFourierCompleja.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
% Pre-run script for ComplexFourierSeries.mlx
% ---- Known Issues -----
KnownIssuesID = "";
% ---- Pre-run commands -----
soundsc = @(x,y) disp("Using soundsc");
audioread = @(x) NewAudioRead(x);
function varargout=NewAudioRead(varargin)
load(fullfile(currentProject().RootFolder,"SoftwareTests","PreFiles","ComplexFourierSeries.mat"));
varargout={yGuitar,FsGuitar};
end
10 changes: 10 additions & 0 deletions SoftwareTests/PreFiles/PreFourierComplejaSoln.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
% Pre-run script for ComplexFourierSeries.mlx
% ---- Known Issues -----
KnownIssuesID = "";
% ---- Pre-run commands -----
soundsc = @(x,y) disp("Using soundsc");
audioread = @(x) NewAudioRead(x);
function varargout=NewAudioRead(varargin)
load(fullfile(currentProject().RootFolder,"SoftwareTests","PreFiles","ComplexFourierSeries.mat"));
varargout={yGuitar,FsGuitar};
end
10 changes: 10 additions & 0 deletions SoftwareTests/PreFiles/PreFourierDiscreta.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
% Pre-run script for ComplexFourierSeries.mlx
% ---- Known Issues -----
KnownIssuesID = "";
% ---- Pre-run commands -----
soundsc = @(x,y) disp("Using soundsc");
audioread = @(x) NewAudioRead(x);
function varargout=NewAudioRead(varargin)
load(fullfile(currentProject().RootFolder,"SoftwareTests","PreFiles","DiscreteFourierTransform.mat"));
varargout={g2Ch,Fs};
end
Loading

0 comments on commit 92698fe

Please sign in to comment.