SS_Logo

Introducción a la programación con Maple y aplicaciones

Autor: William Alfredo Fajardo Cárdenas / Portafolio: Scientific / Vie. 26 de Ago de 2022

Transcripción de este video

00:00:43:23 Somos un equipo autogestionado, responsable, proactivo y autónomo, con gran compromiso social, aportando al pensamiento científico y al desarrollo latinoamericano, promoviendo el uso de software para investigación en todas las áreas del conocimiento. Generamos contenido de alta calidad teniendo en cuenta las distintas necesidades del mercado. Realizamos actividades gratuitas constantemente. Abordamos temáticas vigentes, aplicaciones especializadas y elementos metodológicos que te permiten interactuar y generar redes para la difusión de tus proyectos.

00:01:10:23 Contamos con servicio de asesoría, consultoría y acompañamiento personalizado, certificaciones internacionales, entrenamientos especializados y talleres prácticos. Nuestro principal objetivo es promover el uso de tecnología en el campo investigativo, generando un impacto significativo en la región y de esta forma contribuir a la creación de comunidad para compartir conocimiento.

00:01:43:17 Te invitamos a ser parte de este gran equipo Software Shop. Visita nuestra página web y conoce nuestros servicios Shopper Shop. La empresa líder en la implementación de herramientas analíticas y software especializado en Latinoamérica, les da la bienvenida a esta presentación. El día de hoy contamos con el acompañamiento del instructor William Fajardo, matemático de la Universidad Nacional de Colombia, con maestría y doctorado en esa misma institución.

00:02:15:22 Cuenta con extensa experiencia de docencia en la Educación Superior en cursos de Matemáticas para Ingeniería y Matemática Pura, entre otros, además de una amplia formación e investigación en matemáticas puras y aplicadas. Bienvenidos! Qué bueno! Entonces. Muy buenos días para todos. Bueno, entonces, la idea, digamos que te quiero presentarles hoy es hablar acerca de la programación en Maipú. Yo lo que realmente quiero compartir aquí es de mi propia experiencia.

00:02:56:07 Hace unos años venía trabajando con unos temas teóricos de álgebra y de pronto algunas preguntas de cómo aplicar eso, como implementar eso? Y surgieron dentro de toda esa investigación y digamos que yo mismo revisé muchas, muchas posibilidades de softwares y diferentes, digamos, formas de programar y se presentó, pues me di, me abrió una mirada digamos específica y lo fundamental que se ve eran algunos potenciales que no podía ver de pronto en otros, en otros softwares.

00:03:29:04 En particular, la eficiencia es un motor que cada vez es mejor y como primera medida, como segunda medida, brain play interface gráfica es una cosa que ayuda mucho y aparte, pues obviamente que los paquetes que contiene m input en sí mismo son fundamentales y ayudan mucho para poder digamos y como ayudarse digamos en en términos de utilizar ese tipo de herramientas como para simplificar un poco los problemas complejos que se presentan.

00:03:55:05 Bueno, eso como primera medida. Bueno, entonces la idea de que la presentación está seleccionada, digamos, en una introducción básica. Luego vamos a darte algunos elementos básicos de programación en papel. Esto es como, simplemente como una ilustración. Seguramente se van a salir algunos elementos que se puedan utilizar, pero como fundamentales. Y después vamos a hablar del concepto de función y paquete listo.

00:04:21:05 Vamos a mirar algunos ejemplos básicos. De pronto, algunas funciones interesantes más adelante y el pronto enfocado ya como en algunos contextos, digamos, decide distintas disciplinas. Sí, a ver si es que se salen hasta un poquito de la matemática, pero es muy interesante que se puedan observar. Finalmente vamos a ver unas conclusiones y la idea es hacer, digamos, énfasis en las preguntas que ustedes tengan.

00:04:50:06 Bueno, entonces como introducción tenemos pues básicamente lo que les acabo de comentar e la importancia digamos de usar librerías y el hecho de poder crear funciones, crear conjuntos de funciones encapsuladas, que lo que no se entiende como un paquete y eso ayuda mucho para tener autonomía digamos del usuario y utilizar el potencial, digamos mismo que tiene mi en sí.

00:05:17:23 Bueno, vamos entonces a los elementos básicos de la programación con B. Entonces aquí simplemente lo que quiere es comentarles acerca de un poco de la sintaxis, digamos de algunas de algunos de los elementos importantes en programación. Vamos a revisar entonces algunas estructuras de datos que son bien interesantes, bien importantes en el uso de mapas. Entonces es un primer elemento importante, digamos, de estructura de datos.

00:05:47:22 Es lo que se llama una secuencia de expresión, es una secuencia de expresión, es un grupo de expresiones que se separan por comas. Entonces aquí, por ejemplo, tenemos un ejemplo aquí s y dos puntos igual. Entonces, como primera medida en Maipú tenemos variables. Listo, entonces una variable, por ejemplo, puede ser esta S mayúscula que está allí cuando colocamos dos puntos igual lo que estamos es asignándole a esa variable los elementos que están a la derecha de eso.

00:06:23:00 Cuando colocamos en esta parte de acá, eso significa que esa es la secuencia expresión puesto y asignando a ese listo. Entonces es un conjunto de elementos que se separan por comas. Bien, una forma más como digamos, y técnica para poder definir secuencias de expresión es utilizando un comando que se llama seq sep. Con respecto a secuencia, por ejemplo, queremos definir una secuencia de números pares que vayan desde el dos al 40, entonces la definimos como sec, dos y IL y lo ponemos a variar entre uno y B.

00:07:02:17 Listo? Bien, ese es un elemento interesante que se utiliza y es muy útil dentro de la programación. Otro ítem, digamos, otro detalle interesante, por ejemplo, para llamar, digamos, un elemento de las de la secuencia, por ejemplo, de la secuencia es el último elemento, por ejemplo, para llamar a ese elemento. Entonces qué hacemos? Pues dentro de estos paréntesis rectangulares, ese de -1 que nos va a llamar el último elemento, en este caso, que es el T, en esa, en esa secuencia, esto mira que ya aparece y para qu d1, pues se va a salir el elemento cursor listo, que en este caso es el primero, que es el dos.

00:07:36:24 Bueno, son elementos básicos de estructura. Otro elemento interesante que es una estructura muy útil, es el concepto de conjunto. Entonces los conjuntos E es un conjunto de elementos y en no hay polos vamos a a ilustrar copiando los entre llaves, entre llaves esto entonces lo separamos por comas y pues los colocamos entre llaves y eso nos define un conjunto y le estamos asignando a ese el conjunto formado por esos elementos, a, digamos, análogamente al conjunto.

00:08:19:14 También se definen las listas. Listo. Entonces, por ejemplo, aquí tenemos. Definimos una secuencia de secuencia de los enteros desde 3 a 22 y adicionalmente le colocamos entre estos paréntesis rectangulares, esa secuencia. Entonces, eso es lo que está identificando a L. Es como una lista. Listo? Bueno, otras se cue, digamos, estructuras interesantes que también se pueden usar, entre otras muchas más interesantes que hay, pero fundamentalmente arrays que son como secuencias de listas generalizadas, matrices, vectores, operadores de funciones y cadenas de caracteres.

00:08:56:07 Listo. Son notas que también se pueden utilizar, que son muy, muy útiles en programación. Bueno, revisemos algo de tipos de expresiones en make. Entonces un tipo en maple listo es una clase bien amplia, digamos, de elementos que tienen propiedades comunes. En mi pool hay muchos tipos ahí, cómo aparece allí y uno puede definir tipos, y esto ayuda mucho también como para que la programación sea muy reconocida.

00:09:26:02 Bien, y digamos que esté muy bien detallada. Por ejemplo, que aparece un tipo que se llama tipo suma, tipo booleano, tipo constante, tipo entero, tipo número de punto flotante, tipo matriz, tipo, procedimiento listo. Pues son nombres usuales de esos tipos, hay muchos más. Como les comento, simplemente coloco unos pocos y y por ejemplo el comando type sí nos permite decir sin elementos de un tipo.

00:09:53:03 Entonces si colocamos type de X Maggie y la idea siquiera si, por ejemplo, es del tipo suma, en efecto, y nos identifica que es de tipo sub listo cuando le damos aquí la ejecución. Lo mismo para cada uno de esos elementos que aparecen aquí los true de tipo booleano. Vi que es una constante y así es que se puede escribir la constante pick o se puede utilizar también el panel de paletas donde están los símbolos también?

00:10:16:24 Sí. Entonces, por ejemplo, por ahí debemos en el pi listo como está acá y pues también lo podemos identificar entonces como una constante. Por ejemplo, el tipo tres indica lo que es que es un entero 2.4, que es un número de punto flotante, una matriz. Este símbolo de acá, por ejemplo, que se mire, miren lo que se obtiene aquí en la paleta, listo, entonces es un procedimiento.

00:10:42:09 Entonces eso es lo que vamos a entender como una función. Listo? Bueno, entonces estos son algunos de los tipos, y digamos, como una visión muy, muy rápida de ejemplos de hechos. Bueno, otros elementos fundamentales en programación es lo que vamos a entender como elementos de control de flujo. Listo. Vamos a hablar a a modo y lo que nos interesa de allí es simplemente como la notación.

00:11:15:11 La notación como para tener en cuenta, digamos, dentro de la programación que se puede hacer, como es la sintaxis. La sintaxis entonces, bueno, dentro de la programación, entonces uno utiliza algunos elementos como el ci, el, el for, el while, el du du while, a veces llamado así o es como está aquí y pues se utiliza muchísimo, digamos, para ser, para escribir código, para resolver esos problemas de programación.

00:11:44:21 Entonces simplemente voy a nombrar y voy a mostrarles como se utiliza. Entonces el if, digamos, simplemente se define como y entonces colocamos una, una expresión inicial, condicional. Listo, una condición. Si esta condición se cumple, entonces ahí colocamos una secuencia, digamos, de declaraciones erf el if, quien está haciendo le está diciendo, si no se cumple la expresión condicional inicial, entonces sí se cumple.

00:12:17:11 Ahora revise, se revisa la expresión segunda condicional listo y entonces ejecuta una segunda declaración de secuencia. Listo. Y así sucesivamente. Digamos A puede tomar eso obviamente en un número determinado de casos si queremos, y no si no se cumple ninguna de las anteriores expresiones condicionales, entonces él es no dice entonces que se va a ejecutar. Entonces la última secuencia de declaración así trabaja Elif.

00:12:47:04 Listo, miremos ejemplos así básicos simplemente como para ilustrar cómo se escribe neighbors. Entonces, por ejemplo, aquí tenemos x dos puntos igual ese número. Entonces le estamos asignando a X el número 3322. Entonces decimos si no es primo Spring, es una función implícita ya M y I1, entonces ya me va a decir si es verdad o si es falso que sea un número primo listo.

00:13:12:02 Entonces, si esta relación se cumple, o sea, si X no es primo, entonces se ejecuta. Y factor de X y factor también es otra función de network, que lo que está haciendo es que está. Si el número es primo, entonces lo que digo es si el número a X simplemente lo está descomponiendo como producto de factores. Listo, entonces hay que ir con producto de factores primos.

00:13:30:02 Listo. Piensen que aquí lo que está haciendo es eso. Si el número fuera primo, entonces pues y simplemente no voy a hacer nada porque pues ya no es que uno lo va a descomponer porque no está ejecutando sea la relación de sí. Bueno, este sería un caso muy elemental del IF, fíjese en como se utiliza utilizando ya la versión más general.

00:14:02:14 Entonces por ejemplo, si X es menor que mil, entonces en lo que va a ser es que imprime. Así se escribe la noción de primo listo de imprimir en, en, en la interface gráfica. Entonces de pronto los conocedores, de pronto el lenguaje o algo, algún otro lenguaje se van a dar cuenta que es muy similar. Listo, entonces el va a imprimir menor que mil, si en este caso es menor que mil, si no se cumple eso, entonces él mira si X es menor que 2000, entonces si eso ocurre, entonces él va a escribir menor que 2000.

00:14:23:17 Si eso no se cumple, entonces va a decir que él es mayor o igual a 2000. Listo, entonces por ejemplo, vamos a ejecutar la parte, ya se cuenta que sale así, tal cual como estaba allí y aquí en este caso, entonces nos va a decir que ese número X es mayor o igual a 2000 liso. Pues así es que se escribe ese tipo de declaraciones en Maybe.

00:14:50:13 Bueno, entonces miremos, se declaraciones del bloque bucle for evo que for digamos, tiene la sintaxis siguiente. Entonces para definimos aquí una variable contador desde un valor inicial y aquí voy incremen. Entonces el incremento es como un valor que puede ser positivo o negativo. Así que es que en que se va a incrementar precisamente el contador hasta un valor final.

00:15:23:10 Colocamos du es colocamos la la cadena digamos de declaraciones que se va a ejecutar n para por cada uno de sus movimientos de él del incremento en ese contador. Y finalizamos así el for en tu listo. Bueno, entonces otra forma de escribir los for es de la forma siguiente para por entonces colocamos una variable in esté. Este se escribe así textualmente Una expresión es expresión podría ser un conjunto o una lista listo du.

00:15:55:18 Y entonces colocamos una secuencia de declaraciones y finalizamos igual que en la parte anterior. Entonces son como dos formas de escribir el for listo. Bueno, entonces aquí, miremos ejemplos de esto. Entonces, para n desde 15 y le colocamos un incremento negativo de una unidad, entonces va desde 15, decreciendo hasta cinco. Entonces el va a chequear si N es primo y entonces lo que va a ser es que va a imprimir el N listo.

00:16:29:04 Dese cuenta de que esto lo estamos escribiendo directamente en la interfaz. En la interfaz vamos a correr eso. Entonces, en efecto, nos va a empezar a escribir los primos desde 15 a 1000 a cinco les de crecientemente, entonces en este caso serían estos listo desde tres, este cinco listo. En ese caso particular. Y aquí está, digamos un ejemplo básico y como se utiliza la otra forma de escribir los for, entonces for y la variable de contador de este caso que se está moviendo.

00:16:54:03 Dónde? En la lista. En la lista que va de uno cuatro. Listo? Bueno, entonces si para cada y el doc toma de forma ascendente. Si, pues empezando por el elemento de la primera componentes a la última y lo que hace es aplicar esta función eval F, que lo que hace es una cohesión interna de Maybe, que simplemente lo que hace es escribir este número como un número de punto flotante.

00:17:21:02 Listo, entonces la SEC calculó el seno de ese y en ese número que está variando por PI sobre 180. Listo, aquí se toman una cantidad particular de cifras decimales. También se puede ajustar eso. Digamos que esa es la forma en que trabaja el for bien. Y para finalizar, de estos. De estos elementos digamos que son útiles en programación el baile y el duque anticristo que les había comentado.

00:17:55:23 Entonces la sintaxis aquí son muy parecidas. White, la condición, el du, la secuencia de la secuencia, digamos de declaraciones en du visto y para el du. Entonces hace la secuencia de parámetros allí, de declaraciones antis hasta que se cumpla, digamos, la expresión que está allí. Entonces así funciona la sintaxis para el with y el du. Miremos ejemplos básicos.

00:18:20:14 Por ejemplo, aquí vamos a contar el número de primos menores que entonces vamos a darle un valor a la vamos a asignarle al valor 2002 200 y antes de vamos a asignar el número cero y a n vamos a tomar asignarle también el valor dos. Listo, un detallito que la notación cuando colocamos dos puntos. Listo. Entonces al ejecutar esa esa relación de allí, después nos va a escribir.

00:18:43:22 Hay cientos en pantalla. Listo. Cuando colocamos a cuando colocamos punto y coma, la cosa viene. Ajustes. Bueno, colocamos un tip como entonces, al ejecutar esa sección de, digamos, de aquí, el. El código que tengo dese cuenta que me escribe a igual a 200 cuando yo le coloco esta expresión seguida de dos puntos simplemente el a cero, la sin cometer, pero no lo va a escribir en pantalla.

00:19:04:12 Listo. Entonces a veces uno digamos por comodidad, por ejemplo por escribir así, a esto va que no escriba mucho detalle. Se encuentra aquí quien escribió a Iguala. O sea. Bueno, entonces aquí utilizamos por ejemplo igual cual. Entonces mientras el N en este caso ya está por dos sea menor que A en este caso y vamos a vale 200.

00:19:31:17 Entonces si en es primo, sí, en es primo. Entonces el contador que estaba en cero va a empezar a moverse esto y luego a N le vamos a asignar un número, número adicional, esto que lo que va a hacer nos va contar. Cuántos primos? Sí hay mayores o iguales a dos y menores que objetos. Listo? Bien. De forma análoga, podemos escribir ese mismo código utilizando du.

00:19:55:17 Listo. Entonces, aquí. Simplemente esto es como para que se den cuenta como se escribe un poco, digamos, ese tipo de declaraciones. Entonces, a te damos el valor 200 A con que le damos el valor cero y el código utilizado aquí? Podría ser este una forma de escribir. Entonces hacemos a le asignamos a un valor anterior listo a -1.

00:20:28:05 Y si ese valor A es primo, entonces el contador lo incrementamos listo. Y todo esto lo vamos a hacer hasta que así igualas desde ese. De forma análoga, digamos, se va a tener el mismo resultado que obtuvimos cuando utilizamos el wait anteriormente. Listo, corremos acá entonces. Bueno, ya se encuentra aquí. Me escribe igual a 200, por lo que estos con punto y coma y me escribe al final el resultado digamos que se obtiene aquí el, digamos, el número del contador.

00:20:52:22 Fíjese que quise escribir el contador, el valor que tomó y esto es 46. Entonces me está diciendo cuántos primos hay menores que 200? Bueno, pues esto simplemente era para mostrarles la parte de cómo se utilizan estos elementos básicos. Bueno, vamos a hablar entonces de funciones y creación de paquetes, que es como uno de los centros interesantes, digamos, de.

00:21:21:20 De de esta charla. Bueno, definición básica, pues de abajo un espacio. Si yo allí simplemente para. Para, digamos, mostrarles que una función se puede representar en papel de manera muy sencilla. Y yo por ejemplo pues mire, vamos a el panel de paletas, vamos a utilizar este este símbolo aquí f tus puntos igual a esa flecha y listo. Entonces esto como es?

00:21:53:13 Como trabaja. Entonces a F le vamos a asignar dos puntos. Igual significa que le vamos a asignar una función de esto. Entonces la función, por ejemplo, vamos a hacer que haga esto, por ejemplo, que a X le asigne por ejemplo, y coloquemos le por ejemplo acá X más dos listo. Así se define la función, simplemente la función lineal, que en este caso a X le asigna x más dos, ahí ya está definida F como función.

00:22:22:11 Entonces, por ejemplo, escribamos acá f f de T A, qué hace esto? En efecto, escribe su evaluación. Listo. Esa es una forma muy sencilla de definir funciones en Max. Listo. Tanto se pueden hacer, digamos así, por ejemplo, para el caso de una sola variable, también para el caso de múltiples variables. Listo. Por ejemplo, aquí aparece en el panel F los puntos igual A, B y Z es eso.

00:23:00:18 Por ejemplo, sería la forma para definir una función en dos variables. Pues hagamos un ejercicio sencillo y rápido. Entonces escoge la pareja. 15 y por ejemplo que le hace el corresponder por ejemplo x al cuadrado más se cuadra, listo y en efecto entonces ya la define. Y por ejemplo calculemos f de A como a B. Bueno, en este caso lo que pasa es que el VE estaba definido antes, si le habíamos dado un valor anterior a no, el valor de la en la cosa le coloca el valor de la ley da un valor.

00:23:36:00 Acá si ella estaba inicializado por acá. Listo. Por eso toma ese valor a diez en cuenta. Aquí podemos utilizar en particular esta declaración restart listo. Es bueno, es hablar de esto. Esto lo que hace es que borra, digamos, dos asignaciones de de memoria que se han dado en esta hoja. Si utilizamos ahora sí F de a, b a hoy, borramos toda la asignación completa anterior, por lo que hemos esto por acá, lo que hemos esto por ejemplo, al comienzo de esta sesión, aquí esta parte de la resta, vamos a definir otra vez la función F.

00:24:03:15 Listo, definamos la otra vez aquí en y ya está definida tal cual como la función que hoy tiene la sin x, fuera o fuera. Y en efecto tiene que ir a cuadrado más de cuadra. Listo. Entonces es bueno tener en cuenta eso sí, en la hoja, digamos, si las asignaciones se mantienen ahí, entonces pues obviamente que digamos haya veces que hacer que ocurra, digamos la memoria que está utilizada en el momento, eso por un lado.

00:24:40:06 Bueno, entonces sí se pueden definir funciones de una forma muy directa, pero también digamos que dentro de la programación a veces eso no es suficiente y necesitamos como de funciones un poco más complicadas de poder definir. Entonces para ello utilizamos la forma general para definir funciones en ella. Entonces la sintaxis es la siguiente. Entonces lo que se hace es escribir un conjunto de declaraciones entre las expresiones que aparecen aquí prop y en pro listo.

00:25:08:01 Así es que uno. Digamos dentro de eso define funciones. Bueno, entonces esta es la sintaxis para escribir funciones con esa semántica, con esa sintaxis. Entonces en prop colocamos plot, abrimos paréntesis. Allí colocamos un conjunto de parámetros listo. Los parámetros de la función. Bueno, a veces se utiliza esto, se coloca dos puntos doble, dos puntos y un tipo aquí return tiene dos sentidos.

00:25:48:13 Colocamos un tipo de dato de los que, por ejemplo, hablamos antes, anteriormente descrito, pues no se coloca en una descripción, simplemente de pronto para indicar qué es lo que está haciendo la función, cuáles son sus parámetros. Ocho. Digamos aquí uno coloca un conjunto de opciones, una sucesión de opciones. De pronto ahorita no vamos a hablar mucho de eso, digamos dentro de las que vamos hacer, no van a ser tan, digamos tan, tan, tan generales para trabajar con ese tipo de elemento nuestro, necesario, bueno local, es que como autores locales de la función global, variables globales, más adelante controlamos un poquito de eso y luego digamos un poquito de aclaraciones que lo que hace la función

00:26:13:04 bien. Bueno, veremos ejemplos así básicos de esto. Entonces, fíjese que aquí es lo mismo que hayamos hecho antes. Listo? Pues cogemos una función, le hacemos corresponder una función x al x, le hacemos corresponder x al cuadrado que estará en esa función. Aquí está. Entonces, fíjese en la misma función que estoy definiendo aquí arriba, pero utilizando la notación con prop.

00:26:49:14 Entonces el parámetro en este caso va a ser x y simplemente lo que uno escribe es lo que envía aquí. Yo simplemente voy a escribir, lo que envía es esto sería la forma sencillo de escribir esa misma función que está definida en F. Ahora lo estamos haciendo utilizando esa, esa versión del profe listo, dese cuenta que aquí hace lo mismo, pues a le estamos haciendo corresponder esto a genera se corresponder es listo entonces trabajan de forma tal este ejemplo de función h que cual es a continuación es un ejemplo ya utilizando digamos lo que acabo de decir aquí de la versión un poco más, más general.

00:27:21:10 Entonces L En este caso vamos a decir que es una list, colocamos doble dos puntos lights dick es un tipo de un tipo de AD listo local, entonces local colocamos y n dos puntos igual a cero, pues este se encuentra aquí. Estamos definiendo variables locales de la función y en particular a N le estamos asignando valor cero. Aquí, por ejemplo, utilizamos un for el y lo ponemos este variable y la ponemos a variar entre uno y no se de l simplemente es.

00:27:44:12 Lo que me está diciendo es cuántos elementos tiene la lista? Listo. Bien, entonces si el elemento 19, la lista cero, entonces a N le hace corresponder n más, entonces empieza a contar y líneas aquí como una labor de contactos. Entonces esta función, qué es lo que está haciendo? Está retomando el número N, es decir, el número de veces que las y los elementos de L son cero.

00:28:14:10 Listo. En particular, corramos esto aquí. Por ejemplo, apliquemos esa función H a esta lista. Entonces simplemente me retorna el número de elementos que hay nulos en esa lista. Listo? Pues eso es un ejemplo elemental, digamos un másico digamos de utilizar ese concepto de pero bien, es muy útil y realmente en programaciones es uno de los que más se utiliza cuando se quieren hacer cosas más complicadas.

00:29:03:15 Bueno, entonces otra cosa interesante aquí es la inserción de de regiones de edición de código. Entonces, el código que copiamos aquí arriba para la función H, lo podemos también copiar en regiones de código. En dicha no va a salir excepciones. Así era de la pantalla, directamente de la hoja de Maipú, sino que precisamente vamos a acá, a este, a este botón que parece aquí visitar región de edición de código y le damos ahí, listo, entonces hay uno puede, digamos con el segundo botón, por ejemplo, podemos darle aquí propiedades de los componentes, esto se auto fija si es que así extenso que es, por ejemplo, podemos hacer quitarle esa característica de que se auto fije y

00:29:35:19 pues por ejemplo podemos aquí modificar el tamaño para que nos quede un poco más adecuada la forma de trabajar. Listo. Bien, entonces en particular de se encuentra que aquí lo que hice fue coger una. Una una región de estas y pegué el código de la función. Una de las funciones que definí anteriormente, la F las era H, lo copiamos así Listo de se encuentra que aquí ya se ve mucho más ordenado y también está colocando también aquí la numeración de la fila.

00:30:03:03 Bien, uno puede correr esto con control B, listo? Y ahí corrimos ya esta parte de aquí. Dese cuenta que ayer restauré otra vez la memoria y pues igual vuelve a trabajar. Entonces es, digamos, es muy cómodo trabajar en ese tipo de regiones de código. En este ejemplo yo acá estoy definiendo precisamente lo que ya hemos hecho para calcular los primos menores que un número entero positivo dado.

00:30:25:23 Entonces este precisamente es el código que que es más general que lo que hemos hecho, un caso particular para el. Para el número 200. Listo? Dese cuenta que simplemente copié la parte del way. Podía haber hecho lo mismo con lo del DO. Y entonces aquí lo que estamos calculando es el número de primos menores iguales que 200, en este caso particular de los labels en general.

00:31:07:14 Bueno, entonces esa es como la utilidad y ejemplos elementales. Más adelante hablamos de unos casi más interesantes. Bueno, entonces, como les decía, la profundidad, digamos de Maipú permite crear paquetes, que es una colección de funciones que uno puede encapsular, listo y que tienen como un enfoque muy específico en un tema, digamos, y lo usual es hacer eso, no por decir algo, no sé, por ejemplo, funciones trigonométricas en un paquete de trigonometría o oseo, digamos, y variable compleja, esto es, que uno podría armar un paquete de variable compleja simplemente por hablar de temas.

00:31:57:15 Sí. Entonces la idea es de esto, es utilizar una programación bien particular y para ello necesitamos introducir un concepto listo. Entonces aparece el concepto de módulo. Entonces el módulo es una estructura en programación dentro de mapas que permite asociar procedimientos, listo y o tener variables. Pero las variables se pueden sacar de del procedimiento como tal. Listo. Los módulos me permiten exportar variables, exportar procedimientos, en este caso de lo que estamos hablando, o sea, como coger un conjunto de funciones y que esas funciones estén encapsuladas de alguna forma y yo las pueda utilizar por fuera, digamos, de ese elemento.

00:32:27:01 Entonces los módulos en particular, como el caso particular, funcionan como un paquete. Entonces es lo que quiero presentarles, digamos, desde ese punto de los módulos, tienen una sintaxis parecida a la de las funciones, tienen variables locales. Aquí aparece este concepto. Es por esto precisamente lo que es es que exporta, exporta, que queremos que exporte para lo que vamos a hacer, que exporte funciones, visto tiene unas variables globales, unas opciones.

00:32:46:13 Ahorita hablamos en los ejemplos de un poquito de eso. La descripción no es, es si quiere escribir la descripción, digamos tal cual y una secuencia digamos de del contenido, digamos del del cuerpo, de la función, que en este caso es lo que se llama un mouse en particular. Aquí no se colocan parámetros, es importante colocar e tener eso en cuenta.

00:33:09:18 El mouse como tal no tiene parámetros y finalizamos con en off listo. Bueno, entonces aquí simplemente estoy recordando, digamos lo que les estaba comentando de lo que es un paquete y que se puede digamos diseñar a partir de este y de ese tipo de procedimiento y de una forma que es lo que se entiende como un módulo de programación de medios.

00:33:45:18 Bueno, entonces vamos a ver un ejemplo sencillito de como crear, digamos, un paquete, un paquete utilizando ese mouse. Entonces restauramos la memoria por si acaso a M a M le vamos a asignar un módulo liso de simplemente donde esta opción le pegamos paquete paquete listo package a ella. Estamos diciendo que el vas portar funciones bien, entonces en export colocamos las funciones que el bash porta una le llamamos saludo y otro le llamamos despedí, por ejemplo.

00:34:09:15 Entonces definimos que lo que hace salud salud es una función que no, que no recibe parámetros pero que me va a imprimir, digamos. La frase que aparece allí allowed y despedida es una función que no recibe parámetros pero que a imprimir viva y word. Listo. Bueno, entonces vamos a correr esto así y lo corremos con Controlé with M, para que sirve entonces?

00:34:40:07 UI sirve para cargar paquetes. Entonces ahí colocamos With M y está cargando el paquete, tenemos la y enter y listo. Entonces de 50, que no parece una lista con las funciones que son las que se exportan y ya las puede utilizar ahora. Así entonces por ejemplo y saludo aquí y me escribe entonces Adwords y lo mismo para este día, digamos en su caso particular, va a ir Vanguard listo y eso es lo que está haciendo, es ejemplo básico, es un ejemplo básico de un paquete que tiene dos funciones.

00:35:22:21 Listo? Bueno, vamos a continuar entonces a mostrar algunos ejemplos, que es un poco más interesantes. Entonces, antes que nada, pues vale la pena. Y digamos, indica lo siguiente Aquí se hace manifiesto que el uso de paquetes de funciones y mediante, digamos, la ganancia del software como tal, tiene un potencial gigante, digamos, en el uso, como les decía, es un motor de el uso de su interface gráfica de las librerías que ya están hechas, las librerías propias del software como tal.

00:35:51:12 Y otra cosa es que pues el usuario tiene como abierta la posibilidad de crear sus propias funciones a su nivel de, digamos, de rendimiento o de profundidad en términos de la complejidad. Listo. Entonces eso me pareció muy interesante dentro de mi propio, mi propia experiencia, yo diseñé una librería hace ya un tiempo y esa librería me sirvió para hacer unos proyectos de investigación y hoy en día me sirve bastante todavía para.

00:36:32:19 O sea, es una mata de cosa que me sirve ahorita para hacer mucha investigación y realmente digamos que no se le consiguió de gana mucho, mucho gusto digamos a ese tipo de tratamiento, no solamente desde la investigación, sino también en la docencia. Entonces en la docencia digamos que uno, pues por ejemplo, a veces necesita hacer un parcial, a veces eh, tengo por ahí digamos una posibilidad de hacer parciales aleatorios, entonces, para tener bases de datos de muchos ejercicios, muchos ejemplos es, digamos, el software como tal ayuda muchísimo porque el uso de funciones me permite generar muchos, muchos resultados.

00:36:57:00 Bueno, más adelante lo que vamos a hacer es mirar algunos paquetes que se han creado en particular simplemente para ilustrar el uso de el concepto de función o el concepto, digamos, de crear paquetes. Listo? Bueno, para ello nos vamos a pasar entonces a otras hojas de otras bien específicas para que no se volviera tan densa la presentación como tal.

00:37:27:14 Entonces, un primer paquete, por ejemplo, vamos a revisar este, yo le llame paquete elementos químicos y esto es un poco largo, entre comillas, pero realmente es muy sencillo lo que está escrito allí. Vamos a hablar a groso modo rápidamente. Entonces este paquete como ejemplo elementos y le llamamos elementos químicos. En descripción, por ejemplo, le coloque simplemente elementos químicos, pero uno podría ser un poco, digamos, más expansivo y puede escribir, digamos qué es lo que hace en sí el paquete?

00:38:09:14 Bueno, ahorita vamos a decir entonces la opción, colocamos paquetes listo en sport, es el que va a exportar el vas portar aquí precisamente 218 elementos químicos que existen, listo? Bien, bien, los 118 elementos químicos que existen. Entonces por ejemplo, miremos que las en el hidrógeno y los demás va a ser similar, sí, entonces él lo que va a decir es hidrógeno, va a ser un módulo listo, un módulo, eso es que hayamos hablado antes, el que va a exportar para ese módulo, número atómico y símbolo y símbolo químico, cuando el módulo como tal no se le coloca en el vaso.

00:38:31:24 Mike El sujeto listo sí se puede colocar que Sports exporte funciones. También puede trabajar con funciones. Pero digamos aquí lo que yo quiero es que para el hidrógeno él no exporte simplemente el número atómico, simplemente de forma constante, como lo que significa el número atómico del hidrógeno. De forma análoga, entonces hacemos lo mismo para el símbolo químico. Sí.

00:38:54:15 Entonces el símbolo químico lo que va a arrojar es H, y esto se coloca así para que simplemente me mande simplemente el símbolo de H sin si la representación de lo que de de lo que le estemos asignando se coloca así entre doble comilla. Bueno, entonces. Qué pasa? Hacemos lo mismo para cada uno de esos símbolos químicos? Para cada uno de esos símbolos químicos.

00:39:22:06 Así, lo mismo se podía haber hecho con todas las características, por ejemplo, de cada símbolo químico. Pero para este ejemplo, simplemente lo hice con con eso. Entonces hice colocando 118, digamos un poco espacio, finalizamos el módulo, vamos a correr el módulo bien, entonces, por ejemplo, aquí tenemos elementos químicos, químicos, elementos químicos, pues qué pasa? Nos coloca la lista de los 118 elementos químicos.

00:39:51:02 La lista es organizada en forma, digamos, a l chico. Bueno, qué pasa a continuación? Entonces hacemos, por ejemplo, hidrógeno. Copiamos así. Bien, hidrógeno. Dos puntos. Voy a escribirlo por acá. Más bien desde, digamos, delete. Voy a copiar a cambio hidrógeno, que ya tiene sentido completa. Listo. Entonces el hidrógeno como tal ya es uno de los elementos que está exportando el módulo elementos químicos.

00:40:21:06 Listo. Y a su vez es un módulo. Un módulo tiene estos elementos exportables y esos elementos exportables. Uno los puede ver. De esta manera copiamos dos puntos guión y le damos la tecla Escape. La tecla Escape. Resulta que viene y me aparece cada una de las de las de los elementos que exporta el hidrógeno como tal, por ejemplo, con lo que moles e número atómico y veamos siguiente.

00:40:55:13 Y nos va a decir entonces es mi número atómico listo. Por ejemplo, coloquemos aquí otro símbolo químico, por ejemplo eh, por ejemplo, el litio. Hay histrionismo y en el beisbol tú completa dos puntos y le colocamos acá su símbolo químico. Listo. Eso es, listo, tiene salida. Entonces ya listo el litio, la cosa dicho a litro inicio un su cielito listo.

00:41:21:17 Bueno, su símbolo atómico. Entonces, este es un simple ejemplo de como usar maple desde el punto de vista como estructura de datos más complejas. Más aún, aquí podemos definir funciones sobre estos elementos químicos y ellos como tal ya son objetos dentro de México, objetos dentro de México. Listo, entonces este simplemente es como un abrebocas de muchas cosas que se podrían empezar a hacer allí por decir algo.

00:41:50:16 No sé, yo no sé químico, pero quizás de pronto hacer funciones que me generen reacciones químicas y mirar a ver y comportamientos. Bueno, pero uno puede definir objetos no más abstractos del usuario en diferentes contextos. Bueno, eso con respecto a ese pequeño paquete, otro paquetico es este por ejemplo, le llame paquete code, es esa que es un paquete más que sirve como para hacer algo de criptografía.

00:42:19:21 No sé si pronto alguien conoce por ahí lo que se entiende como el código es esa sí que es bien clásico en en encriptación. Entonces a groso modo voy a ir al grano. Los detalles, digamos, los omito, pero están, digamos en diferentes holografía el concepto del código, el viento, el aire, las siguientes Vamos a definir un paquete que se llama Code Cesar, entonces dos puntos igual le asignamos el módulo, le colocamos la opción de paquete y el va exportar dos funciones.

00:42:47:14 Listo, aquí le colocó local para indicar que va a utilizar dos funciones internas. Esas dos funciones internas solamente las va a utilizar dentro de dentro del paquete, dentro de la, dentro del módulo como tal, listo. Entonces, por ejemplo, esas dos funciones se llaman Key César y Han Coin César. Entonces con inglesa lo que hace es que a los caracteres que en este caso son letras en particular les hace corresponder los números uno.

00:43:11:16 Números entre uno, entre cero y 28 de su y en coin lo que hace es que hace lo contrario a unos números, les hace corresponder letras bien, entonces piensen que aquí tengo las funciones que va a soportar. Le llamé César. Encriptación y César han escrito de esto. Bueno, entonces, bueno, las funciones a groso modo lo que hacen es que cogen un código.

00:43:34:07 En este caso es de tipo string. String es una cadena. Una cadena de caracteres. Listo. Tiene un parámetro aquí que se va a llamar cateta. Eso es un número no negativo. Esto. Este que es? Esto es un número entero. Listo? Uno negativo. Eso se va a entender como un elemento que hace cuentas con los números respectivos de los caracteres.

00:43:55:24 Bueno, digamos, eso está ya dentro de la teoría. Allí de ese código. Es ese que no voy a entrar en detalles. Entonces, el hecho es que acá carácter del código le hace corresponder un número. Un número entero listo. Y ese número vuelve y se reemplaza en una letra y entonces me crea un mensaje codificado y eso es lo que va a hacer esta función.

00:44:27:11 Coge un, digamos, un código y me lo convierte en otro código codificado, listo o encriptado, que así se le llama. Bien, entonces esa es la función de encriptación. Aquí utilizamos esta función de desencriptación que hace lo contrario de escoge un código que está encriptado. Sí, con una clave se es un número, no un número entero fijo. Y con esa misma, con esa clave, entonces uno lo que hace es que o tiene el código inicial listo.

00:44:59:04 Entonces los detalles digamos de esta parte de acá los omito en términos teóricos, pero la programación acá dice que solo utiliza listas meramente listas. Lo que se está utilizando acá ha sido un detalle importante. Fíjese que aparece este, esta línea de luces hindúes, entonces ahí implícitamente lo que estoy es utilizando un paquete interno de ese paquete, se llama String Tools, y ese paquete es un paquete que sirve para trabajar, es como su nombre lo hice, son herramientas para trabajar con cadenas.

00:45:19:11 Esto es como, digamos, es la única cosa demás que hay en esa parte. Entonces podemos utilizar paquetes de MacBook o hacer paquetes creados por nosotros. Bueno, vamos a correr ese paquetico, entonces ya se que aquí va a ser el UI. Entonces me me saca las dos funciones que exporta y por ejemplo como ejemplo aquí se usan en y techo.

00:45:46:05 Qué va a ser? Entre comillas, colocamos el código que queremos encriptar con una clave 14 y me devuelve mensaje codificado. Es este Ahora acabo de lo contrario de quitemos desencriptar por ejemplo. Entonces el código que voy y gritamos con esa misma clase y nos devuelve entonces el mensaje original. Listo? Bueno, y aquí otro ejemplo básico, digamos, haciendo una situación análoga.

00:46:10:05 Listo. Las posibilidades son de amplio alcance y realmente que uno observa que en el camino, uso y solución, encontrando listo. Entonces este es un ejemplo. Yo también de de ejemplo de paquete, otro ejemplo de paquete pequeñito y es un ejemplo digamos de lo que se llama la estructura de los cuadernillos. Esto se utiliza por allá en temas de física y en temas de álgebra.

00:46:34:11 Entonces a groso modo definimos un paquete que se llama Counter neones, que lo definimos como módulo y colocamos la opción de paquete extremo exportar. Entonces los cuatro niveles que son son como una estructura muy parecida a la de los números complejos, listo, pero son, digamos, otra estructura distinta aún cuando se relacionan directamente desde allá. Uno puede hacer una suma, un producto.

00:46:57:16 Aparece la noción de que un número conjugado de normas de un cuaderno y la noción del inverso de un cuaternidad. Esto, a groso modo, es una estructura análogo y muy parecida a la de los reales, por decirlo así. Entonces, qué pasa? Aquí podemos definir las operaciones sobre cuadernos y los cuadernos. Les pasa algo? Hay elementos particulares que no con mutan en el producto.

00:47:25:13 Entonces es una estructura no sencilla. Por ejemplo, los complejos. Si pasa que había computación aquí, no, entonces bueno, tiene como exportación la suma, el producto, el conjugado, la norma y el inverso. Se les llamó un cu cu cu con q, nom cu y listo. Estas dos funciones de aquí son funciones que se utilizan internamente y por eso les coloque que se llama que son de tipo local.

00:47:52:08 Bueno entonces miremos a ver, vamos a correr esto. Bueno, a groso modo, pues no voy a entrar en detalles. Bien, aquí se dan dos funciones, una que escribe una vez que lee water niones. Aquí se han definido ese producto, la suma, el conjugado, la norma y su inversa. Listo, vamos a correrlo. Con Controlé cargamos el paquete. Miren que aparecen las las cinco funciones aquí, por ejemplo.

00:48:12:02 Entonces hacemos un producto de Ivory y ya es un elemento de los patrones que y por si satisface que es es uno. Lo mismo pasa con el J quota por J al menos uno K por caminos, uno. Ahora miren, aquí a Z le estamos dando el valor A+. Bhima se J más de K como una forma genérica de un material.

00:48:29:01 Calculamos su conjugado, así ese poco jugador de C de este Z y el inverso de ese z sería una forma como esta diez. En cuanto a que aquí ya no le parece if a no mentir, aquí se parece a parte del ni jota k si c el inverso listo. Es muy parecido a lo que pasa con los complejos.

00:48:52:16 Es aquí la norma de si no aparece y esto da simplemente la raíz de la suma. Estos componentes al cuadrado. Listo. Bien, la suma aquí es otro ejemplo. Yo fui para finalizar que a mi hacer la suma y por j menos j for y listo. Entonces se pueden definir estructuras por medio de de paquetes list. Son estructuras no triviales.

00:49:18:15 Bien, para finalizar, entonces voy a mostrarle simplemente el uso, digamos, de la creación de una función. Si no tan sencilla en general, de escribir, pero con la cual se pueden hacer unas cosas bien generales. Simplemente la función lo que va a hacer es coge una ecuación de una cónica y voy a graficar y me va a escribir algunos detallitos ahí particular.

00:49:46:14 Entonces ya hay paquete, un paquete de adentro que es este paquete de Geometry que hace cosas muy particulares con cónicas, pero digamos que esta función vamos a correrla de esto. Entonces simplemente voy a mostrarles a groso modo así el código en general es un código que utiliza estos dos paquetes Geometry y Plots. Listo, entonces la función que me hace simplemente, por ejemplo, hace eso que está allí pintado.

00:50:10:07 Entonces Gate Koni, entonces le copiamos la lista que en la ecuación de una cónica y el otro parámetro va a hacer una lista con las variables que aparecen en esa cónica. Entonces por ejemplo, me determina si eso es una hipérbola y me escribe el gráfico, por ejemplo, pues obviamente la curva da las comunica las asíntotas y en este caso de la hipérbola, el centro, los focos, los vértices y esto.

00:50:53:21 Y también escribe la leyenda su signo puede ser técnico y un poco más estético, con el potencial que tiene para hacer este tipo de cosas. Y aquí simplemente otros ejemplos más para ese tipo de. Fíjese que este anotadas también estaba visto esto con respecto a ejemplo y digamos, esta parte era la que quería presentarles. Dejemos para finalizar entonces simplemente comentarles las conclusiones, digamos de lo poco que de mi experiencia digamos he podido como o tener ese lema que está allí, que realmente me parece importante, que se pueden dar soluciones a problemas por medio, digamos, del uso de paquetes.

00:51:30:08 Eso es muy importante. Me proporciona eso, eh? La aplicación digamos de mapas como tal desde solamente la programación, porque pues eso es una cosa que les presento hoy, pero en mi poder tiene muchísimo y esto que les he presentado es como un vistazo, pues se puede profundizar en especialidades variadas. Sí, y la programación en general no es difícil, hay mucha documentación y ayuda mucho, no es necesario, pero si no quiere hacer cosas más complejas y que le sirvan a la persona, de pronto que pueda trabajar.

00:51:59:17 Eso yo diría que es muy útil. Es demasiado útil, sí. Y pues digamos que lo que les decía también de como es que la autonomía y la facilidad, crear funciones o paquetes definidas por el usuario a su modo, a su acomodo, pues eso fortalece mucho, digamos, la labor de la investigación o labores, como es, como decíamos de de esperar, digamos, para trabajos que uno no amerite, digamos ese tipo de estructuras.

00:52:27:10 Yo creo que hasta ahí sería, digamos, digamos en esta parte de la presentación, en conclusiones. Entonces, pues ahorita lo que esperaría de pronto es preguntas de ustedes y no sé, inquietudes, observaciones, a ver qué les puedo colaborar y les puedo colaborar con unas cosas, digamos que se han comentado. Bueno, perfecto. William Bueno, ahí me escuchas bien, me confirmas por favor si sería bueno?

00:53:02:12 Bueno, pues por acá tenemos algunas, algunas preguntas, eh? Te agradecemos pues podamos ir resolviendo. Entonces la primera es cuáles son las ventajas y desventajas que tiene llevar al aula la programación, el mail? A ver, ventajas, digamos, dentro de las ventajas que se pueden mostrar cosas generales. Sí, y se pueden mostrar cosas y a ticas. De pronto aquí no fui tan guía tico en lo que mostré, porque fueron trabajos más bien muy personales, donde no utilicé como la didáctica hacia el aula.

00:53:27:00 Pero se pueden mostrar muchas de esas propiedades, por decir gráficos que se mueven, que son dinámicos, expresiones dinámicas, todo eso se puede hacer para generar tu cumentación y para generar mucho ejemplo, muchas bases de datos. Eso ayuda mucho. Un docente e yo diría que la debilidad puede ser que toque estudiar un tres y pico y no es tan necesario lo que les estoy comentando.

00:53:57:15 Y no, no es tan tan tan fuerte la parte digamos de, de conocer, de, de, de, de, de código, de programación. Pero digamos que esa puede ser como una de las falencias, pero de otro modo me parece que tiene más ventajas que desventajas. Sí, me parece. Bueno, por acá también te llega una pregunta y es que entras tiene más poder con respecto a otras herramientas en matemáticas como MATLAB?

00:54:39:18 Wolfram Bueno, pues de selección sí, lo que les comentaba desde mi experiencia, el motor que tiene me parece que es un motor matemático muy rápido. Cada vez lo mejor es más, la física es muy buena. A veces pueden haber falencias con respecto a la memoria, pero cada vez van mejorando. Eso. Sinceramente eh, digamos que yo lo escogí por ese tipo de cosas y además lo que les comentaba al comienzo, o sea, la utilización de paquetes ya hechos allá, que son muy buenas, por ejemplo, en lo personal yo utilicé algunas herramientas de bases de Kroner que en otros softwares no eran tan eficientes.

00:55:11:14 Sí, y estaban hechas, digamos, junto con los ingredientes que necesitaba, muy particular. Entonces eso me ayudó. Entonces yo creo que dependiendo de cada especialidad y qué es lo que esté desarrollado, puede ser demasiado bueno de pronto para una especialidad muy particular. No sabría decirlo si, bueno, por acá llegan, te llegan otro par de preguntas. Entonces que recomendaciones puedes dar desde tu experiencia para aprender a programar usando manipular?

00:55:42:09 No es que mira en Maple uno encuentra perfectamente, no se documentos en la página de Microsoft donde tiene unas páginas muy particulares y allí simplemente indican como es que se programa y aparte por ejemplo no sé, la documentación propia. El software como tal te dice muchísimo no ver. Por ejemplo, yo voy a hacer este ejemplo y acá voy a colocar interrogatorio.

00:56:36:08 Acá es interrogante y o a colocar prosaico. Bien, aquí me genera la documentación de lo que es un procedimiento, ahí me das la descripción, sí, y me dice muchas cosas y aparte me da ejemplos. Si tenemos en cuenta que podemos copiar este código, lo podemos copiar, lo podemos copiar acá. Miren, pues no sé si estaban viendo todo esto cuando ya el hecho es que el cuando le damos esta parte de acá me da, me abre, me abre a la documentación de Maipú, copiamos esa documentación y aquí generamos funciones que ya están hechas y nos explica que lo que hacen es, por ejemplo, esa es una utilidad muy, muy buena la documentación que tiene ahí propios.

00:57:03:15 Álvarez me auto contenía y a parte, pues como les decía desde mi pulso también los documentos también ya son bien bien, digamos, arropados en, digamos, en cómo explican cada una de las de las cosas para programar yo iría, que no es tan complicado. Hay que dedican en tres y pico de tiempo para comenzar así. Si nunca se ha visto nada es si ya se tienen medida, digamos, alguna experiencia, va a ser mucho más fácil.

00:57:30:24 Pero en todo caso, lo que les digo que sácale jugo a eso, que a eso que se puede hacer por acá. Te llega un comentario también adicional a lo que estabas mencionando, una ventaja y es que se transparenta la caja negra que otros paquetes no lo hacen en matemática, no sólo hasta el producto. Y es importante saber como se, como se hace ese producto, cómo se llega a esos resultados, se especies es muy importante.

00:58:03:05 Por acá también te dicen lo siguiente los paquetes son compatibles entre versiones o entre una y otra versión. Hay que hacer cambios en la programación. Hay veces que, o sea desde 2016 vengo trabajando, eh, digamos que algunas funciones de escritura, por lo menos a veces, o de evaluación de funciones, son las que a veces han cambiado, pero en general digamos que no son mucho los cambios y digamos, si hay que hacer alguna modificación es mínima realmente.

00:58:31:13 Por lo menos mira, yo el de 2017, diez, 18, sigo trabajando con un paquete y sí, una librería en esos tiempos y el cambio no ha sido realmente se puede trabajar con los paquetes sin problema sino yo creo que el mínimo, pero creo que sí hay posibilidad de que ocurran cosas mínimas con respecto a la parte de evaluación y escritura, pero a veces sí, a veces es posible que pronto algunas funciones las redefinen.

00:59:01:14 Sí. Este concepto de módulo, por ejemplo, es un concepto que no, este nuevo no está nuevo realmente. Eso es una más. Viene como hace unos seis años por ahí que lo definieron y la mucho potenciar la parte de programación y generación de. De estructuras para para para modelar problemas en macro si hay de pronto levemente por responder esa pregunta, porque pues lo que les digo no me ha ocurrido casi no me ha ocurrido casi, pero no estoy seguro que que no pueda ocurrir.

00:59:30:15 Bueno, por acá te hacen otra pregunta y a propósito, pues de los procedimientos y como lo has estado trabajando durante esta presentación te dicen lo siguiente se puede usar el software sin necesidad de programar hasta dónde se puede llegar? Eh? Hay funciones y que queden alojadas allí? Claro que sí. O sea, uno tiene una hoja de cálculo y sin necesidad de programar, pues puede utilizar por ejemplo la paleta esta y definir una función.

01:00:13:15 Acá simplemente veo puntos igual no sé, espérate. Y bueno esto es por acá en A X, entonces le decimos corresponder, por ejemplo. Y fíjate aquí la cuestión, decimos corresponde por ejemplo y esto y por decir algo, aquí podemos simplemente decidir entonces sacarle la deriva. No sé si se utiliza con la función dif de la función P con respecto a X, sí y podemos empezar en una hoja de cálculo simplemente a agrupar cálculos directo, sin necesidad de utilizar programación.

01:00:42:14 Sí, claro, podemos cargar paquetes que están en maple propios paquetes y utilizar las funciones de los paquetes. Y no estamos utilizando nada de programación. Claro que sí. O sea, yo lo que quise presentar de entrada aquí es, eh, el uso de la programación como potencial, pero el como les digo, eso es solamente una línea y Maple se abre muchísimo con nomás todo lo que tiene, digamos for instalado como tal, instalado como tal.

01:01:08:01 Si ya uno puede empezar a hacer gráficos, puede empezar a hacer operaciones con funciones, por ejemplo, trabajar con ciertas estructuras, estar geográficas, o sea, el uso de maybe, no sé, no se queda corto si solamente a funciones le da un potencial, un plus de más, pero realmente tiene un potencial bastante amplio. Sí, lo que se puede hacer así nomás, un estupendo.

01:01:41:14 Y bueno, por acá te preguntan lo siguiente en qué lugar quedan alojados los paquetes creados para que puedan ser usados después de creados? Estos paquetes se pueden usar en cualquier documento. A es eso es así es más que digamos no, no lo hice acá que digamos uno. Por ejemplo, un código como este código de CO es eso directamente como lo estoy presentando aquí queda simplemente en esta hoja que en estado, pero en la librería, o sea, uno puede sumar ese, ese código a la librería.

01:02:09:02 Esa parte tiene como un detalle más, así que lo colocado acá sí es posible que digamos a partir de este código con otras instrucciones que aquí digamos, no, ahorita no les puedo digamos indicar porque es un poquito, es, digamos, no es largo, pero como que nos salimos un poco del tema y se puede adicionar esto a la librería propia de Maple y usar con Maple sin necesidad de que tengamos que utilizar ni siquiera el agua.

01:02:33:05 O sea, como tal el paquete se puede colocar dentro de centro de maple, dentro de la librería, como tal se puede adicionar, es uno? Se puede crear eso? Claro que sí. Si aquí lo que quería era como industriales la creación de paquetes para uso, pero digamos que no les estoy mostrando cómo es que se hace el proceso para para incluirlos dentro de macros como tal.

01:03:07:19 Si, perfecto, pero por acá te hacen otra pregunta y Python como lenguajes de programación permiten en librerías por mail por cuenta con funcionalidades asociadas a distintos campos como la parte de tiempo de gráficos, la partes estadística de cálculo simbólico y LaTeX en que lo supera, como puede digamos competir con con estas herramientas y que posibilidades tiene para sus usuarios?

01:03:29:13 Pues a ver, yo digamos en Python por ejemplo hace poco se trabajar eh? Hace un tiempo y evidentemente la parte de programación es muy buena. También hay mucho que ya está hecho, digamos en en términos digamos de lo que hacen los usuarios, pero lo que les decía me parece que el potencial de mapeo con respecto a ellos puede ser el motor que tiene.

01:04:19:22 Sí, y la interfaz gráfica no estoy seguro. Digamos, por ejemplo, de trabajar en Python. Yo hablo de Phyton porque los otros lenguajes ahorita como que los dejan un poco, pero digamos que a veces la interface gráfica de aquí ayuda mucho aquí. Ayuda mucho en términos digamos, de la visibilidad, de traducir digamos a lenguajes como pues capaz que en lenguaje tex y pero no sabría decir realmente en Python digamos la situación, digamos de con respecto a la interfaces gráficas y sea tan amable para, para, para, para problemas así, donde necesitamos bases de datos que queden bien estructuradas, por lo menos yo ahorita que estaba trabajando en temas de álgebra no conmutativa, sobre todo con polinomios no

01:04:49:23 conmutativo es el uso de la interface gráfica, ayuda muchísimo si hay mucho software libre, pero a veces la parte de la interfaz gráfica no es amable y aquí ayuda muchísimo, sobre todo porque hay resultados que son muy extensos y aquí ayuda bastante eso. Pero sobre todo lo que yo digo es que el moto

Introducción a la programación con Maple y aplicaciones


Maple es un potente software matemático que cuenta con diversas posibilidades, entre ellas paquetes especializados, desarrollo de funciones y aplicaciones en diversas áreas. En este espacio se abordarán los elementos básicos de la programación en el software, igualmente se incluirán algunos ejemplos del uso de programa y la creación de paquetes donde se observe la fortaleza del software y la posibilidad de generar librerías que aprovechen algunas de las utilidades que Maple proporciona.

Etiquetas relacionadas

  • Educación
  • Enseñanza matemática
  • Investigadores
  • Matemáticas
  • Software matemático

¡Comparte este video con tus colegas!

Compartir

Ver más

Cotizar
Próximos
Eventos

X

Mis cotizaciones:

Comentarios a tu solicitud:

Cotizar