Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
Ingeniería Biomédica 1 Introducción al MATLAB: funciones y estructuras de control Msc. Amanda Moya Gómez1 Ing. Alfredo Lobaina Delgado1 1Departamento de Biomédica Universidad de Oriente (Lecture 6) Introduction to Biomedical Engineering Ing. Biomédica 1- 2022 1 / 12 Bibliografía Moore, Molly Matlab para ingenieros (Capítulo 8). Utah : Pearson Prentice Hall, 2018. Ayuda del Matlab. (Lecture 6) Introduction to Biomedical Engineering Ing. Biomédica 1- 2022 2 / 12 Sumario 1 Declaración de funciones 2 Estructuras de control y ciclos Condicionales if, else, elseif Ciclos for 3 Diagramas de flujo para algoritmos (Lecture 6) Introduction to Biomedical Engineering Ing. Biomédica 1- 2022 3 / 12 Sintaxis del Matlab: Funciones Prototipo general de una función en Matlab function [Out_1] = Name_function (In1, In2, ...) % % Datos de entrada y salida % In1 Argumento de entrada 1 (opcional) % In2 Argumento de entrada 2 (opcional) % Out_1 Argumento de salida 1 (opcional en caso de no retorno) % % Cuerpo de la función % Esta funcion no hace nada end % fin de la función Ejemplo function [sum resta] = Sum_Res (a, b) % a es un sumando % b es otro sumando sum= a+b resta= a-b end (Lecture 6) Introduction to Biomedical Engineering Ing. Biomédica 1- 2022 4 / 12 Built-in functions Ejemplos de funciones que ya Matlab incorpora (built-in functions): real(z) % parte real de un número complejo imag(z) % parte imaginaria de un número complejo abs(z) % módulo de un número imaginario angle(z) % fase de un número imaginario >�> z=5i+9; >�> y= real(z) y= 9 (Lecture 6) Introduction to Biomedical Engineering Ing. Biomédica 1- 2022 5 / 12 Sintaxis: Crear una nueva función o un nuevo script (Lecture 6) Introduction to Biomedical Engineering Ing. Biomédica 1- 2022 6 / 12 Programación en Matlab: if, else, elseif Solución en Script % % Si dos al cuadrado es cuatro, %imprime ’Obvio’ if 2^2 == 4 disp('Obvio ') end ) Solución en Script function Encuesta(respuesta) % % Imprime de acuerdo a opciones % del usuario if respuesta == 1 disp('Messi es el mejor') elseif respuesta == 2 disp('Cristiano Ronaldo:es el mejor') else disp('Yo soy el mejor') end end (Lecture 6) Introduction to Biomedical Engineering Ing. Biomédica 1- 2022 7 / 12 Programación en Matlab: if, else, elseif Ejercicio 3: Buscar si el valor de RR en el latido 11 está por encima de 1.03 s. Si es así, mostrar en pantalla la palabra ok, sino, mostrar revisar. Marcar latido de interés. Solución en Script load rr.mat plot(rr,'.–blue') xlabel('Latidos') ylabel('RR(s)') hold on plot(11,rr(11),'*m') if rr(11)>1.03 disp 'ok' else disp 'revisar' end (Lecture 6) Introduction to Biomedical Engineering Ing. Biomédica 1- 2022 8 / 12 Programación en Matlab: ciclos for Sintaxis más común for índice=val_inicial:val_final instrucciones end Solución en Script % % Para que no cuentes hasta % 100 con los dedos: cont=0; for i=1:100 cont=cont+1 end Palabras de agradecimiento el día de la tesis (Lecture 6) Introduction to Biomedical Engineering Ing. Biomédica 1- 2022 9 / 12 Programación en Matlab: ciclos for Utilice las siguientes variantes para obtener el promedio de duración de los latidos presentes en el registro rr.mat, referente a un tacograma. 1 Mediante un ciclo for 2 Mediante la función sum 3 Mediante la función mean Variante 1 load rr.mat suma=0; for i=1:length(Srr) suma=suma+Srr(i); end prom=suma/size(Srr,2); Variante 2 prom=sum(Srr)/length(Srr); Variante 3 prom=mean(Srr); (Lecture 6) Introduction to Biomedical Engineering Ing. Biomédica 1- 2022 10 / 12 Diagramas de flujo para algoritmos El óvalo se usa para indicar el comienzo o final del algoritmo El paralelogramo se usa para indicar procesos o datos de entrada y salida El rombo indica un punto de decisión Los procesos o cálculos se colocan en rectángulos Los subprocesos se colocan en rectángulos con barras verticales Inicio Obtener ecuación a partir de: N2O(p) = O2(p) Ajustar ecuación MI-MD=0 Hallar raíces con la función roots() Reducir términos semejantes Graficar ambas expresiones de flujo Fin Figura : Diagrama de flujo a partir del seudocódigo de un algoritmo [Ejemplo de la Conferencia 5] (Lecture 6) Introduction to Biomedical Engineering Ing. Biomédica 1- 2022 11 / 12 Estudio Independiente 1 Estudiar operadores relacionales y lógicos, en el acápite 8.1 del libro: Matlab para Ingenieros. 2 Estudiar Ejemplo 8.1, página 251 del libro: Matlab para Ingenieros. 3 Realice diagramas de flujo para más de tres ejercicios dejados en las conferencias anteriores. 4 Responda la Guía 3. (Lecture 6) Introduction to Biomedical Engineering Ing. Biomédica 1- 2022 12 / 12 Declaración de funciones Estructuras de control y ciclos Condicionales if, else, elseif Ciclos for Diagramas de flujo para algoritmos
Compartir