Tu primera meta no es memorizar APDL: es abrir MAPDL con confianza, ejecutar una simulación completa y saber dónde buscar si algo falla. Construiremos una viga en voladizo sencilla y recorreremos juntos el camino desde Product Launcher hasta los contornos de resultados.
Resultado de la sesión: una simulación reproducible, sus archivos .out y
.rst, una comprobación analítica y una plantilla que reutilizaremos durante el curso.
Objetivos
Al terminar M00 podrás demostrar que:
- Configuras Working Directory y Job Name en Product Launcher.
- Identificas Command Input, Output Window, Command Window, viewport, procesador y atributos activos.
- Ejecutas un archivo
.macmediante/INPUT. - Reconoces el flujo
/PREP7 → /SOLU → /POST1, la existencia de/POST26y la función deFINISH. - Explicas qué representa cada bloque del script y qué evidencia produce.
- Encuentras errores y advertencias relevantes en el archivo
.out. - Compruebas deformada, dirección, orden de magnitud y proporcionalidad con la carga.
Prerrequisitos
- Nociones básicas de análisis por elementos finitos.
- ANSYS Mechanical APDL disponible; las capturas pueden variar ligeramente entre versiones.
- Una carpeta local donde tengas permisos de lectura y escritura.
- No se requiere experiencia previa programando.
Cómo usar esta lección
| Ruta | Duración | Recorrido |
|---|---|---|
| Primera victoria | 20–25 min | Configura la sesión, ejecuta la plantilla y verifica archivos, deformada y contornos. |
| Completa | 70–85 min | Además, estudia la interfaz, explica el script, completa el reto y revisa el output. |
Recomendación: consigue primero un resultado visible. Después vuelve al script y entiende cada bloque. La experiencia concreta hace que los comandos dejen de ser una lista abstracta.
Mapa de la sesión
- Preparar: crear una carpeta y descargar el script.
- Abrir: definir Working Directory y Job Name.
- Orientarse: reconocer dónde escribir y dónde observar.
- Ejecutar: lanzar el archivo con
/INPUT. - Comprobar: output, archivos, modelo, deformada y resultados.
- Experimentar: duplicar la carga y contrastar la predicción.
Hasta el primer /INPUT, la lección sigue cinco pasos numerados. Empiezas
por el primero; cada uno deja la sesión en un estado comprobable antes de pasar al siguiente.
Kit del módulo
Descarga todos los scripts .mac y contratos .csv del módulo en un solo
archivo. Descomprime el contenido en tu Working Directory antes de ejecutar MAPDL.
m00-kit.zip
· entregable principal: 00_session_template.mac
Paso 1 — Preparar la carpeta de trabajo
Crea una carpeta dedicada, por ejemplo:
C:\Proyectos_APDL\M00Evita trabajar directamente en Descargas, una carpeta temporal o una ubicación sin permisos. MAPDL generará varios archivos y todos deben quedar juntos para poder reconstruir lo ocurrido.
Descarga
00_session_template.mac
y guárdalo en esa carpeta.
¿Qué es un archivo .mac?
Es un archivo de texto con instrucciones APDL. Cualquier editor de texto sirve; más abajo recomendamos Notepad++ con el lenguaje del curso (o VS Code como alternativa). Puedes versionarlo y volverlo a ejecutar. La extensión ayuda a reconocerlo, pero el contenido sigue siendo texto.
El script es la descripción reproducible del análisis; la interfaz es uno de los medios para ejecutarlo y observarlo.
Editor recomendado para scripts APDL
No es obligatorio para completar el módulo, pero un editor con resaltado de sintaxis facilita leer comentarios, bloques y comandos. Evita Word o el Bloc de notas sin resaltado: el script es texto plano.
Notepad++ (recomendado en Windows)
El curso incluye un lenguaje listo para importar. Sigue la
guía paso a paso para instalar Notepad++ y activar el resaltado de Ansys APDL
o descarga directamente
ansys-apdl-notepad++.udl.xml
.
Visual Studio Code (alternativa)
Editor gratuito y multiplataforma, útil si ya lo usas o trabajas fuera de Windows. En el marketplace
existen varias extensiones de resaltado para APDL; busca «ansys apdl» o «apdl syntax» en Extensions,
revisa la descripción y las valoraciones, e instala la que prefieras. Luego abre el .mac
descargado y confirma que el lenguaje se reconoce correctamente.
El resaltado del UDL de Notepad++ es básico (comentarios, estructura y algunos keywords); no sustituye la Command Reference. Con cualquiera de las dos opciones puedes empezar el curso.
Paso 2 — Abrir MAPDL desde Product Launcher
Abre ANSYS Product Launcher y entra en la pestaña File Management. Los campos esenciales son:
- Working Directory: carpeta desde la que MAPDL leerá y en la que escribirá los archivos.
- Job Name: prefijo inicial del trabajo y de varios archivos generados.
- Run: inicia la sesión con esa configuración.
Job Name del Launcher y /FILNAME
Product Launcher asigna el nombre con el que nace la sesión. La plantilla ejecuta después
/FILNAME,m00_cantilever,1, por lo que los archivos principales del ejercicio utilizarán
m00_cantilever. No es un error: el script toma control explícito de su identidad.
Paso 3 — Reconocer la interfaz MAPDL
Antes de ejecutar, dedica un minuto a localizar la ventana principal y la Output Window:
La ventana principal
Cinco zonas que usarás en casi toda sesión:
- Command Input: caja superior donde puedes escribir una instrucción.
- Main Menu: árbol lateral con preprocesado, solución y postprocesado.
- Viewport: zona gráfica donde aparecerán geometría, malla y resultados.
- Procesador activo: en la barra inferior verás inicialmente
BEGIN. - Atributos activos:
mat,type,real,csysysecnum.
Output Window
Al abrir MAPDL aparece también una ventana independiente titulada Mechanical APDL … Output. No es donde escribes comandos: es el registro en tiempo real de todo lo que el programa va escribiendo — versión y directorio de trabajo, nombre del job, arranque de la interfaz gráfica, eco de comandos, avance del solver, advertencias y errores.
En Windows, MAPDL interactivo muestra esa salida en la Output Window, pero no la escribe
en disco por defecto. En general, para conservar el registro en un archivo hay que
redirigir con /OUTPUT,Fname,Ext (menú
Utility Menu → File → Switch Output to → File). En M00 no hace falta hacerlo a mano:
/OUTPUT,m00_session,out está preasignado en la plantilla, justo
después de /FILNAME.
El nombre del archivo de salida no puede coincidir con el prefijo del job: si
/FILNAME fija m00_cantilever, ANSYS reserva
m00_cantilever.out para el job. Por eso la plantilla escribe el registro de la
ejecución en m00_session.out, un nombre alternativo.
Mientras ejecutas, la Output Window sigue siendo el primer sitio donde detectar un error; el
.out te permitirá revisar el mismo contenido con calma después.
BEGIN no significa «sin contexto»
BEGIN es el nivel inicial de MAPDL: la sesión acaba de abrirse y aún no has entrado en
ningún procesador concreto. Un procesador es el modo de trabajo que determina qué
comandos APDL acepta MAPDL en ese momento. Piensa en él como una fase del análisis: no todos los
comandos son válidos en todas las fases.
Los procesadores que usarás con más frecuencia son cuatro:
| Procesador | Entrada (APDL) | Qué haces allí |
|---|---|---|
PREP7 |
/PREP7 |
Definir geometría, materiales, tipos de elemento, malla y condiciones de contorno. |
SOLUTION |
/SOLU |
Declarar el tipo de análisis y ejecutar SOLVE. |
POST1 |
/POST1 |
Leer resultados y representar un campo espacial en un set: contornos, deformada, listados puntuales. |
POST26 |
/POST26 |
Leer resultados y representar una magnitud a través de varios sets: curvas carga–respuesta o historias temporales. |
POST1 y POST26 son postprocesadores complementarios: entras en uno u otro tras resolver,
según quieras inspeccionar un campo en un instante o una evolución entre sets. La plantilla de M00 solo usa
POST1; /POST26 lo verás en M07.
Para entrar, escribe el comando en Command Input y pulsa Enter (o inclúyelo en un .mac).
Para salir del procesador actual y volver a BEGIN, usa FINISH.
La barra inferior —el punto 4 de la lista anterior— muestra en todo momento dónde estás; al ejecutar
la plantilla verás cómo cambia sucesivamente de BEGIN a PREP7,
SOLUTION y POST1.
El Main Menu del punto 2 refleja la misma lógica: sus ramas de preprocesado, solución y postprocesado abren esos procesadores. En este curso entraremos por comandos APDL, no por menús.
Atributos activos: definir no es activar
MAPDL utiliza tablas numeradas. ET,1,... define el tipo de elemento 1 y
MP,...,1,... define el material 1. Después TYPE,1 y MAT,1
los convierten en atributos activos para los elementos que se crearán.
Patrón que reutilizaremos: definir → activar → asignar al crear o mallar.
Paso 4 — Desacoplar la Command Window
No confundas la Output Window con la Command Window. La Output registra todo el flujo de la sesión; la Command Window es opcional y muestra el diálogo interactivo de comandos, mensajes y respuestas inmediatas. Puede estar integrada o desacoplada según versión y configuración.
Configuración recomendada durante el curso
Pulsa el botón señalado por la flecha roja en la captura anterior para mostrar la Command Window. Si aparece integrada en la interfaz, desacóplala y colócala junto al viewport. No es obligatorio para resolver, pero sí muy recomendable: podrás seguir los comandos conforme se ejecutan y detectar con rapidez el punto en el que aparece un warning o un error.
Úsala como monitor de ejecución interactivo, no como sustituto del registro en disco. No necesitas
leer cada línea en tiempo real ni configurar la redirección a mano: la plantilla incluye
/OUTPUT,m00_session,out preasignado y, al final, un /OUTPUT sin
argumentos que devuelve la salida a la Output Window en tiempo real.
Paso 5 — Ejecutar la plantilla
Escribe en Command Input:
/INPUT,00_session_template,macLa instrucción tiene tres partes:
/INPUT: pide a MAPDL que lea comandos desde un archivo.00_session_template: nombre sin extensión.mac: extensión.
Si el archivo está en el Working Directory, no necesitas escribir la ruta completa. Durante la ejecución verás aparecer la geometría, la malla y finalmente los contornos.
Primera comprobación
- Existen
m00_session.outym00_cantilever.rsten el Working Directory. - La Output Window no termina con un error fatal.
- Se crea una viga alargada en la dirección X.
- El extremo libre se desplaza hacia −Y.
- Se muestran contornos de desplazamiento y tensión.
El modelo físico
La plantilla representa una viga en voladizo con las siguientes características:
| Magnitud | Valor | Unidad |
|---|---|---|
| Longitud | 1,00 | m |
| Altura | 0,10 | m |
| Anchura | 0,05 | m |
| Módulo elástico | 210·10⁹ | Pa |
| Coeficiente de Poisson | 0,30 | — |
| Fuerza vertical total | −1000 | N |
El extremo x=0 está empotrado y la carga actúa sobre los nodos de x=1 m.
La geometría es deliberadamente sencilla: en M00 queremos aprender a ejecutar y leer el análisis,
no resolver una geometría complicada.
La misma viga en la tabla y en el script
La tabla anterior fija el problema físico. El script APDL traduce cada decisión en comandos.
No son dos temas distintos: cada fila tiene su correspondencia en el .mac.
-
BLOCKBLOCK,0,1.0,0,0.10,0,0.050, 1.0— límites en X (longitud 1,0 m).0, 0.10— límites en Y (altura 0,10 m).0, 0.05— límites en Z (anchura 0,05 m).
-
MP,EX,1,210E9
MP,PRXY,1,0.30EX,1,210E9— módulo elástico del material 1 (Pa).PRXY,1,0.30— coeficiente de Poisson del material 1.
-
D,ALL,ALL,0enx=0NSEL,S,LOC,X,0D,ALL,ALL,0NSEL,S,LOC,X,0— selecciona los nodos en el planox=0.D,ALL,ALL,0— restringe todos los grados de libertad de la selección actual.
-
F,ALL,FY,-1000/n_tipNSEL,S,LOC,X,1.0*GET,n_tip,NODE,0,COUNTF,ALL,FY,-1000/n_tipNSEL,S,LOC,X,1.0— selecciona los nodos del extremo libre.*GET,n_tip,...— cuenta cuántos nodos hay seleccionados.F,ALL,FY,-1000/n_tip— reparte −1000 N entre esos nodos en Y.
Cuando leas la anatomía del script, no memorices líneas sueltas: localiza qué decisión física codifica cada bloque. Pasa el cursor (o el foco) sobre ? para ver el comando completo y el significado de cada argumento.
Anatomía del script
Abre el archivo en un editor. Está dividido en cinco bloques:
- Inicializar la base de datos.
- Definir y mallar el modelo.
- Aplicar empotramiento y carga.
- Resolver.
- Leer y representar resultados.
Bloque 1 — Inicializar correctamente
/CLEAR,START
/FILNAME,m00_cantilever,1
/OUTPUT,m00_session,out
/TITLE,M00 - Viga en voladizo
/UNITS,SI| Comando | Función | Comprobación |
|---|---|---|
/CLEAR,START | Limpia la base de datos y relee la configuración inicial. | La sesión vuelve a BEGIN. |
/FILNAME | Define el nombre base de los archivos del ejercicio. | Los archivos empiezan por m00_cantilever. |
/OUTPUT,m00_session,out | Redirige la salida de texto a un archivo distinto del reservado por el job (preasignado en la plantilla). | Tras el /INPUT, aparece m00_session.out en el Working Directory. |
/TITLE | Asigna un título descriptivo al modelo. | Aparece en listados y gráficos compatibles. |
/UNITS,SI | Anota el convenio de unidades. | No transforma ningún valor. |
El orden importa
/CLEAR aparece antes del título y de las unidades porque reinicia la base de datos.
/FILNAME fija el prefijo del job (m00_cantilever) y reserva
m00_cantilever.out. Por eso /OUTPUT,m00_session,out va enseguida con
un nombre alternativo. No tienes que repetir estos comandos ni usar el menú Switch Output to en M00.
Bloque 2 — Entrar en PREP7 y definir atributos
/PREP7
ET,1,SOLID185
MP,EX,1,210E9
MP,PRXY,1,0.30
TYPE,1
MAT,1/PREP7entra en el preprocesador: geometría, elementos, materiales, malla y condiciones.ET,1,SOLID185define el tipo de elemento 1 como un sólido estructural.MP,EX,1,210E9define el módulo elástico del material 1.MP,PRXY,1,0.30define su coeficiente de Poisson.TYPE,1yMAT,1activan esas tablas antes de mallar.
M03 justificará en detalle la elección del elemento y comparará idealizaciones. En M00 basta reconocer que elemento y material deben estar definidos y activos antes de generar elementos.
Bloque 3 — Crear geometría y malla
BLOCK,0,1.0,0,0.10,0,0.05
ESIZE,0.025
VMESH,ALLBLOCKcrea un volumen rectangular con límites X, Y y Z.ESIZEpropone un tamaño global de elemento.VMESH,ALLmalla todos los volúmenes seleccionados.
Una malla visible no implica una malla convergida. M04 estudiará sensibilidad y calidad. Aquí solo necesitamos una discretización razonable para completar el flujo.
Bloque 4 — Seleccionar y empotrar
NSEL,S,LOC,X,0
D,ALL,ALL,0
ALLSEL,ALL
NSEL,S,LOC,X,0 sustituye la selección actual por los nodos situados en x=0.
D,ALL,ALL,0 restringe todos sus grados de libertad disponibles. Finalmente,
ALLSEL,ALL recupera todas las entidades.
La selección es estado
Muchos comandos actúan solo sobre lo seleccionado. Olvidar ALLSEL puede hacer que etapas
posteriores ignoren gran parte del modelo sin que la línea problemática parezca incorrecta.
Bloque 5 — Repartir una fuerza total
NSEL,S,LOC,X,1.0
*GET,n_tip,NODE,0,COUNT
F,ALL,FY,-1000/n_tip
ALLSEL,ALL
Primero se seleccionan los nodos del extremo. *GET cuenta cuántos hay y guarda el resultado
en n_tip. La fuerza de cada nodo es -1000/n_tip, por lo que la suma permanece
igual a −1000 N aunque cambie la malla.
Esta idea es importante: el valor de entrada representa una fuerza total, no una fuerza que deba repetirse completa en cada nodo.
Bloque 6 — Salir de PREP7 y resolver
FINISH
/SOLU
ANTYPE,STATIC
SOLVE
FINISHFINISHsale del procesador actual y vuelve a BEGIN./SOLUentra en Solution.ANTYPE,STATICdeclara un análisis estático.SOLVEsolicita la solución del load step actual.- El segundo
FINISHcierra la etapa de solución.
Que SOLVE termine solo demuestra que el solver obtuvo una respuesta. Todavía debemos
comprobar si representa correctamente el problema físico.
Bloque 7 — Entrar en POST1
/POST1
SET,LAST
PLNSOL,U,SUM
PLNSOL,S,EQV
FINISH
/OUTPUT/POST1abre el postprocesador general.SET,LASTlee el último conjunto de resultados disponible.PLNSOL,U,SUMrepresenta la magnitud del desplazamiento.PLNSOL,S,EQVrepresenta la tensión equivalente./OUTPUTsin argumentos devuelve la salida de texto a la Output Window en tiempo real.
Cada plot sustituye al anterior en el viewport. Al finalizar verás la tensión equivalente.
Puedes volver a ejecutar PLNSOL,U,SUM manualmente para recuperar el desplazamiento.
PLNSOL,U,SUM). Orienta la transición modelo–resultado; no demuestra convergencia ni validación analítica.
PLNSOL,S,EQV). Segundo tipo de inspección visual; no sustituye las tolerancias del reto de linealidad.
Qué archivos debes encontrar
| Archivo | Qué contiene | Por qué importa |
|---|---|---|
m00_session.out | Registro textual desde /OUTPUT,m00_session,out hasta el /OUTPUT final. | Diagnóstico y trazabilidad reproducible del script. |
m00_cantilever.out | Salida asociada al job name (/FILNAME). | MAPDL lo reserva con ese nombre; en M00 el registro útil del script está en m00_session.out. |
m00_cantilever.rst | Resultados estructurales. | Permite postprocesar. |
m00_cantilever.log o log de sesión | Comandos enviados durante la sesión. | Ayuda a reconstruir acciones. |
m00_cantilever.db | Base de datos del modelo en disco. | La plantilla de M00 no ejecuta SAVE; no esperes este archivo salvo que lo guardes tú. |
Si ejecutas la plantilla varias veces (por ejemplo, en el reto de linealidad), el archivo
m00_session.out se sobrescribe en cada ejecución. Pueden aparecer además archivos
numerados del job como m00_cantilever1.out cuando
/FILNAME,...,1 abre un registro nuevo. Para el diagnóstico del script, usa
m00_session.out de la ejecución que acabas de completar.
Cómo leer el archivo .out
La plantilla incluye /OUTPUT,m00_session,out preasignado justo después de
/FILNAME. A partir de ahí, lo que MAPDL escribe en la Output Window también queda en
m00_session.out hasta el /OUTPUT final, que devuelve la salida a la
ventana en tiempo real. Ábrelo como texto y busca,
en este orden:
ERRORoFATAL: pueden invalidar o detener la ejecución.WARNING: exige interpretación; no todas las advertencias tienen la misma gravedad.- La sección de solución: confirma que se alcanzó
SOLVE. - El final del archivo: comprueba que el script llegó a
POST1.
No cambies opciones del solver al azar ante el primer mensaje. Identifica primero la etapa, la entidad y la instrucción relacionadas con el síntoma.
Comprobación física independiente
Para una viga rectangular:
I = B·H³/12
|uy_tip| = P·L³/(3·E·I)Con los valores del modelo:
I = 4.1667E-6 m⁴
|uy_tip| ≈ 3.81E-4 m = 0.381 mmEl modelo sólido 3D no tiene que coincidir exactamente con Euler–Bernoulli. En esta primera sesión buscamos el orden de magnitud. M04 y M07 convertirán esta comparación en un estudio formal.
Reto verificable — La prueba de linealidad
Antes de modificar nada, predice qué ocurrirá al duplicar la carga:
F,ALL,FY,-2000/n_tip- Ejecuta el caso de −1000 N y registra el desplazamiento vertical del extremo.
- Cambia únicamente la fuerza total a −2000 N.
- Ejecuta otra vez con la misma geometría, material y malla.
- Calcula
uy_2000/uy_1000.
Criterio de aceptación: razón entre 1.99 y 2.01.
En un análisis elástico lineal, duplicar la carga duplica desplazamientos y tensiones. La razón es más informativa que comparar dos capturas de colores.
Errores frecuentes
| Síntoma | Causa probable | Comprobación |
|---|---|---|
File not found | El `.mac` no está en Working Directory. | Revisa carpeta y nombre en `/INPUT`. |
| División por cero | No se encontraron nodos en x=1.0. | Revisa geometría, malla y selección. |
| Sin contornos | No existe un set válido. | Busca errores de SOLVE en m00_session.out. |
| Movimiento hacia +Y | Signo de carga cambiado. | Revisa FY y el signo. |
| Desplazamiento gigantesco | Unidades incoherentes. | Revisa metros, newtons y pascales. |
| Solo aparece una parte del modelo | Selección residual. | Ejecuta ALLSEL,ALL. |
Qué hemos decidido posponer
M00 no utiliza sistemas de coordenadas locales, plano de trabajo, cargas sobre caras de elemento
ni SFCONTROL. Son herramientas válidas, pero introducirlas aquí ocultaría el flujo esencial.
Simplificamos el modelo, no la explicación. Cada concepto aparecerá cuando resuelva un problema que el alumno ya reconoce.
Autoevaluación
¿Qué diferencia hay entre Working Directory y Job Name?
Working Directory indica dónde se leen y escriben archivos; Job Name establece su prefijo inicial.
¿Qué indica BEGIN?
Que MAPDL está en el nivel inicial, fuera de PREP7, SOLUTION, POST1 o POST26.
¿Por qué aparecen TYPE,1 y MAT,1 antes de VMESH?
Porque primero se definen las tablas y después se activan los atributos que recibirán los elementos al mallar.
¿Por qué dividimos −1000 entre n_tip?
Para que la fuerza total permanezca igual aunque cambie el número de nodos del extremo.
¿SOLVE sin errores demuestra que el modelo es correcto?
No. Aún deben comprobarse condiciones, deformada, equilibrio, orden de magnitud y sensibilidad.
¿/UNITS convierte milímetros a metros?
No. Documenta el convenio utilizado, pero la coherencia numérica sigue siendo responsabilidad del usuario.
Evidencia de aprendizaje
- Carpeta de trabajo con
00_session_template.mac,m00_session.outym00_cantilever.rst. - Captura del viewport con la deformada o el contorno de desplazamiento.
- Fragmento de
m00_session.outque confirme que se alcanzó la solución. - Tabla con carga, desplazamiento y razón entre los dos casos.
- Una explicación breve de por qué la razón observada demuestra comportamiento lineal.
Checklist de validación
- Creé una carpeta dedicada con permisos de escritura.
- Configuré Working Directory y Job Name en Product Launcher.
- Identifiqué Command Input, Output Window, Command Window, viewport, procesador y atributos.
- Ejecuté la plantilla mediante
/INPUT. - Encontré
m00_session.outym00_cantilever.rst. - La deformada y el sentido del desplazamiento son físicamente razonables.
- Comparé el orden de magnitud con
0.381 mm. - Completé el reto con una razón entre
1.99y2.01. - Puedo explicar la función de cada bloque del script sin memorizar todos sus argumentos.
Lo siguiente
Ya sabes abrir, ejecutar y comprobar una simulación reproducible. En M01 convertirás sus números fijos en parámetros, añadirás validaciones y harás que el programa tome su primera decisión de diseño.