Paso 3 — Escribir evidencias, no solo mensajes
*CFOPEN,m08_results,csv
*VWRITE
('case_id,beam_h,tip_force,mesh_h,n_nodes,n_elements,...,passes')
*VWRITE,case_id,beam_h,tip_force,mesh_h,n_nodes,n_elements,...,passes
(...formato...)
*CFCLOS
El CSV debe contener entradas, topología, resultados FE, referencias analíticas, errores
relativos y passes. Un /COM en pantalla ayuda a depurar; el
archivo es la evidencia que sobrevivirá a la sesión.
Paso 4 — Diagnosticar con el mismo método siempre
/STATUS,PARM
/COM,Inspect the .out for file paths, empty selections and missing sets
Si passes=0, no relajes tolerancias. Pregunta en este orden: ¿el contrato de
argumentos es válido? ¿las submacros están en el directorio de trabajo? ¿los componentes
tienen nodos? ¿existe un set antes de extraer?
Contrato CSV de aceptación
Compara tu salida con 08_expected_results.csv:
- Caso 1:
126nodos,40elementos,uy_ref=−3.80952381E−4. - Caso 2:
156nodos,50elementos,uy_ref=−7.44047619E−4. - Error de flecha
< 5 %, tensión interior< 10 %, equilibrio< 0.5 %. passes=1en ambos casos.
Trampas frecuentes
- Invocar
*USEsin copiar también08_build,08_solvey08_extract. - Olvidar
ALLSEL,ALLentre regiones y arrastrar una selección residual. - Extraer desplazamientos cuando
n_sets=0. - Cambiar la física o la tolerancia para «hacer pasar» un caso mal invocado.