Rheolef  7.2
an efficient C++ finite element environment
 
Loading...
Searching...
No Matches
field_seq_visu_gnuplot_internal.h
Go to the documentation of this file.
1#ifndef _RHEOLEF_SEQ_FIELD_VISU_GNUPLOT_INTERNAL_H
2#define _RHEOLEF_SEQ_FIELD_VISU_GNUPLOT_INTERNAL_H
23//
24// gnuplot geo visualisation
25//
26// author: Pierre.Saramito@imag.fr
27//
28// date: 16 sept 2011
29//
30#include "rheolef/field.h"
31#include "rheolef/fem_on_pointset.h"
32
33namespace rheolef {
34
35template <class T>
36odiststream& visu_gnuplot (odiststream& ops, const geo_basic<T,sequential>& omega);
37
38// ----------------------------------------------------------------------------
39// bounds: for curved geometries, need to commpute it on the fly
40// ----------------------------------------------------------------------------
41template <class T>
42struct bound_type {
43// data:
46// cstor:
47 bound_type() : xmin(), xmax(), umin(), umax() {}
48// modifier:
49 void update (const point_basic<T>& x, const T& u) {
50 for (size_t i = 0; i < 3; i++) {
51 xmin[i] = std::min(xmin[i], x[i]);
52 xmax[i] = std::max(xmax[i], x[i]);
53 }
54 umin = std::min(umin, u);
55 umax = std::max(umax, u);
56 }
57};
58template<class T>
59void
60put (
61 std::ostream& gdat,
62 const geo_basic<T,sequential>& omega,
63 const geo_element& K,
64 const field_basic<T,sequential>& uh,
65 const fem_on_pointset<T>& fops,
66 size_t my_order,
67 bound_type<T>& bbox);
68
69} // namespace rheolef
70#endif // _RHEOLEF_SEQ_FIELD_VISU_GNUPLOT_INTERNAL_H
Expr1::float_type T
Definition field_expr.h:230
This file is part of Rheolef.
void put(std::ostream &out, std::string name, const tiny_matrix< T > &a)
Definition tiny_lu.h:155
odiststream & visu_gnuplot(odiststream &, const field_basic< T, sequential > &)
void update(const point_basic< T > &x, const T &u)
Definition leveque.h:25