Investigación / Optimización

Optimización topológica de una viga MBB

A partir de Erik Andreassen, Anders Clausen, Mattias Schevenels, Boyan S. Lazarov, Ole Sigmund, “Efficient topology optimization in MATLAB using 88 lines of code”, Structural and Multidisciplinary Optimization (2010), doi:10.1007/s00158-010-0594-7.

Frente al código del autor
12 de 12 controles aprobados· ver los controles
Frente a las figuras del artículo
Parámetros de la Figura 3 reproducidos; no se afirma una comparación con figuras digitalizadas ni valores publicados de flexibilidad.

Investigación, no una herramienta de diseño. Nada de esto es un resultado de ingeniería.

Un optimizador SIMP educativo: redistribuye una cantidad fija de material para reducir la flexibilidad.

El experimento

El resumen de los autores describe un sucesor compacto del código de 99 líneas, que añade filtrado de densidad y mejora la eficiencia mediante preasignación y vectorización. Aquí implementamos su método principal de mínima flexibilidad.

Cada cuadrado usa un elemento bilineal de tensión plana. SIMP interpola su rigidez como E = 10⁻⁹ + ρᵖ(1 − 10⁻⁹). Los criterios de optimalidad redistribuyen material, con un límite de movimiento de 0.2. La factorización de Cholesky dispersa del motor resuelve el equilibrio en cada iteración.

Reproducción

Valores predeterminados: 60 × 20 elementos, fracción de volumen 0.5, penalización 3, radio del filtro 2.4. Corresponden a la sección 3.4 y la Figura 3(a) del manuscrito de los autores (páginas 6–7). Los filtros de sensibilidad y densidad usan los mismos parámetros. Se muestran las densidades físicas.

La flexibilidad se mide antes de cada actualización; el volumen y la densidad se registran después, exactamente como en top88. Se detiene cuando el mayor cambio de diseño es como máximo 0.01. La referencia se superpone solo si coinciden los parámetros predeterminados.

Evidencia y limitaciones

El ejecutor de referencia descarga la función original de los autores, comprueba su SHA-256 y observa datos de precisión completa en sus llamadas de dibujo en GNU Octave. Las pruebas de Rust comparan el número de iteraciones, cada valor de flexibilidad, volumen y cambio, y las densidades finales, junto con comprobaciones independientes de elementos y filtros.

El manuscrito accesible presenta imágenes optimizadas y tablas de tiempos, no la flexibilidad final ni el número de iteraciones para estos casos. No afirmamos una comparación con las figuras del artículo. El acuerdo entre implementaciones no es validación experimental ni certificación de ingeniería. Las condiciones de contorno alternativas se remiten al artículo de 2001; este experimento admite el caso de carga MBB.

Resumen, manuscrito y referencia de los autores. Volumen 43 (2011), páginas 1–16; Crossref registra la publicación en línea en 2010.

Citar esto

Stabileo Research, “Optimización topológica de una viga MBB”, reproducción de Erik Andreassen, Anders Clausen, Mattias Schevenels, Boyan S. Lazarov, Ole Sigmund (2010), doi:10.1007/s00158-010-0594-7. Implementación: research/optimization/andreassen-2011 en el commit 8068cd16ea2c. Motor: el motor de Stabileo en el mismo commit. Se prevén enlaces permanentes a esta compilación exacta.