Rocstar  1.0
Rocstar multiphysics simulation application
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PointPropagate.h
Go to the documentation of this file.
1 /* *******************************************************************
2  * Rocstar Simulation Suite *
3  * Copyright@2015, Illinois Rocstar LLC. All rights reserved. *
4  * *
5  * Illinois Rocstar LLC *
6  * Champaign, IL *
7  * www.illinoisrocstar.com *
8  * sales@illinoisrocstar.com *
9  * *
10  * License: See LICENSE file in top level of distribution package or *
11  * http://opensource.org/licenses/NCSA *
12  *********************************************************************/
13 /* *******************************************************************
14  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, *
15  * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES *
16  * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND *
17  * NONINFRINGEMENT. IN NO EVENT SHALL THE CONTRIBUTORS OR *
18  * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER *
19  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, *
20  * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE *
21  * USE OR OTHER DEALINGS WITH THE SOFTWARE. *
22  *********************************************************************/
23 // $Id: PointPropagate.h,v 1.4 2008/12/06 08:45:28 mtcampbe Exp $
24 
25 #ifndef _POINT_PROPAGATE_H_
26 #define _POINT_PROPAGATE_H_
27 
28 #include "speeds.h"
29 #include "Element_accessors.h"
30 
32 
34 public:
35  // Propagate the faces of a given window.
36  static void propagate_faces( const std::string &wname, const Speed &s,
37  double t, double dt, const std::string &vname);
38 
39  // Propagate the nodes of a given window.
40  static void propagate_nodes( const std::string &wname, const Speed &s,
41  double t, double dt, const std::string &vname);
42 
43 protected:
44  // Integrate the motion of a given point
45  static Vector_3 time_integrate( const Point_3 &p, const Speed &s,
46  double t, double dt, int order);
47 
48  // Integrate the motion of the Gauss points of a given face
49  static void propagate_gp_of_element(const Point_3 *pnts,
50  COM::Element_node_enumerator &ene,
51  const Speed &s, double t, double dt,
52  Vector_3 *qp_vels);
53 
54 };
55 
57 
58 #endif
59 
60 
61 
62 
63 
64 
#define PROP_END_NAMESPACE
Definition: propbasic.h:29
static void propagate_faces(const std::string &wname, const Speed &s, double t, double dt, const std::string &vname)
#define PROP_BEGIN_NAMESPACE
Definition: propbasic.h:28
double s
Definition: blastest.C:80
Definition: speeds.h:32
static void propagate_gp_of_element(const Point_3 *pnts, COM::Element_node_enumerator &ene, const Speed &s, double t, double dt, Vector_3 *qp_vels)
static void propagate_nodes(const std::string &wname, const Speed &s, double t, double dt, const std::string &vname)
Some basic geometric data types.
Definition: mapbasic.h:54
static Vector_3 time_integrate(const Point_3 &p, const Speed &s, double t, double dt, int order)