- **OpenFOAM Programming & Development**
(*https://www.cfd-online.com/Forums/openfoam-programming-development/*)

- - **Matrix and Varialbe Definition**
(*https://www.cfd-online.com/Forums/openfoam-programming-development/104569-matrix-varialbe-definition.html*)

Is it just the equation or are you going to solve that on a finite-volume grid?
In Version 1.6-ext there is support for NxN matrices. You might want to check this out! Best Kathrin |

Thanks.
Iīd like to solve that one the grid for v, yes. Iīve tried to divied this into three equations like the density, momentum and energy equation like the "normal" way, but they are coupled. Have you ever tried this with OpenFoam 2.1.0, too? Or have you any experience if there is support, too? And the last question ;). Do you know how it is done in 1.6-ext? Best treima |

Hello,
I didnīt work on this for a while, but now Iīve found some possiblities and, of course, new problems. Here ist my partial differential equation system, which i like to solve: Iīve defined the matrices via Matrix<volScalarField,scalarField> jacobi_f(5,5), jacobi_g(5,5), jacobi_h(5,5); and assigned the elements via jacobi_f[i][j] = functions; and so on. My problem is now, how to deal with vectors of dimension five. Itīs not possible to define a five-dimensional volVectorField and to combine this with my matrices. Is it possible to solve the five dimensional coupled system with OpenFoam? If yes, how can this be done? Do you have any ideas? regards, treima |

Check out the VectorN class in 1.6-ext.
There is no such thing in the vanilla version. Sorry Best Kathrin |

Thanks a lot for this quick reply!
Iīve to make some changes in my solver for using it with 1.6-ext. But do you know an existing solver where VectorN is used? |

Hey treima,
in 1.6-ext there is blockCoupledScalarTransportFoam documentation and application of the tecnique can be found in Ivor Cliffords work (6th OFW training material) and in my work (see this years OFW presentation slides) Best Kathrin |

Hello
I think you can go around your problem in OF 2.x by dividing your equation into 5 scalar equations and solve each separately. I mean the interaction-terms can be treated explicitly and you iterate to converge (the segregated way) Regards, Hisham |

Hello,
Iīve thought about this, too. But the five equations are coupled with each other, so that it isnīt possible to extract parts with less then four variables and I think. In OpenFOAM you canīt solve equations with more than one variable, right? Perhaps I didnīt understand this solution, but at the moment I canīt see your point ;) Thanks Kathrin for hints, Iīll have a closer look at the blockCoupled-solver and try to extend this one for five equations! Regards treima |

Hello,
Iīve tried to sperate these equations, like Hisham suggested, in scalar equations. Now Iīm solving this problem (for demonstration, I take the first row) + the four other equations. In OpenFOAM Iīve Implemented this: solve ( fvm::ddt(Lambda_1) + a21*gradXLambda2 + 1./tcoeff*a31*gradXLambda3 + 1./tcoeff*a41*gradXLambda4 + 1./pow(tcoeff,2)*a51*gradXLambda5 + 1./tcoeff*b21*gradYLambda2 + 1./tcoeff*b31*gradYLambda3 + 1./tcoeff*b41*gradYLambda4 + 1./pow(tcoeff,2)*b51*gradYLambda5 + 1./tcoeff*c21*gradZLambda2 + 1./tcoeff*c31*gradZLambda3 + 1./tcoeff*c41*gradZLambda4 + 1./pow(tcoeff,2)*c51*gradZLambda5 ); solve ( equation2 ); solve ( equation3 ); solve ( equation4 ); solve ( equation5 ); where tcoeff is a cofactor to get the right dimensions (at the end, dimensions doesnīt matter) and gradXLambda2, gradXLambda3 are defined as followed: volScalarField gradXLambda2 (unitVector_x & fvc::grad(Lambda_2)); Is this the right way to do this? The results are a little bit confusing. Perhaps the mistake is in my implementation, in my derivation of the equations, in my boundary conditions or somewhere else. Do anyone have any experience or suggestions concerning my problem? Thanks, treima |

All times are GMT -4. The time now is 14:08. |