![]() |
fvm::ddt(eigenVectors(S)) ????
Dear Foamers,
In my transport equation, I need to calculate "fvm::ddt(eigenVectors(S))", S here is a 3x3 tensor. when I compile, system gives error: --------------------------- no matching function for call to ‘ddt(Foam::tmp<Foam::GeometricField<Foam::Tensor<d ouble>, Foam::fvPatchField, Foam::volMesh> >)’ --------------------------- if I write: ..................... S = eigenVectors(S); fvm::ddt(S); .................... I can compile it. But in the latter way, it seems that I can not include the calculator "eigenVectors()" into the "SEqn.solve()". Can you give some advice? Thanks in advance. H.Y. |
Good day,
It looks like eigenVectors(S) returns a tmp format. So can you compile the following: Code:
fvm::ddt( eigenVectors(S)() )Kind regards, Niels |
thank you for the fast help,
but I got new problems, (sorry, i am a so "new" C++ coder....) I try to multiply in this way: ----------------------------- (eigenVectors(S)()) & fvm::ddt(eigenVectors(S)()); ............................. and got error as: ________________ SEqn.H:3: error: no match for ‘operator&’ in ‘Foam::eigenVectors(const Foam::GeometricField<Foam::Tensor<double>, PatchField, GeoMesh>&) [with PatchField = Foam::fvPatchField, GeoMesh = Foam::volMesh]().Foam::tmp<T>::operator() [with T = Foam::GeometricField<Foam::Tensor<double>, Foam::fvPatchField, Foam::volMesh>]() & Foam::fvm::ddt(const Foam::GeometricField<Type, Foam::fvPatchField, Foam::volMesh>&) [with Type = Foam::Tensor<double>]()’ ________________ and can you give also some advice of it? Thanks. H.Y. |
Hi,
You are trying to do an inner product of a tensor (?) and the matrix coefficients in your linear set of equations. That kind of operator is not supported by OpenFoam, at least not if you want to solve the 6 or 9 equations in a segregated approach, because you directly couple all the equations by that approach. You might be able to address the problem with a block-coupled solver, however, that is far beyond my expertise, or you should formulate you problem as a segregated one. Good luck, Niels |
| All times are GMT -4. The time now is 11:16. |