Dear Paul and Hubert,
Thank you very much. I had tried by changing libMesh::Number to
libMesh::Real, and I was getting an error. I thought that it was related
to PETSc, but now that Hubert mentions about the solvers, I guess that
he is right. I am getting this:
error: no matching function for call to
'libMesh::DirichletBoundary::DirichletBoundary(std::set<short int>&,
std::vector<unsigned int>&, libMesh::ConstFunction<double>,
libMesh::VariableIndexing)'
66 | libMesh::LOCAL_VARIABLE_ORDER);
... --- 8< snip ----
error: cannot convert 'libMesh::DenseMatrix<double>' to
'libMesh::DenseMatrix<std::complex<double> >&'
150 |
dof_map.heterogenously_constrain_element_matrix_and_vector (Ke, Fe,
dof_indices);
Thank you both. I will live with my complex numbers :D .
On 2021-08-23 13:02, Hubert Weissmann wrote:
Hi Edgar,
yes you are right. Sorry; than I misinterpreted your question.
Than I agree with Paul below; but AFAIK the `Systems` matrix/rhs (and
thus solution) allways are of `Number` type!?
At least for the `Linear` systems, I am not aware of a builtin way to
change this.
Best regards
On 8/23/21 2:58 PM, Paul T. Bauman wrote:
Hi Edgar,
The way I think you'll want to handle this is using libMesh's built-in
numeric types. libMesh::Number will be a complex-valued quantity when
libMesh is compiled with complex numbers and a standard float when
not.
libMesh::Real will always be a standard float, regardless of the
complex
mode that libMesh is configured with. So the part of your program that
you
wish to be real-valued, use libMesh::Real.
HTH,
Paul
_______________________________________________
Libmesh-users mailing list
Libmesh-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libmesh-users
_______________________________________________
Libmesh-users mailing list
Libmesh-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libmesh-users