29#ifndef OOMPH_LINE_VISUALISER_HEADER
30#define OOMPH_LINE_VISUALISER_HEADER
34#include <oomph-lib-config.h>
62 const double& max_search_radius =
DBL_MAX)
64 Comm_pt(mesh_pt->communicator_pt())
77 const double&
scale = 1.0)
94 const double& max_search_radius,
96 const double&
scale = 1.0)
98 Comm_pt(mesh_pt->communicator_pt())
118 unsigned n = data[
i].
size();
121 for (
unsigned j = 0;
j <
n;
j++)
211 for (
unsigned j = 0;
j <
ndata;
j++)
406 for (
unsigned j = 0;
j < dim;
j++)
448 for (
unsigned j = 0;
j <
ndata;
j++)
611 std::ostringstream error_message;
612 error_message <<
"Cannot open file " <<
file_name <<
"\n";
619 std::ostringstream error_message;
620 error_message <<
"Cannot open file " <<
file_name <<
"\n";
647 for (
unsigned i = 0;
i < 3;
i++)
688 mesh_geom_tmp.sample_point_container_pt()->max_search_radius() =
727 oomph_info <<
"Number of points not found locally: "
794 oomph_info <<
"Number of plot points not found (with max search radius="
796 <<
"\nTotal time for LineVisualiser setup [sec]: "
812 for (
unsigned j = 0;
j < dim;
j++)
A general Finite Element class.
double size() const
Calculate the size of the element (length, area, volume,...) in Eulerian computational coordinates....
void locate_zeta(const Vector< double > &zeta, GeomObject *&geom_object_pt, Vector< double > &s, const bool &use_coordinate_as_initial_guess=false)
For a given value of zeta, the "global" intrinsic coordinate of a mesh of FiniteElements represented ...
virtual double interpolated_x(const Vector< double > &s, const unsigned &i) const
Return FE interpolated coordinate x[i] at local coordinate s.
virtual void point_output_data(const Vector< double > &s, Vector< double > &data)
Virtual function to write the double precision numbers that appear in a single line of output into th...
A geometric object is an object that provides a parametrised description of its shape via the functio...
Class to aid visualisation of the values on a set of points. NOTE: in a distributed problem,...
OomphCommunicator * Comm_pt
Pointer to communicator – allows us to collect data on processor 0 if the mesh is distributed.
Vector< std::pair< FiniteElement *, Vector< double > > > Plot_point
Vector of pairs containing points to finite elements and local coordinates.
LineVisualiser(Mesh *mesh_pt, const std::string file_name, const double &scale=1.0)
Constructor reading centerline file.
LineVisualiser(Mesh *mesh_pt, const Vector< Vector< double > > &coord_vec, const double &max_search_radius=DBL_MAX)
Constructor: Pass pointer to mesh and coordinates of desired plot points: coord_vec[j][i] is the i-th...
unsigned Nplot_points
Number of plot points.
void update_plot_points_coordinates(Vector< Vector< double > > &coord_vec)
Update plot points coordinates (in preparation of remesh, say).
void setup(Mesh *mesh_pt, const Vector< Vector< double > > &coord_vec)
Helper function to setup the output structures.
void get_local_plot_points_coordinates(Vector< Vector< double > > &data)
LineVisualiser(Mesh *mesh_pt, const double &max_search_radius, const std::string file_name, const double &scale=1.0)
Constructor reading centerline file.
double Max_search_radius
Max radius beyond which we stop searching the bin. Initialised to DBL_MAX so keep going until the poi...
void output(std::ostream &outfile)
Output function: output each plot point. NOTE: in a distributed problem, output is only done on proce...
void setup_from_file(Mesh *mesh_pt, const std::string file_name, const double &scale)
Helper function to setup from file.
void get_output_data(Vector< Vector< double > > &data)
Output data function: store data associated with each plot point in data array.
This class provides a GeomObject representation of a given finite element mesh. The Lagrangian coordi...
An oomph-lib wrapper to the MPI_Comm communicator object. Just contains an MPI_Comm object (which is ...
An OomphLibError object which should be thrown when an run-time error is encountered....
TAdvectionDiffusionReactionElement<NREAGENT,DIM,NNODE_1D> elements are isoparametric triangular DIM-d...
A slight extension to the standard template vector class so that we can include "graceful" array rang...
double timer()
returns the time in seconds after some point in past
DRAIG: Change all instances of (SPATIAL_DIM) to (DIM-1).
OomphInfo oomph_info
Single (global) instantiation of the OomphInfo object – this is used throughout the library as a "rep...