Changeset 202 in PSPA


Ignore:
Timestamp:
Dec 18, 2012, 5:15:35 PM (12 years ago)
Author:
lemeur
Message:

bend pour parmela

Location:
Interface_Web/trunk/pspaWT
Files:
12 edited

Legend:

Unmodified
Added
Removed
  • Interface_Web/trunk/pspaWT/include/GWt_bend.h

    r179 r202  
    1313  WLineEdit* beta1Edit_; // deg.
    1414  WLineEdit* beta2Edit_; // deg.
     15  WLineEdit* momentumEdit_; // MeV/c
    1516
    1617  GWt_bend() {;}
  • Interface_Web/trunk/pspaWT/include/elementBend.h

    r84 r202  
    2121  double beta1_; // deg.
    2222  double beta2_; // deg.
     23  double momentum_; // MeV/c
    2324
    2425  double angleDegDef_; // deg.
     
    2627  double beta1Def_; // deg.
    2728  double beta2Def_; // deg.
     29  double momentumDef_; // MeV/c
    2830
    2931
     
    4648  virtual string* getParametersString() const;
    4749
    48 virtual  string parmelaOutputFlow() const
    49   {
    50     ostringstream sortie;
    51     cout << " BEND sortie parmela non progerammee " << endl;
    52     return sortie.str();
    53   }
     50  virtual  string parmelaOutputFlow() const;
    5451
    5552 virtual string transportOutputFlow() const;
  • Interface_Web/trunk/pspaWT/src/GWt_beam.cc

    r185 r202  
    11#include "GWt_beam.h"
     2#include "mixedTools.h"
    23
    34#include <Wt/WText>
     
    5758void GWt_beam::dialogDone()
    5859{
    59   string envoi[8];
    60   envoi[0] = string("7");
    61   envoi[1] = xEdit_->text().toUTF8();
    62   envoi[2] = xpEdit_->text().toUTF8();
    63   envoi[3] = yEdit_->text().toUTF8();
    64   envoi[4] = ypEdit_->text().toUTF8();
    65   envoi[5] = dlEdit_->text().toUTF8();
    66   envoi[6] = delEdit_->text().toUTF8();
    67   envoi[7] = p0Edit_->text().toUTF8();
    68 
     60  unsigned nbParam = element_->getNbParams();
     61  string* envoi = new string[nbParam+1];
     62  int compteur = -1;
     63  envoi[++compteur] = mixedTools::intToString(nbParam);
     64  envoi[++compteur] = xEdit_->text().toUTF8();
     65  envoi[++compteur] = xpEdit_->text().toUTF8();
     66  envoi[++compteur] = yEdit_->text().toUTF8();
     67  envoi[++compteur] = ypEdit_->text().toUTF8();
     68  envoi[++compteur] = dlEdit_->text().toUTF8();
     69  envoi[++compteur] = delEdit_->text().toUTF8();
     70  envoi[++compteur] = p0Edit_->text().toUTF8();
     71  if ( compteur !=  (int)nbParam ) {
     72    cerr << " GWt_beam::dialogDone() pb nb de parametres, compteur = " << compteur << " nbParam= " << nbParam << endl;
     73    return;
     74  }
    6975  element_->setParametersString(envoi);
     76  delete [] envoi;
    7077}
    7178
  • Interface_Web/trunk/pspaWT/src/GWt_bend.cc

    r153 r202  
    11
    22#include "GWt_bend.h"
     3#include "mixedTools.h"
    34
    45#include <Wt/WText>
     
    3132  new WBreak(dialog_->contents());
    3233
     34  new WText("momentum (MeV/c) : ",dialog_->contents());
     35  momentumEdit_ = new WLineEdit(param[6].c_str(), dialog_->contents());
     36  new WBreak(dialog_->contents());
     37
    3338  new WText("length (cm) : ",dialog_->contents());
    3439  xlengthEdit_ = new WLineEdit("0", dialog_->contents());
     
    5459void GWt_bend::dialogDone()
    5560{
    56   string envoi[6];
    57   envoi[0] = string("5");
    58   envoi[1] = angleEdit_->text().toUTF8();
    59   envoi[2] = radiusEdit_->text().toUTF8();
    60   envoi[3] = apertureEdit_->text().toUTF8();
    61   envoi[4] = beta1Edit_->text().toUTF8();
    62   envoi[5] = beta2Edit_->text().toUTF8();
     61  unsigned nbParam = element_->getNbParams();
     62  string* envoi = new string[nbParam+1];
     63  int compteur = -1;
     64  envoi[++compteur] = string(mixedTools::intToString(nbParam) );
     65  envoi[++compteur] = angleEdit_->text().toUTF8();
     66  envoi[++compteur] = radiusEdit_->text().toUTF8();
     67  envoi[++compteur] = apertureEdit_->text().toUTF8();
     68  envoi[++compteur] = beta1Edit_->text().toUTF8();
     69  envoi[++compteur] = beta2Edit_->text().toUTF8();
     70  envoi[++compteur] = momentumEdit_->text().toUTF8();
     71  if ( compteur !=  (int)nbParam ) {
     72    cerr << " GWt_bend::dialogDone() pb nb de parametres, compteur = " << compteur << " nbParam= " << nbParam << endl;
     73    return;
     74  }
    6375  element_->setParametersString(envoi);
     76  delete [] envoi;
    6477}
  • Interface_Web/trunk/pspaWT/src/GWt_cell.cc

    r153 r202  
    11
    22#include "GWt_cell.h"
     3#include "mixedTools.h"
    34
    45#include <Wt/WText>
     
    7879void GWt_cell::dialogDone()
    7980{
    80   string envoi[10];
    81   envoi[0] = string("9");
    82   envoi[1] = lenghtElemEdit_->text().toUTF8();
    83   envoi[2] = apertureEdit_->text().toUTF8();
    84   envoi[3] = initialPhaseEdit_->text().toUTF8();
    85   envoi[4] =  phaseStepMaxEdit_->text().toUTF8();
    86   envoi[5] =  acceleratingFieldEdit_->text().toUTF8();
    87   envoi[6] = acceleratingShapeFileEdit_->text().toUTF8();
    88   envoi[7] = focusingMagFileEdit_->text().toUTF8();
    89   envoi[8] = offsetMagEdit_->text().toUTF8();
    90   envoi[9] = scaleFactorEdit_->text().toUTF8();
     81  unsigned nbParam = element_->getNbParams();
     82  string* envoi = new string[nbParam+1];
     83  int compteur = -1;
    9184
     85  envoi[++compteur] = mixedTools::intToString(nbParam);
     86  envoi[++compteur] = lenghtElemEdit_->text().toUTF8();
     87  envoi[++compteur] = apertureEdit_->text().toUTF8();
     88  envoi[++compteur] = initialPhaseEdit_->text().toUTF8();
     89  envoi[++compteur] =  phaseStepMaxEdit_->text().toUTF8();
     90  envoi[++compteur] =  acceleratingFieldEdit_->text().toUTF8();
     91  envoi[++compteur] = acceleratingShapeFileEdit_->text().toUTF8();
     92  envoi[++compteur] = focusingMagFileEdit_->text().toUTF8();
     93  envoi[++compteur] = offsetMagEdit_->text().toUTF8();
     94  envoi[++compteur] = scaleFactorEdit_->text().toUTF8();
     95  if ( compteur !=  (int)nbParam ) {
     96    cerr << " GWt_cell::dialogDone() pb nb de parametres, compteur = " << compteur << " nbParam= " << nbParam << endl;
     97    return;
     98  }
    9299  element_->setParametersString(envoi);
     100  delete [] envoi;
    93101}
  • Interface_Web/trunk/pspaWT/src/GWt_drift.cc

    r153 r202  
    11
    22#include "GWt_drift.h"
     3#include "mixedTools.h"
    34
    45#include <Wt/WText>
     
    3334void GWt_drift::dialogDone()
    3435{
    35   string envoi[3];
    36   envoi[0] = string("2");
    37   envoi[1] = xlengthEdit_->text().toUTF8();
    38   envoi[2] = apertureEdit_->text().toUTF8();
     36  unsigned nbParam = element_->getNbParams();
     37  string* envoi = new string[nbParam+1];
     38  int compteur = -1;
     39  envoi[++compteur] = mixedTools::intToString(nbParam);
     40  envoi[++compteur] = xlengthEdit_->text().toUTF8();
     41  envoi[++compteur] = apertureEdit_->text().toUTF8();
     42  if ( compteur !=  (int)nbParam ) {
     43    cerr << " GWt_drift::dialogDone() pb nb de parametres, compteur = " << compteur << " nbParam= " << nbParam << endl;
     44    return;
     45  }
    3946  element_->setParametersString(envoi);
     47  delete [] envoi;
    4048}
  • Interface_Web/trunk/pspaWT/src/GWt_pspaApplication.cc

    r201 r202  
    461461{
    462462  if ( code != Wt::WDialog::Accepted ) { addConsoleMessage(" pas de sauvegarde"); return;}
    463   else { addConsoleMessage("sauvegarde sur repertoire " + WORKINGAREA);}
     463  else { addConsoleMessage("sauvegarde sur repertoire : " + WORKINGAREA);}
    464464  nameOfCase_ = saveNameEdit_->text().toUTF8();
    465465  cout << " PspaApplication::dialogSaveDone() nameOfCase_= " << nameOfCase_ << endl;
  • Interface_Web/trunk/pspaWT/src/GWt_rfgun.cc

    r156 r202  
    11#include "GWt_rfgun.h"
     2#include "mixedTools.h"
    23
    34#include <Wt/WText>
     
    5354void GWt_rfgun::dialogDone()
    5455{
    55   string envoi[7];
    56   envoi[0] = string("6");
    57   envoi[1] = nmacropEdit_->text().toUTF8();
    58   envoi[2] = sigma_tEdit_->text().toUTF8();
    59   envoi[3] = sigma_rEdit_->text().toUTF8();
    60   envoi[4] = E_cinEdit_->text().toUTF8();
    61   envoi[5] = sigma_EEdit_->text().toUTF8();
    62   envoi[6] = nb_true_particlesEdit_->text().toUTF8();
    63 
     56  unsigned nbParam = element_->getNbParams();
     57  string* envoi = new string[nbParam+1];
     58  int compteur = -1;
     59  envoi[++compteur] = mixedTools::intToString(nbParam);
     60  envoi[++compteur] = nmacropEdit_->text().toUTF8();
     61  envoi[++compteur] = sigma_tEdit_->text().toUTF8();
     62  envoi[++compteur] = sigma_rEdit_->text().toUTF8();
     63  envoi[++compteur] = E_cinEdit_->text().toUTF8();
     64  envoi[++compteur] = sigma_EEdit_->text().toUTF8();
     65  envoi[++compteur] = nb_true_particlesEdit_->text().toUTF8();
     66  if ( compteur !=  (int)nbParam ) {
     67    cerr << " GWt_rfgun::dialogDone() pb nb de parametres, compteur = " << compteur << " nbParam= " << nbParam << endl;
     68    return;
     69  }
    6470  element_->setParametersString(envoi);
     71  delete [] envoi;
    6572}
  • Interface_Web/trunk/pspaWT/src/GWt_soleno.cc

    r153 r202  
    11#include "GWt_soleno.h"
     2#include "mixedTools.h"
    23
    34#include <Wt/WText>
     
    4041void GWt_soleno::dialogDone()
    4142{
    42   string envoi[4];
    43   envoi[0] = string("3");
    44   envoi[1] = xlengthEdit_->text().toUTF8();
    45   envoi[2] = apertureEdit_->text().toUTF8();
    46   envoi[3] = B0Edit_->text().toUTF8();
    47 
     43  unsigned nbParam = element_->getNbParams();
     44  string* envoi = new string[nbParam+1];
     45  int compteur = -1;
     46  envoi[++compteur] = mixedTools::intToString(nbParam);
     47  envoi[++compteur] = xlengthEdit_->text().toUTF8();
     48  envoi[++compteur] = apertureEdit_->text().toUTF8();
     49  envoi[++compteur] = B0Edit_->text().toUTF8();
     50  if ( compteur !=  (int)nbParam ) {
     51    cerr << " GWt_bend::dialogDone() pb nb de parametres, compteur = " << compteur << " nbParam= " << nbParam << endl;
     52    return;
     53  }
    4854  element_->setParametersString(envoi);
     55  delete [] envoi;
    4956}
  • Interface_Web/trunk/pspaWT/src/elementBend.cc

    r181 r202  
    1111  parametersString_ = new string[nbParam_+1];
    1212  transportOk_ = true;
    13   //  transportElementName_ = "*SBEND*";
     13  parmelaOk_ = true;
    1414}
    1515
     
    2020    beta1Def_ = 0.0;
    2121    beta2Def_ = 0.0;
     22    momentumDef_ = 0.0;
    2223  }
    2324
     
    2829    beta1_ = beta1Def_;
    2930    beta2_ = beta2Def_;
     31    momentum_ = momentumDef_;
    3032  }
    3133
     
    3840   parametersString_[4] = mixedTools::doubleToString(beta1_);
    3941   parametersString_[5] = mixedTools::doubleToString(beta2_);
     42   parametersString_[6] = mixedTools::doubleToString(momentum_);
    4043   return parametersString_;
    4144 }
     
    5861    if ( nbparam != nbParam_ )
    5962        {
    60           cerr << "  elementBend::setParametersString parameters do not match for a BEND";
     63          cerr << "  elementBend::setParametersString parameters do not match for a BEND" << endl;
    6164          return;
    6265        }
     
    6669    beta1_ = atof(param[4].c_str());
    6770    beta2_ = atof(param[5].c_str());
     71    momentum_ = atof(param[6].c_str());
    6872    // calcul de la longueur : rayon en m ; longueur en cm
    6973    lenghtElem_ = getLenghtOfElement();
    7074    cout << " elementBend::setParametersString calcule longueur = " << lenghtElem_ << endl;
    7175 }
     76
     77string elementBend::parmelaOutputFlow() const
     78  {
     79    ostringstream sortie;
     80   
     81    sortie << "BEND /l=" << lenghtElem_ << "  / aper=" << aperture_ << "  / iout=1 / wr=" << momentum_ << " /alpha=" << angleDeg_ << " / beta1=" << beta1_;
     82    sortie << " / beta2=" << beta1_;
     83    return sortie.str();
     84  }
     85
    7286
    7387string elementBend::transportOutputFlow() const
     
    7892  }
    7993
     94
    8095string elementBend::FileOutputFlow() const
    8196  {
     
    85100    sortie  << label_ << endl;
    86101    sortie << angleDeg_ << "  " << radius_ << " " <<  aperture_  << endl;
    87     sortie << beta1_ << "  " << beta2_ << endl;
     102    sortie << beta1_ << "  " << beta2_ << " " << momentum_ << endl;
    88103    return sortie.str();
    89104  }
     
    93108  ifs >> label_;
    94109  ifs >> angleDeg_ >> radius_ >>  aperture_;
    95   ifs >> beta1_ >> beta2_;
     110  ifs >> beta1_ >> beta2_ >> momentum_;
    96111    lenghtElem_ = getLenghtOfElement();
    97112    cout << " elementBend::FileInput calcule longueur = " << lenghtElem_ << endl;
  • Interface_Web/trunk/pspaWT/src/nomdElements.cc

    r181 r202  
    7474  case drift :  return 2;
    7575  case cell :  return 9;
    76   case bend :  return 5;
     76  case bend :  return 6;
    7777  case soleno :   return 3;
    7878  default : return 0;
  • Interface_Web/trunk/pspaWT/workingArea/pspa.save

    r181 r202  
    2626bend01
    272760  1 1e+06
    28 18.24  18.24
     2818.24  18.24 4.62
    2929drift
    3030drift03
Note: See TracChangeset for help on using the changeset viewer.