std::cout << "Solution at (0.2,0.2): "<< VectorTools::point_value(dof_handler, solution,Point<2>(0.2, 0.2))<< std::endl;
I do not have any problems compiling however, an error occurs when running:
The violated condition was: dof.get_fe(0).n_components() == 1
What is the proper way to call the real and imaginary parts of the solution at a particular point here?
Thank you very much!
H.
--
The deal.II project is located at http://www.dealii.org/
For mailing list/forum options, see https://groups.google.com/d/forum/dealii?hl=en
---
You received this message because you are subscribed to the Google Groups "deal.II User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to dealii+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/dealii/54a2d44e-194a-43c0-aa7f-9fddd5bd0dean%40googlegroups.com.
Vector<double> vecSol;
std::cout << "Solution at (0.2,0.2): "<< VectorTools::point_value(dof_handler, solution,Point<2>(0.2, 0.2),vecSol)<< std::endl;
I still get some errors. Is there not any way to get for example the real part of solution easily and use it directly on the point_value as in step-3?
Thank you
H
You received this message because you are subscribed to a topic in the Google Groups "deal.II User Group" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/dealii/Ru1_uMbix30/unsubscribe.
To unsubscribe from this group and all its topics, send an email to dealii+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/dealii/CAOYDWb%2BR0bRTVxB-F22Hwk_ZexN4%3DVwCbZ7ZKqs3JjEaHFhncA%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/dealii/CAB%3DnHhZrnXUeYt5FrKa66oTwoV8WJ8b%3DFqLFJ9pfP%3DUHRTyV%2BQ%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/dealii/5DDE5428-30E3-48CC-9924-333605B3DAAA%40gmail.com.
Vector<double> vecSol (fe.n_components());
VectorTools::point_value(dof_handler, solution,Point<2>(0.2, 0.2),vecSol);
What is the easiest way to do that? Is it possible to check if the point is inside the locally_relevant_solution? Or would be more appropriate to create a copy of the solution in a global vector and get the point from there?
Thank you
H
Dear Hermes,
Did you try VectorTools::point_values, https://www.dealii.org/current/doxygen/deal.II/namespaceVectorTools.html#a1ad6eceb6cbeaa505baf7f938289bbde ?
As an alternative, you can also check if the point is in the
locally owned cell of the respective cell, and run the evaluation
only on that MPI rank. You can then use an MPI collective, like
MPI_Bcast or deal.II's version Utilities::MPI::broadcast, to get
the solution to all MPI ranks (typically with another collective
to make all ranks agree on who sends the information).
Best,
Martin
This is a variant that allows the evaluation even on remote
processes.
To view this discussion on the web visit https://groups.google.com/d/msgid/dealii/CAB%3DnHhbh-ir_njBtYjvVafJ-Hyuhfwck5XK1yeHaxY%2BrNya03g%40mail.gmail.com.
std::vector<double> pointSol;
Mapping<dim> mapping;
dealii::Utilities::MPI::RemotePointEvaluation<dim> remotePoint;
remotePoint.reinit();
pointSol = VectorTools::point_values(mapping, dof_handler,locally_relevant_solution,Point<2>(0.2, 0.2),remotePoint);
Thank you
H
To view this discussion on the web visit https://groups.google.com/d/msgid/dealii/031efb5b-8628-4baa-da19-8869ced63165%40gmail.com.
const MappingQ1<dim> mapping;
Utilities::MPI::RemotePointEvaluation<dim> evaluation_cache;
VectorTools::point_values<dim>(mapping, dof_handler, locally_relevant_solution, Point<2>(0.2, 0.2), evaluation_cache);
I get the following error:
error: no matching function for call to 'point_values'
VectorTools::point_values<dim>(mapping, dof_handler, locally_relevant_solution, Point<2>(0.2, 0.2), evaluation_cache);
I checked the parameters and seems to be ok. What can be producing the error?
Thank you again
H
To view this discussion on the web visit https://groups.google.com/d/msgid/dealii/8ccce12d-3753-49ec-a4a7-6c8726ee4336n%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/dealii/c0ffaf7d-953e-4a4a-81eb-7a4d3eec0bc0n%40googlegroups.com.
--
The deal.II project is located at http://www.dealii.org/
For mailing list/forum options, see https://groups.google.com/d/forum/dealii?hl=en
---
You received this message because you are subscribed to a topic in the Google Groups "deal.II User Group" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/dealii/Ru1_uMbix30/unsubscribe.
To unsubscribe from this group and all its topics, send an email to dealii+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/dealii/9f61547f-7058-08e8-7511-81240ba06b31%40colostate.edu.