source: PSPA/Interface_Web/branches/insertionsElements/src/elementBeam.cc @ 432

Last change on this file since 432 was 185, checked in by lemeur, 12 years ago

debuggage elementBeam

File size: 3.1 KB
Line 
1#include "elementBeam.h"
2#include "transportMoments.h"
3#include "mixedTools.h"
4
5
6
7elementBeam::elementBeam() :  abstractElement() {
8  setDefaultValues();
9  setDefaults();
10  elementName_ = nomdElements("beam");
11  nbParam_ = elementName_.getElementNbParameters();
12  parametersString_ = new string[nbParam_+1];
13  transportOk_ = true;
14}
15
16elementBeam::~elementBeam() {;}
17
18void elementBeam::setDefaultValues() {
19  xDef_ = 0.0;
20  xpDef_ = 0.0;
21  yDef_ = 0.0;
22  ypDef_ = 0.0;
23  dlDef_ = 0.0;
24  delDef_ = 0.0;
25  p0Def_ = 0.0;
26  }
27
28  void elementBeam::setDefaults() {
29    x_ = xDef_;
30    xp_ = xpDef_;
31    y_ = yDef_;
32    yp_ = ypDef_;
33    dl_ = dlDef_;
34    del_ = delDef_;
35    p0_ = p0Def_;
36  }
37
38string* elementBeam::getParametersString() const {
39  parametersString_[0] = mixedTools::intToString(nbParam_);
40  parametersString_[1] = mixedTools::doubleToString(x_);
41  parametersString_[2] = mixedTools::doubleToString(xp_);
42  parametersString_[3] = mixedTools::doubleToString(y_);
43  parametersString_[4] = mixedTools::doubleToString(yp_);
44  parametersString_[5] = mixedTools::doubleToString(dl_);
45  parametersString_[6] = mixedTools::doubleToString(del_);
46  parametersString_[7] = mixedTools::doubleToString(p0_);
47  cout << " elementBeam::getParametersString() on renvoie : " << parametersString_[7] << endl;
48  return parametersString_;
49}
50
51void elementBeam::setParametersString(string* param) {
52  if ( param == NULL )
53    {
54      cerr << "  elementBeam::setParametersString parameters empty parameter set";
55      return;
56    }
57  int nbparam = atoi(param[0].c_str());
58  if ( nbparam != nbParam_ ) 
59    {
60      cerr << "  elementBeam::setParametersString parameters do not match for a BEAM";
61      return;
62    }
63
64  x_ = atof(param[1].c_str());
65  xp_ = atof(param[2].c_str());
66  y_ = atof(param[3].c_str());
67  yp_ = atof(param[4].c_str());
68  dl_ = atof(param[5].c_str());
69  del_ = atof(param[6].c_str());
70  p0_ = atof(param[7].c_str());
71  cout << " elementBeam::setParametersString p0 vaut " << p0_ << endl;
72}
73
74 string elementBeam::parmelaOutputFlow() const
75  {
76    ostringstream sortie;
77    cout << " BEAM sortie parmela non programmee " << endl;
78    return sortie.str();
79  }
80
81string elementBeam::transportOutputFlow() const {
82  ostringstream sortie;
83  transportMoments moments(x_, xp_, y_, yp_, dl_, del_);
84  cout << " elementBeam::transportOutputFlow(), p0 = " << p0_ << endl;
85  sortie << label_ << ":" << moments.writeToTransportInput(p0_);
86  return sortie.str();
87}
88
89string elementBeam::FileOutputFlow() const {
90    ostringstream sortie;
91    // sortie << elementName_.getElementType() << endl;
92    sortie << elementName_.getElementLabel() << endl;
93    sortie  << label_ << endl;
94    sortie << x_ << "  " << xp_ << " " <<  y_  << " " <<  yp_  << endl;
95    sortie << dl_ << "  " << del_ << " " <<  p0_  << endl;
96  cout << " elementBeam::FileOutputFlow, p0 = " << p0_ << endl;
97    return sortie.str();
98  }
99
100void elementBeam::elementBeam::FileInput(ifstream& ifs) {
101  ifs >> label_;
102  ifs >> x_ >> xp_ >>  y_ >> yp_;
103  ifs >> dl_ >> del_ >> p0_;
104  cout << " elementBeam::FileFileInput, p0 = " << p0_ << endl;
105  lenghtElem_ = getLenghtOfElement();
106    cout << " elementBeam::FileInput calcule longueur = " << lenghtElem_ << endl;
107}
Note: See TracBrowser for help on using the repository browser.