La ecuación de calor se discretiza en el espacio con FV (o FEM), y se obtiene una ecuación semi-discreta (sistema de EDO). Este enfoque, conocido como el método de líneas , permite cambiar fácilmente de una discretización temporal a otra, sin duplicación de código. En particular, puede reutilizar cualquier integrador de tiempo para ODE sin mucho esfuerzo. Esto es muy conveniente porque si decides cambiar tu discretización espacial de FV para decir FE, aún obtienes una ecuación semi-discreta y tus integradores de tiempo aún funcionan.
Ahora estoy tratando de implementar el método de rothe para el mismo problema. Sin embargo, la discretización en el tiempo primero me obliga a reescribir la discretización espacial para cada esquema de discretización temporal que quiera utilizar. Esto elimina la reutilización de los integradores de tiempo que tenía anteriormente, y hace que sea muy complicado escribir software modular que pueda discretizar un PDE utilizando el método de líneas o el método de Rothe.
¿Hay alguna manera de implementar ambos enfoques, sin duplicación de código?
Editar:
En problemas dominados por convección, la discretización FE necesita estabilización tanto en tiempo como en espacio, lo que hace que el método de Rothe sea la "mejor" opción. Sin embargo, este no es el caso de los métodos FV / DG.
En el método de líneas, el PDE se discretiza primero en el espacio y luego en el tiempo. En el método de Rothe, el PDE se discretiza primero en el tiempo y luego en el espacio. La tercera posibilidad es discretizar tanto en el espacio como en el tiempo simultáneamente (también conocido como discretizaciones espacio-tiempo). Una discusión sobre el método de líneas y el método de Rothe se puede encontrar aquí . Para obtener más información, el libro "Métodos de elementos finitos para problemas de flujo" de Donea y Huerta es un buen recurso.