Platon Technologies
not logged in Login Registration
EnglishSlovak
open source software development celebrating 10 years of open source development! Friday, October 16, 2026

Diff for dead/diplomovka/xpdp/src/padjus.c between version 1.1 and 1.2

version 1.1, 2001/09/20 14:12:01 version 1.2, 2002/07/07 21:56:52
Line 24  void adjust(int isp)
Line 24  void adjust(int isp)
         // extern float vnext();          // extern float vnext();
         extern float vnext(int, int);          extern float vnext(int, int);
   
           secountl = secountr = 0;
   
         // INITIALIZE array for computing positions of injected particles          // INITIALIZE array for computing positions of injected particles
         if (init_flag) {          if (init_flag) {
                 secsp = secondary -1;                  secsp = secondary -1;
Line 77  void adjust(int isp)
Line 79  void adjust(int isp)
                                 //********* LHS wall diagnostics   *************** {{{                                  //********* LHS wall diagnostics   *************** {{{
                                 if (theRunWithXFlag) {                                  if (theRunWithXFlag) {
                                         dum = (vx[isp][i]*vx[isp][i] + vy[isp][i]*vy[isp][i]                                          dum = (vx[isp][i]*vx[isp][i] + vy[isp][i]*vy[isp][i]
                                                                                         +vz[isp][i]*vz[isp][i] - emin[isp])/de[isp];                                                          +vz[isp][i]*vz[isp][i] - emin[isp])/de[isp];
                                         s = dum;                                          s = dum;
                                         if (s<nbin[isp]-1 && dum>=0) {                                          if (s<nbin[isp]-1 && dum>=0) {
                                                 dum -= s;                                                  dum -= s;
Line 86  void adjust(int isp)
Line 88  void adjust(int isp)
                                         }                                          }
   
                                         dum = -atan(sqrt(vy[isp][i]*vy[isp][i]+vz[isp][i]*vz[isp][i])                                          dum = -atan(sqrt(vy[isp][i]*vy[isp][i]+vz[isp][i]*vz[isp][i])
                                                                                         /vx[isp][i])/dtheta[isp];                                                          /vx[isp][i])/dtheta[isp];
                                         s = dum;                                          s = dum;
                                         dum -= s;                                          dum -= s;
                                         ftheta[isp][s]  += (!s) ? 2*(1-dum) : 1-dum;                                          ftheta[isp][s]  += (!s) ? 2*(1-dum) : 1-dum;
Line 110  void adjust(int isp)
Line 112  void adjust(int isp)
                                 if (theRunWithXFlag) {                                  if (theRunWithXFlag) {
                                         if (xs_mid[isp] <= x[isp][i] && x[isp][i] <= xf_mid[isp]) {                                          if (xs_mid[isp] <= x[isp][i] && x[isp][i] <= xf_mid[isp]) {
                                                 s = (vx[isp][i]*vx[isp][i]                                                  s = (vx[isp][i]*vx[isp][i]
                                                                                                 + vy[isp][i] * vy[isp][i]                                                                  + vy[isp][i] * vy[isp][i]
                                                                                                 + vz[isp][i] * vz[isp][i]                                                                  + vz[isp][i] * vz[isp][i]
                                                                                                 - emin_mid[isp]) / de_mid[isp];                                                                  - emin_mid[isp]) / de_mid[isp];
   
                                                 if (0 <= s && s< nbin_mid[isp])                                                  if (0 <= s && s< nbin_mid[isp])
                                                         fe_mid[isp][s] += 1;                                                          fe_mid[isp][s] += 1;
Line 271  L11: ddv = ksign*vt[isp][k]/128.;
Line 273  L11: ddv = ksign*vt[isp][k]/128.;
   
          do {           do {
                  df = ddv*(vf + 4.*(vv+ddv)*fdist(vv+ddv,k,isp) +                   df = ddv*(vf + 4.*(vv+ddv)*fdist(vv+ddv,k,isp) +
                                                                  (vv+ddv+ddv)*fdist(vv+ddv+ddv,k,isp))/3.;                                   (vv+ddv+ddv)*fdist(vv+ddv+ddv,k,isp))/3.;
                  ddv *= 0.5;                   ddv *= 0.5;
          } while (df >= ds);           } while (df >= ds);
          // If integral increases too much, go back w. dv/2 step           // If integral increases too much, go back w. dv/2 step
Line 316  void sterm(int count)
Line 318  void sterm(int count)
   
         for (isp=0; isp<nsp; isp++) {          for (isp=0; isp<nsp; isp++) {
                 if ((np[isp] - count) > maxnp[isp]) {                  if ((np[isp] - count) > maxnp[isp]) {
                         printf("np[isp] initnp[isp][k] maxnp[isp] %d %d %d \n  ",                          for (k=0; k<2; k++) {
                                                                         np[isp], initnp[isp][k], maxnp[isp]);                                  printf("np[isp] initnp[isp][%d] maxnp[isp] %d %d %d \n  ",
                                                   k, np[isp], initnp[isp][k], maxnp[isp]);
                           }
                         puts("source term: too many particles, species ");                          puts("source term: too many particles, species ");
                         putchar(isp+49);                          putchar(isp+49);
                         exit(1);                          exit(1);

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.2

Platon Group <platon@platon.org> http://platon.org/
Copyright © 2002-2006 Platon Group
Site powered by Metafox CMS
Go to Top