ReactionProcessor.h 824 Bytes
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
// This file is a part of nla3d project. For information about authors and
// licensing go to project's repository on github:
// https://github.com/dmitryikh/nla3d 

#pragma once
#include "sys.h"
#include "PostProcessor.h"
#include "FEStorage.h"

namespace nla3d {

class ReactionProcessor : public PostProcessor {
public:
	ReactionProcessor(FEStorage *st);
	ReactionProcessor(FEStorage *st, std::string _filename);
	virtual ~ReactionProcessor() { };

	virtual void pre ();
	virtual void process (uint16 curLoadstep);
	virtual void post (uint16 curLoadstep);

  std::vector<double> getReactions (Dof::dofType dof);
	
	std::vector<uint32> nodes;
	std::vector<Dof::dofType> dofs;
protected:
  std::string filename;
	std::vector<std::vector<double> > sumOfDofsReactions;
};

} // namespace nla3d