dynLattice
Loading...
Searching...
No Matches
PBCGroupOutputModule.h
Go to the documentation of this file.
1
10#pragma once
11
12#include "GroupOutputModule.h"
13#include "PBCGroupInputModule.h"
14
15#include <jem/base/Slice.h>
16#include <jem/util/ArrayBuffer.h>
17#include <jive/app/Names.h>
18#include <jive/app/SampleModule.h>
19
20using jem::SliceTo;
21using jem::util::ArrayBuffer;
22using jive::app::PropNames;
23using jive::app::SampleModule;
24
30{
31public:
37
40 static const char *TYPE_NAME;
41 static const char *CHILD_NAME;
43
46 explicit PBCGroupOutputModule(const String &name = "pbcGroupOutput");
47
53 virtual Status init(const Properties &conf, const Properties &props,
54 const Properties &globdat) override;
55
59 virtual Status run(const Properties &globdat) override;
60
63 virtual void shutdown(const Properties &globdat) override;
64
71 static Ref<Module> makeNew(const String &name, const Properties &conf,
72 const Properties &props, const Properties &globdat);
73
75 static void declare();
76
83 static StringVector getDataSets(const idx_t dim,
84 const bool strains = false,
85 const bool stresses = false,
86 const StringVector &dofNames = {
87 "dx", "dy", "dz"});
88
89protected:
93 String getHeader_(String existing) const;
94
98 StringVector getDataSets_(StringVector existing) const;
99
100protected:
103 Ref<SampleModule> child_;
105};
Module for extracting and storing group-based output data.
Module for generating periodic boundary condition node groups.
Module for extracting and storing group-based output data.
Definition GroupOutputModule.h:69
Specialized output module for periodic boundary condition analysis.
Definition PBCGroupOutputModule.h:30
static const char * TYPE_NAME
Module type name.
Definition PBCGroupOutputModule.h:40
virtual Status init(const Properties &conf, const Properties &props, const Properties &globdat) override
Initialize PBC output module.
Definition PBCGroupOutputModule.cpp:22
static Ref< Module > makeNew(const String &name, const Properties &conf, const Properties &props, const Properties &globdat)
Factory method for creating new instances.
Definition PBCGroupOutputModule.cpp:188
String getHeader_(String existing) const
Generate CSV header string.
Definition PBCGroupOutputModule.cpp:84
GroupOutputModule Super
Base class type alias.
Definition PBCGroupOutputModule.h:35
StringVector getDataSets_(StringVector existing) const
Generate data set expressions.
Definition PBCGroupOutputModule.cpp:108
static StringVector getDataSets(const idx_t dim, const bool strains=false, const bool stresses=false, const StringVector &dofNames={ "dx", "dy", "dz"})
Generate strain/stress data set expressions.
Definition PBCGroupOutputModule.cpp:128
PBCGroupOutputModule Self
Self type alias.
Definition PBCGroupOutputModule.h:34
Ref< SampleModule > child_
Child sampling module for data output.
Definition PBCGroupOutputModule.h:103
static const char * CHILD_NAME
Child sampling module name.
Definition PBCGroupOutputModule.h:41
virtual void shutdown(const Properties &globdat) override
Shutdown and finalize output.
Definition PBCGroupOutputModule.cpp:78
static void declare()
Register module type with factory.
Definition PBCGroupOutputModule.cpp:200
virtual Status run(const Properties &globdat) override
Run PBC output extraction.
Definition PBCGroupOutputModule.cpp:69