El estudio de materiales mediante simulación requiere una aproximación multiescalar en tiempo y en tamaño del sistema. En este sentido Materials Studio es un entorno de modelización y simulación que ayuda a los investigadores en Ciencias de Materiales y Química al desarrollo y mejora de nuevos materiales mediante la predicción de las relaciones entre la estructura molecular y las propiedades y comportamientos macroscópicos.
El próximo jueves 27 de marzo, a las 16h tendrá lugar el webinar "Introducción a Materials Studio en la investigación Química y de Ciencias de los Materiales", en el que se hará un recorrido básico de las capacidades que tiene Materials Studio para la modelización de materiales. Se pondrá especial énfasis en como manejar la interfaz gráfica de Materials Stuido y se dará una breve explicación de cuales son los distintos tipos de cálculos que se pueden realizar.
¡Regístrese ahora. Plazas limitadas!
Si echa un vistazo a Minitab 17 habrá notado un montón de nuevas mejoras. Una de las más importantes es la adición del Diseño de Experimentos (DOE) en el Asistente. El DOE en el Asistente tiene tantos aspectos interesante que es difícil hablar sobre todos ellos de golpe, pero en esta entrada de blog podrá ver 5 temas destacados para cuando planee crear un experimento prospectivo.
MapleSim 6.4 ya está disponible
Además de aprovecharse de todas las mejoras del motor matemático de Maple 18, MapleSim 6.4 incluye muchas potentes herramientas para crear componentes personalizados, mejoras de rendimiento y mejoras en los generadores de modelos para Simulink® y FMI.
Maplesim Control Design Toolbox
Con MapleSim 6.4, también ha salido una nueva versión de MapleSim Control Design Toolbox. Se trata de una importante actualización que amplía significativamente las capacidades de esta toolbox. Las principales ventajas incluyen algoritmos de control adicionales que operan en un rango más amplio de sistemas y la capacidad de construir sistemas en lazo cerrado de forma que los usuarios pueden crar controladores con realimentación.
Es de destacar su capacidad para incluir parámetros simbólico en el controlador, lo que posibilita observar fácilmente los efectos de la sintonización de parámetros en el comportamiento del sistema. Esta capacidad es de especial interés para el mundo de la enseñanza.
Cuando se modela computacionalmente geometrías costosas, se puede ahorrar tiempo utilizando la simetría cíclica para reducir el uso de memoria. Esto puede ser algo más complejo para las geometrías con simetría rotacional que con simetría axial. Sin embargo, con el Structural Mechanics Module se puede resolver fácilmente una sección de un modelo de un impulsor mientras se obtienen resultados precisos.
Cuando analizamos turbinas y compresores, es importante conocer el comportamiento de la vibración dentro del sistema. En las turbomáquinas, las vibraciones de las palas inducidas por la carga del flujo del fluido pueden finalmente causar fallos. Por lo tanto, es importante realizar un análisis de frecuencias propias en este tipo de geometrías. Tipicamente, las estructuras de esta naturaleza tienen simetría rotacional y pueden ser dividido en secciones repetidas. Además, la simetría cíclica puede utilizarse para reducir los requisitos computacionales.
¿Está escogiendo entre Maple™ y Mathematica®? A primera vista parece que sean productos muy similares. Sin embargo, en las páginas que siguen verá numerosas comparaciones técnicas que muestran que Maple es mucho más fácil de usar, tiene una tecnología simbólica superior y proporciona un rendimiento mejor.
Estas diferencias en los productos es muy importante, pero quizás sean igual de importantes las diferencias entre las empresas. En Maplesoft™, creemos que proporcionando grandes herramientas la gente puede hacer grandes cosas. Para nosotros nuestro trabajo es proporcionarle las mejores herramientas posibles, manteniendo relaciones con la comunidad investigadora, contratando gente con talento, adoptando la mejor tecnología disponible, incluso cuando no la hemos desarrollado nosotros, y escuchando a nuestros clientes.
A continuación se presentan algunas diferencias a tener en cuenta:
Finalmente, a menudo nos dicen que somos una empresa con la que es mejor trabajar. No creemos que tengamos una solución para cada problema dentro o fuera de las paredes de nuestra compañía, tampoco esperamos que Vd. utilice nuestros productos exclusivamente, y no creemos que nuestra empresa vaya a transformar radicalmente cada rama de la ciencia. Los individuos, las empresas, las instituciones educacionales y las editoriales escogen nuestra tecnología porque somos más flexibles, más sensibles y porque estamos más enfocados en crear grandes herramientas para nuestros clientes.
¡Ahora vamos a los temas técnicos!
Una buena interfaz es prácticamente invisible. Si su software se ve y funciona de la forma esperada, Vd. y sus estudiantes simplemente pueden hacer su trabajo, sin preocuparse sobre la mecánica de la herramienta que están utilizando. Maplesoft siempre ha sido pionera en la usabilidad del software matemático, y se esfuerza continuamente en asegurar que los usuarios nuevos y ocasionales sean inmediatamente productivos, mientras que los usuarios experimentados tienen las herramientas y flexibilidad que necesitan para trabajar eficientemente. Nuestro objetivo es permitir a nuestros clientes trabajar en un entorno que sientan tan natural como sea posible para enseñar, aprender y hacer matemáticas. Esto incluye utilizar notación matemática estándar en todas partes, respetando las convenciones de software estándar y proporcionando un entorno donde los usuarios puedan crear el mismo tipo de documentos que ven en sus libros de texto, en sus pizarras y en sus libretas.
Introducir expresiones matemáticas que se vean como expresiones matemáticas es muy fácil en Maple. El editor de ecuaciones automáticamente formatea las fracciones y exponentes como su tipo. Vd. puede entrar las expresiones del mismo modo que las escribiría, y aparecen en Maple como estarían escritas en su libro de texto. Esto permite que las matemáticas sean fáciles de introducir y fáciles de leer. Mathematica, sin embargo, utiliza alguna notación no estándar que requiere que el usuario traduzca de un lado a otro entre la matemática estándar y la sintaxis de Mathematica.
Aquí hay algunos ejemplos de expresiones entradas utilizando la configuración por defecto en ambos sistemas.

Nótese que:

Las preferencias varían, por lo que la entrada de sintaxis tradicional también es una opción para los usuarios de Maple. En ese caso, Maple soporta la familiar sintaxis de estilo calculadora: 2*x^2+cos(x/2). Los usuarios pueden escoger qué estilo desean utilizar, e incluso cambiar entre ellos en el mismo documento.
En Maple, una vez que ha introducido su problema, Vd. pulsa la tecla <Enter> para decirle a Maple que realice el cálculo y le dé el resultado. Cuando se escribe “2+2 <Enter>” da un 4.
En Mathematica, escribiendo “2+2 <Enter>” mueve el cursor a la siguiente línea, sin calcular nada. Para pedir a Mathematica que realice el cálculo, hay que pulsar <Shift>+<Enter>. Esta interacción no estándar requiere que los usuarios adapten su comportamiento habitual.
Las matemáticas de Maple se ven como deberían aparecer en un libro de texto, haciendo que sean muy fáciles de leer, comprender y verificar. En Mathematica, incluso cuando se aplica el formato tradicional, el resultado sigue sin seguir los estándares de los libros de texto. Por ejemplo, los nombres de variable no están en cursiva. Aunque las expresiones sean comprensibles esto puede hacer que sean más difíciles de entender de un vistazo.
Aquí se muestran algunos ejemplos tanto de Maple como de Mathematica. En alguno de los ejemplos de Maple, se utiliza la funcionalidad de resultados en línea de Maple para poner tanto la entrada como el resultado en la misma línea y obtener una presentación más compacta. Mathematica no dispone de esta capacidad.

En Maple es fácil combinar texto y matemáticas en la misma frase. Incluso se pueden tener resultados calculados que aparezcan en medio de una frase, o que la frase cambie automáticamente si los resultados son actualizados.
![]()
Cambiando la definición de la función y recalculando el documento, se encuentra la nueva discontinuidad y la frase se actualiza apropiadamente:
![]()
En Mathematica, no es posible combinar texto y resultados matemáticos de la misma manera. Puede combinar texto y matemática estática en la misma celda, pero no puede visualizar resultados calculados. Si sus resultados cambian debe editar su frase a mano.
“Ups, ojalá no hubiera hecho esto”. Esto ocurre. Comete un error, y entonces desea poder deshacer una acción previa, o a veces incluso una secuencia de acciones previas.
En Maple Vd. puede deshacer y rehacer textos, gráficos y otros cambios visuales de su documento, incluyendo los efectos visuales de un cálculo matemático u operación gráfica. Vd. puede deshacer muchos pasos, no solo el último.
En Mathematica Vd. únicamente puede deshacer su último comando de edición básico (p. ej. Cortar, copiar, escribir texto). No es posible rehacer una acción que se ha deshecho, y no es posible deshacer más que la última acción. Según la documentación de Mathematica de Undo, “La única manera de deshacer varias acciones de una vez es ir a una versión anterior de su archivo.”
Desde la inclusión de los menús contextuales para las operaciones matemáticas en 1998 hasta las actuales colecciones de tutores, plantillas de tareas, Math Apps, Smart Popups, y otros, la aproximación Clickable Math de Maple ha revolucionado cómo se enseñan, aprenden y hacen las matemáticas.
El siguiente ejemplo utiliza Drag-to-Solve (arrastra para resolver) en Maple para resolver esta ecuación lineal de la manera que se enseña a los estudiantes que lo hagan, moviendo términos alrededor y realizando operaciones en ambos lados de la ecuación. Para mover un término de un lado a otro del signo de igualdad, el estudiante simplemente arrastra el término a través, y Maple comprende lo que el estudiante quiere hacer con la acción.

El alumno también tiene la oportunidad de ir directamente a la solución utilizando el menú contextual en Maple:
![]()
En Mathematica, no es posible resolver un problema como éste paso a paso, arrastrando los términos de una expresión alrededor para realizar una operación. Para resolver esta ecuación el estudiante la entra, acordándose de utilizar la sintaxis del símbolo de doble igualdad, y entonces escoge una opción del menú que va directamente a la solución:

Ejemplo: Operaciones de menú sobre subexpresiones
En Maple, las operaciones matemáticas se pueden realizar sobre la expresión completa o sobre una subexpresión. Esto permite reescribir parte de una expresión de una forma diferente, como un paso en la solución. Por ejemplo, en Maple puede utilizar menús para aplicar una identidad trigonométrica a sec(x) en:

Incluso puede pedir graficar una subexpresión. Por ejemplo, si quiere recordar a sus alumnos que el denominador de una expresión a veces puede tomar el valor 0, puede utilizar la funcionalidad Smart Popup de previsualización para mostrar una previsualización rápida de un gráfico de solo el denominador.

En Mathematica no es posible aplicar operaciones de menú a subexpresiones.
A diferencia de Mathematica, el motor matemático de Maple siempre ha sido desarrollado tanto por talentosos empleados de la empresa como por expertos en laboratorios de investigación de todo el mundo. Esta aproximación colaborativa permite a Maplesoft ofrecer algoritmos matemáticos punteros en una amplia variedad de campos.
Aquí se muestran unos ejemplos de algunas áreas donde sobresale Maple:
Los estudiantes que utilizan un sistema como Maple o Mathematica a menudo tienen diferentes necesidades que los no estudiantes. No necesitan exclusivamente una respuesta final. Todavía están aprendiendo los conceptos matemáticos detrás de los problemas que están intentando resolver y necesitan un entorno que les permita explorar los conceptos y desmenuzar los problemas en pasos más pequeños en lugar de saltar directamente a la solución.
Además de las funcionalidades como Drag-to-Solve, menús contextuales, plantillas de tareas y Smart Popups, que permiten a los alumnos resolver problemas paso a paso sin comandos, Maple también dispone de un conjunto de paquetes de estudiante. Los paquetes de estudiante ofrecen entornos enfocados al aprendizaje en los cuales los estudiantes pueden explorar y reforzar los conceptos fundamentales de la misma manera que su profesor hace en clase.
Por ejemplo, Maple incluye tutores paso a paso que permiten a los estudiantes practicar la integración, diferenciación, encontrar límites y otros. El Tutor de Integración, mostrado más abajo, permite que un alumno calcule una integral seleccionando qué regla aplicar en cada paso. Maple también ofrecerá indicaciones o mostrará el siguiente paso, si se le requiere. El tutor no solo mostrará cómo obtener el resultado, sino que está completamente diseñado para practicar y aprender.
Mathematica no tiene nada como estos tutores paso a paso. Lo más cercano en Mathematica es “Show Steps” de Wolfram|Alpha®, que no está realmente disponible en Mathematica, sino que tiene que utilizarse con un navegador web. Además, la funcionalidad “Show Steps” no es interactiva. Muestra la respuesta final más los pasos necesarios para obtenerla, pero no permite que el alumno intente resolver el problema por su cuenta, paso a paso.
Otra ventaja del concepto de paquete de estudiante de Maple es que los cálculos se realizan utilizando asunciones que son apropiadas para el nivel del alumno. Esto evita situaciones donde un cálculo devuelve resultados que el estudiante es incapaz de asimilar debido a que los conocimientos necesarios para su comprensión se tratarán más adelante del currículum. Por ejemplo, los estudiantes en un curso de primer año de álgebra lineal normalmente no se ocupan de los números complejos. Al calcular la norma euclídea de un vector utilizando el paquete de Estudiante de Álgebra Lineal de Maple, éste devolverá el resultado esperado:

Sin embargo, teniendo en cuenta que las cantidades simbólicas como a, b y c pueden representar números complejos, Maple da un resultado más general fuera del contexto del paquete de estudiante:

Mathematica no tiene la capacidad de ajustar su contexto computacional al conocimiento de los estudiantes en un nivel particular, y por tanto siempre da la respuesta más general. Como resultado, los profesores necesitan emplear más tiempo explicando los resultados inesperados a sus alumnos.
Maple permite escribir tus propios scripts y programas con un lenguaje de programación procedural que será muy familiar a los usuarios de C, Java, Forran, Visual Basic, y otros lenguajes procedurales. También incluye muchos elementos de la programación funcional y orientada a objetos, permitiendo escoger qué aproximación es más adecuada a su problema y estilo de programación.
Mathematica también ofrece construcciones para soportar los diferentes estilos de programación, pero normalmente anima a una aproximación de programación funcional. Incluso sus elementos de programación procedural están implementados en un estilo de programación funcional, de forma que construcciones como las sentencia if y los bucles están escritos como llamadas a función. Los programas funcionales a menudo son opacos; la mayoría de la gente, incluso programadores experimentados, encuentra que los programas con estilo funcional son significativamente más difíciles de escribir, leer y depurar.
Como un ejemplo, la página web http://rosettacode.org/wiki/Hailstone_sequence ofrece un sencillo código para calcular la secuencia de Hailstone utilizando más de 90 lenguajes diferentes incluyendo Maple y Mathematica. La secuencia de números de Hailstone puede ser generada desde un entero positivo inicial n mediante:
En el momento de escribir este documento, los colaboradores de Rosetta Code proporcionaron las siguientes implementaciones de Mathematica y Maple, ilustrando los diferentes estilos favorables para cada lenguaje.

Los programadores cometen errores, los más comunes de ellos son los errores de sintaxis. El trabajo del compilador o el intérprete es capturar esos errores y facilitar lo más posible al programador que los pueda corregir.
Considere este sencillo procedimiento de Maple. El programador ha usado equivocadamente n en la sentencia if en lugar del parámetro N. La variable n no tiene un valor, así que es imposible que Maple evalúe la sentencia if.

La llamada MyProc(4) en Maple, resulta en un error adecuado, indicando que Myproc “no puede determinar si esta expresión es verdadera o falsa: 3<n”. Esto ayuda a identificar rápidamente el error.
En Mathematica, el procedimiento sería:

Al llamar a este procedimiento en Mathematica no se produce ninguna advertencia. El código simplemente no actúa como se esperaba, sin explicación.
Ahora considere qué pasará en el mismo procedimiento cuando el usuario omita accidentalmente el punto y coma después de la sentencia if:

Este problema está compuesto por el hecho de que, a diferencia de Maple, normalmente se ha de omitir el punto y coma cuando se explora interactivamente en una sesión en vivo de Mathematica. Si se ponen puntos y coma al final de las sentencias en una sesión interactiva, las salidas son suprimidas. Cuando se hace un prototipo de los pasos de la solución en una sesión interactiva, hay que añadir puntos y coma después cuando se convierten estos pasos en un procedimiento, y el programador no recibirá ningún aviso si se olvida uno.
El modelo numérico de Maple deriva del estándar de coma flotante IEEE/754. Este estándar, entonces, se extiende consistentemente por Maple para cubrir los cálculos que involucren flotantes complejos y de alta precisión arbitraria. Este modelo numérico es el estándar aceptado por el hardware de los ordenadores y en la industria del software, y es profusamente comprendido y documentado. Los resultados de maple se pueden comparar de una forma consistente con los resultados de otros sistemas que utilizan el mismo estándar internacional. Por ejemplo, una algoritmo codificado en MATLAB® se puede importar en Maple y dará los mismos resultados. Además, las razones en las elecciones que toma Maple siempre se pueden determinar consultando la documentación estándar.
Mathematica utiliza un modelo numérico propietario derivado de algo llamado “significancia aritmética”, no del estándar internacional, y los detalles no están publicados. Los algoritmos escritos en otro sistema, cuando se implementan en Mathematica, pueden dar resultados diferentes y estas diferencias no son predecibles. Mientras que cada sistema tiene sus ventajas e inconvenientes debido a su naturaleza inherente de cálculos en coma flotante, el modelo de Maple es bien comprendido y está sujeto a la investigación matemática del comportamiento de los algoritmos en los casos problemáticos identificables. En contraste, el modelo cerrado, propietario de Mathematica significa que los resultados incorrectos no siempre son predecibles o detectables.
Considere este ejemplo, publicado por primera vez por Richard Fateman de la Universidad de California, Berkeley. Una secuencia definida recursivamente se define como:
si=2si-1-3si-12 con s0=0.3
Matemáticamente, esta secuencia converge a 1/3 muy rápidamente. En Maple, y otros sistema que siguen el estándar IEEE, lo que ocurre es lo siguiente:

El mismo algoritmo en Mathematica da diferentes resultados:

El último término de la salida dice que s40=0.×1062, cosa que no es una buena aproximación de 1/3.
No hay nada en el cálculo que avise al usuario que el resultado puede no ser fiable en cada paso. Por ejemplo, no existe acumulación de errores de redondeo, que los matemáticos e ingenieros están acostumbrados a ver como un signo de aviso de que pueden estar obteniendo resultados problemáticos.
Los resultados inesperados de este cálculo no son causados por un error de programación, sino que más bien ese debido al modelo de coma flotante utilizado por Mathematica.
Maple es el motor de cálculo simbólico más rápido del mundo. La habilidad para realizar cálculos matemáticos simbólicamente cae en el corazón de ambos sistemas, Maple y Mathematica, y es lo que les distingue de la mayoría de los otros programas computacionales. Las comparativas entre ambos productos muestran que Maple es significativamente más rápido cuando realiza operaciones fundamentales como trabajar con polinomios, con mejoras adicionales en cada versión. Aunque pueda parecer que las operaciones con polinomios no se emplean en muchas de las aplicaciones del día a día, en realidad están en el núcleo de casi todos los algoritmos simbólicos, como la resolución exacta de ecuaciones o el cálculo de una integral.
En los ejemplos que siguen, los cálculos se han realizado con un procesador de cuatro núcleos de 64 bits Intel™ Core i7 920 2.66 GHz con Maple 17 y Mathematica 9.
Expandir un polinomio con 170544 términos en Maple emplea 31 milisegundos. En Mathematica tarda 564 milisegundos.

Consultas comunes, como encontrar las variables, calcular el grado total, y pruebas en un polinomio, corren mucho más rápidas en Maple que en Mathematica.

Maple ha desarrollado algoritmos de alto rendimiento para el motor de Maple que aceleran muchas operaciones centrales, incluyendo la diferenciación, extracción de un coeficiente y evaluación de un polinomio.

Una situación en la que las operaciones fundamentales más rápidas establecen una gran diferencia es la resolución simbólica de ecuaciones. Por ejemplo, el siguiente ejemplo utiliza 50 sistemas de polinomios de pequeño tamaño de la literatura de resolución de sistemas de polinomios. Maple encuentra soluciones a los 50 en menos de 50 segundos, utilizando su comando “solve”. Mathematica es capaz de resolver únicamente 26 de estos sistemas, y normalmente fue más lento, a veces mucho más lento:

Para cada uno de los otros 24 sistemas, el comando “Solve” de Mathematica no devolvió solución dentro de los 5 primeros minutos y se pararon.
Tanto Maple como Mathematica son herramientas muy potentes, pero hay muchas razones por las que pueden no ser las únicas herramientas que Vd. utilice.
Maple proporciona conectividad con una amplia variedad de herramientas y lenguajes estándares, así que Vd. puede aprovecharse del potente entorno matemático de Maple sin importar qué otras herramientas utilice. El siguiente apartado describe algunas de las diferencias en las opciones de conectividad de los dos productos.
Las funcionalidades de generación de código le permiten convertir expresiones y programas a diferentes lenguajes de programación. De esa manera, puede utilizar Maple o Mathematica para desarrollar las soluciones originales o algoritmos y entonces exportarlos a otro lenguaje de forma que pueda utilizarlos como parte de un proyecto más grande. Maple puede generar código C, C#, Fortran, Java™, MATLAB y Visual Basic®. Las opciones incluyen deducción automática de tipos, coerción automática de tipos, análisis de reducción de ecuaciones y optimización del código. El objetivo de Maple es generar código que se integre fácilmente en su código base. Por ejemplo, para máxima compatibilidad, el código C generado por Maple está adherido al estándar ANSI C.
Mathematica tiene generación de código para C y Fortran. Los resultados no pueden ser utilizados inmediatamente porque los resultados no son código C o Fortran estándar.
Considere el siguiente ejemplo:

El comando CForm[] de Mathematica ha convertido los corchetes en Sin[] en paréntesis (), pero retiene la inicial mayúscula de las funciones seno y raíz cuadrada. El código C generado por Mathematica entonces, tiene que ser compilado contra un archivo macro (mdefs.h) para convertir esas funciones de Mathematica a su equivalente C. Sin embargo, incluso esto no siempre es suficiente, como se puede ver en el siguiente ejemplo:

La función arctanh(x) no es parte de la librería matemática del C estándar. Maple automáticamente convierte el comando arctanh() a una forma equivalente que puede ser evaluada en C. Mathematica la deja como arctanh(), por lo que el código de Mathematica no correrá de forma apropiada, incluso después de compilar el código contra el archivo macro de Mathematica.
La generación del código Fortran funciona del mismo modo. Maple genera código que puede utilizarse inmediatamente. El código generado por Mathematica necesita compilarse contra un archivo de definiciones separado y no siempre producirá un código que funcione. Además, Maple tiene en cuenta las restricciones impuestas por los compiladores de Fortran en el formato de líneas y en la longitud de los nombres de las variables.

Como Mathematica no tiene en cuenta estos factores, el código requiere un postprocesado antes de que pueda ser incorporado en su programa.
Maple ofrece una solución de cálculo técnico que está estrechamente integrada con MATLAB, proporcionando acceso directo a todos los comandos, variables y funciones de cada producto mientras se trabaja en cualquiera de los entornos. También puede traducir el código de MATLAB a Maple y generar el código de MATLAB desde expresiones y procedimientos de Maple.
Mathematica no tiene incorporada ninguna conectividad con MATLAB. Existen herramientas de terceras partes, no soportadas por Wolfram Research, que ofrecen la capacidad de llamar a funciones de MATLAB desde dentro de Mathematica y que realizan alguna generación de código de MATLAB. La herramienta de generación de código no se ha actualizado en más de 10 años. La comunicación bidireccional y la traducción de código no están disponibles.
Maple proporciona un enlace bidireccional paramétrico con los sistemas SolidWorks®, AutoDesk Inventor®, y NX® CAD, permitiendo la recuperación de parámetros de un dibujo CAD, realizar análisis y optimizaciones, y enviar los nuevos valores de vuelta a los diseños. Se dispone tanto de un asistente interactivo como de una API de programación para soportar la experimentación activa y el desarrollo de herramientas especializadas para reconfiguración y optimización de piezas.
Mathematica ofrece herramientas para exportar objetos 3D a formatos CAD, pero no proporciona un enlace vivo entre los dos productos. No existe manera de recuperar parámetros desde un diagrama CAD dinámicamente, y no hay manera de llevar nuevos valores de parámetros directamente al diseño CAD.
Los motores matemáticos, tanto de Maple como de Mathematica, tienen una arquitectura similar. Un núcleo escrito en C o C++ y una gran librería de funciones predefinidas escritas en el lenguaje de programación de Maple o de Mathematica.
Aproximadamente el 95% de la funcionalidad de Maple está escrita en el lenguaje de programación de Maple, y cada usuario de Maple puede inspeccionar libremente el código fuente para cualquiera de esas rutinas de la librería predefinida de Maple. Esto es de gran utilidad para determinar qué pasa “bajo el capó” en Maple, qué algoritmos se están utilizando, y para propósitos de análisis de rendimiento. El depurador de Maple también permite a un usuario dar pasos a través de las rutinas de la librería para obtener una visión en profundidad de exactamente cómo se comporta la rutina para un conjunto dado de entradas. De hecho, los usuarios de Maple no solo pueden ver y moverse dentro de las rutinas de la librería, sino que incluso pueden modificar o extender una rutina de la librería de Maple para adaptar su funcionalidad.
En Mathematica, el código fuente para todas las rutinas de la librería predefinida escritas en el lenguaje de programación de Mathematica está escondido al usuario. El código fuente está almacenado en archivos .mx en un formato binario propietario. Los usuarios no pueden inspeccionar el código fuente y no pueden dar pasos dentro de esas rutinas en el depurador de Mathematica. Como que el código fuente no está disponible tampoco es posible particularizar las rutinas de la librería de Mathematica.
Existen varias técnicas para ahorrar memoria cuando se resuelve un modelo. Una de ellas involucra dividir el modelo en secciones separadas y resolverlas individualmente, en lugar de abordar todo el modelo de una vez. Si se quiere mapear datos desde una solución de COMSOL Multiphysics® a la siguiente utilizando scripts de MATLAB®, esto se puede hacer conectando los dos programas por medio de LiveLink™for MATLAB®.
Un método para dividir y vencer a tu modelo
Para ahorrar memoria, se puede partir un modelo grande en secciones separadas consecutivas y entonces mapear la solución de cada parte en el valor de entrada de cada parte sucesiva de la serie. Cuando se considera esta técnica, lo más importante que hay que tener en cuenta son los acoplamientos de componentes de la simulación, p. ej. el grado de información que los componente tienen o utilizan de otro.
Existen varios métodos disponibles para utilizar soluciones como valores de punto de partida en COMSOL Multiphysics®. Sin embargo, si tienes un modelo que es demasiado grande para resolverse en un bloque y los errores que se introducen por la partición son aceptables, se puede utilizar LiveLink™for MATLAB® para integrar un archivo de modelo .mph con MATLAB®.