New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 774 for trunk/AGRIF/LIB/UtilAgrif.c – NEMO

Ignore:
Timestamp:
2007-12-18T17:45:53+01:00 (16 years ago)
Author:
rblod
Message:

Update Agrif, see ticket:#39

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/AGRIF/LIB/UtilAgrif.c

    r663 r774  
    3131/* knowledge of the CeCILL-C license and that you accept its terms.           */ 
    3232/******************************************************************************/ 
    33 /* version 1.6                                                                */ 
     33/* version 1.7                                                                */ 
    3434/******************************************************************************/ 
    3535#include <stdio.h> 
     
    237237     listnomtmp=(listnom *)malloc(sizeof(listnom)); 
    238238     strcpy(listnomtmp->o_nom,sub); 
     239     Save_Length(sub,23); 
    239240     strcpy(listnomtmp->o_module,mod); 
     241     Save_Length(mod,24); 
    240242     listnomtmp->suiv = NULL; 
    241243     List_SubroutineWhereAgrifUsed  =  listnomtmp; 
     
    252254       listnomtmp=(listnom *)malloc(sizeof(listnom)); 
    253255       strcpy(listnomtmp->o_nom,sub); 
     256       Save_Length(sub,23); 
    254257       strcpy(listnomtmp->o_module,mod); 
     258       Save_Length(mod,24); 
    255259       listnomtmp->suiv = List_SubroutineWhereAgrifUsed; 
    256260       List_SubroutineWhereAgrifUsed  =  listnomtmp; 
     
    280284{ 
    281285  listnom *parcours; 
    282   listusemodule *newmodule; 
    283   int out; 
    284286 
    285287  if ( firstpass == 0 ) 
     
    578580void AgriffunctionModify_0(char *ident,int whichone) 
    579581{ 
    580    char toprint[LONGNOM]; 
     582   char toprint[LONG_C]; 
    581583 
    582584   if ( firstpass == 0 ) 
     
    606608      else if ( whichone == 3 ) /* Agrif_Rhox                                 */ 
    607609      { 
    608          sprintf(toprint,"REAL(Agrif_Curgrid %% spaceref(1))"); 
     610         sprintf(toprint,"REAL("); 
     611         if( retour77 == 0 ) strcat(toprint," & \n"); 
     612         else strcat(toprint,"\n     & "); 
     613         strcat(toprint,"Agrif_Curgrid % spaceref(1))"); 
    609614      } 
    610615      else if ( whichone == 4 ) /* Agrif_Parent_Rhox                          */ 
    611616      { 
    612          sprintf(toprint,"REAL(Agrif_Curgrid %% parent %% spaceref(1))"); 
     617         sprintf(toprint,"REAL("); 
     618         if( retour77 == 0 ) strcat(toprint," & \n"); 
     619         else strcat(toprint,"\n     & "); 
     620         strcat(toprint,"Agrif_Curgrid % parent % spaceref(1))"); 
    613621      } 
    614622      else if ( whichone == 5 ) /* Agrif_Rhox                                 */ 
    615623      { 
    616          sprintf(toprint,"Agrif_Curgrid %% spaceref(1)"); 
     624         sprintf(toprint,"Agrif_Curgrid"); 
     625         if( retour77 == 0 ) strcat(toprint," & \n"); 
     626         else strcat(toprint,"\n     & "); 
     627         strcat(toprint,"% spaceref(1)"); 
    617628      } 
    618629      else if ( whichone == 6 ) /* Agrif_Parent_Rhox                          */ 
    619630      { 
    620          sprintf(toprint,"Agrif_Curgrid %% parent %% spaceref(1)"); 
     631         sprintf(toprint,"Agrif_Curgrid"); 
     632         if( retour77 == 0 ) strcat(toprint," & \n"); 
     633         else strcat(toprint,"\n     & "); 
     634         strcat(toprint,"% parent % spaceref(1)"); 
    621635      } 
    622636      else if ( whichone == 7 ) /* Agrif_Rhoy                                 */ 
    623637      { 
    624          sprintf(toprint,"REAL(Agrif_Curgrid %% spaceref(2))"); 
     638         sprintf(toprint,"REAL(Agrif_Curgrid"); 
     639         if( retour77 == 0 ) strcat(toprint," & \n"); 
     640         else strcat(toprint,"\n     & "); 
     641         strcat(toprint,"% spaceref(2))"); 
    625642      } 
    626643      else if ( whichone == 8 ) /* Agrif_Parent_Rhoy                          */ 
    627644      { 
    628          sprintf(toprint,"REAL(Agrif_Curgrid %% parent %% spaceref(2))"); 
     645         sprintf(toprint,"REAL(Agrif_Curgrid"); 
     646         if( retour77 == 0 ) strcat(toprint," & \n"); 
     647         else strcat(toprint,"\n     & "); 
     648         strcat(toprint,"% parent % spaceref(2))"); 
    629649      } 
    630650      else if ( whichone == 9 ) /* Agrif_Rhoy                                 */ 
    631651      { 
    632          sprintf(toprint,"Agrif_Curgrid %% spaceref(2)"); 
     652         sprintf(toprint,"Agrif_Curgrid"); 
     653         if( retour77 == 0 ) strcat(toprint," & \n"); 
     654         else strcat(toprint,"\n     & "); 
     655         strcat(toprint,"% spaceref(2)"); 
    633656      } 
    634657      else if ( whichone == 10 ) /* Agrif_Parent_Rhoy                         */ 
    635658      { 
    636          sprintf(toprint,"Agrif_Curgrid %% parent %% spaceref(2)"); 
     659         sprintf(toprint,"Agrif_Curgrid"); 
     660         if( retour77 == 0 ) strcat(toprint," & \n"); 
     661         else strcat(toprint,"\n     & "); 
     662         strcat(toprint,"% parent % spaceref(2)"); 
    637663      } 
    638664      else if ( whichone == 11 ) /* Agrif_Rhoz                                */ 
    639665      { 
    640          sprintf(toprint,"REAL(Agrif_Curgrid %% spaceref(3))"); 
     666         sprintf(toprint,"REAL(Agrif_Curgrid"); 
     667         if( retour77 == 0 ) strcat(toprint," & \n"); 
     668         else strcat(toprint,"\n     & "); 
     669         strcat(toprint,"% spaceref(3))"); 
    641670      } 
    642671      else if ( whichone == 12 ) /* Agrif_Parent_Rhoz                         */ 
    643672      { 
    644          sprintf(toprint,"REAL(Agrif_Curgrid %% parent %% spaceref(3))"); 
     673         sprintf(toprint,"REAL(Agrif_Curgrid"); 
     674         if( retour77 == 0 ) strcat(toprint," & \n"); 
     675         else strcat(toprint,"\n     & "); 
     676         strcat(toprint,"% parent % spaceref(3))"); 
    645677      } 
    646678      else if ( whichone == 13 ) /* Agrif_Rhoz                                */ 
    647679      { 
    648          sprintf(toprint,"Agrif_Curgrid %% spaceref(3)"); 
     680         sprintf(toprint,"Agrif_Curgrid"); 
     681         if( retour77 == 0 ) strcat(toprint," & \n"); 
     682         else strcat(toprint,"\n     & "); 
     683         strcat(toprint,"% spaceref(3)"); 
    649684      } 
    650685      else if ( whichone == 14 ) /* Agrif_Parent_Rhoz                         */ 
    651686      { 
    652          sprintf(toprint,"Agrif_Curgrid %% parent %% spaceref(3)"); 
     687         sprintf(toprint,"Agrif_Curgrid"); 
     688         if( retour77 == 0 ) strcat(toprint," & \n"); 
     689         else strcat(toprint,"\n     & "); 
     690         strcat(toprint,"% parent % spaceref(3)"); 
    653691      } 
    654692      else if ( whichone == 15 ) /* Agrif_NearCommonBorderX                   */ 
    655693      { 
    656          sprintf(toprint,"Agrif_Curgrid %% NearRootBorder(1)"); 
     694         sprintf(toprint,"Agrif_Curgrid"); 
     695         if( retour77 == 0 ) strcat(toprint," & \n"); 
     696         else strcat(toprint,"\n     & "); 
     697         strcat(toprint,"% NearRootBorder(1)"); 
    657698      } 
    658699      else if ( whichone == 16 ) /* Agrif_NearCommonBorderY                   */ 
    659700      { 
    660          sprintf(toprint,"Agrif_Curgrid %% NearRootBorder(2)"); 
     701         sprintf(toprint,"Agrif_Curgrid"); 
     702         if( retour77 == 0 ) strcat(toprint," & \n"); 
     703         else strcat(toprint,"\n     & "); 
     704         strcat(toprint,"% NearRootBorder(2)"); 
    661705      } 
    662706      else if ( whichone == 17 ) /* Agrif_NearCommonBorderZ                   */ 
    663707      { 
    664          sprintf(toprint,"Agrif_Curgrid %% NearRootBorder(3)"); 
     708         sprintf(toprint,"Agrif_Curgrid"); 
     709         if( retour77 == 0 ) strcat(toprint," & \n"); 
     710         else strcat(toprint,"\n     & "); 
     711         strcat(toprint,"% NearRootBorder(3)"); 
    665712      } 
    666713      else if ( whichone == 18 ) /* Agrif_NearCommonBorderX                   */ 
    667714      { 
    668          sprintf(toprint,"Agrif_Curgrid %% DistantRootBorder(1)"); 
     715         sprintf(toprint,"Agrif_Curgrid"); 
     716         if( retour77 == 0 ) strcat(toprint," & \n"); 
     717         else strcat(toprint,"\n     & "); 
     718         strcat(toprint,"% DistantRootBorder(1)"); 
    669719      } 
    670720      else if ( whichone == 19 ) /* Agrif_NearCommonBorderY                   */ 
    671721      { 
    672          sprintf(toprint,"Agrif_Curgrid %% DistantRootBorder(2)"); 
     722         sprintf(toprint,"Agrif_Curgrid"); 
     723         if( retour77 == 0 ) strcat(toprint," & \n"); 
     724         else strcat(toprint,"\n     & "); 
     725         strcat(toprint,"% DistantRootBorder(2)"); 
    673726      } 
    674727      else if ( whichone == 20 ) /* Agrif_NearCommonBorderZ                   */ 
    675728      { 
    676          sprintf(toprint,"Agrif_Curgrid %% DistantRootBorder(3)"); 
     729         sprintf(toprint,"Agrif_Curgrid"); 
     730         if( retour77 == 0 ) strcat(toprint," & \n"); 
     731         else strcat(toprint,"\n     & "); 
     732         strcat(toprint,"% DistantRootBorder(3)"); 
    677733      } 
    678734      else if ( whichone == 21 ) /* Agrif_Get_parent_id                       */ 
    679735      { 
    680          sprintf(toprint,"Agrif_Curgrid %% parent %% grid_id"); 
     736         sprintf(toprint,"Agrif_Curgrid"); 
     737         if( retour77 == 0 ) strcat(toprint," & \n"); 
     738         else strcat(toprint,"\n     & "); 
     739         strcat(toprint,"% parent % grid_id"); 
    681740      } 
    682741      else if ( whichone == 22 ) /*  Agrif_Get_grid_id                        */ 
    683742      { 
    684          sprintf(toprint,"Agrif_Curgrid %% grid_id"); 
     743         sprintf(toprint,"Agrif_Curgrid"); 
     744         if( retour77 == 0 ) strcat(toprint," & \n"); 
     745         else strcat(toprint,"\n     & "); 
     746         strcat(toprint,"% grid_id"); 
    685747      } 
    686748      else if ( whichone == 23 ) /*  Agrif_Parent_Iz                          */ 
    687749      { 
    688          sprintf(toprint,"Agrif_Curgrid %% parent %% ix(3)"); 
     750         sprintf(toprint,"Agrif_Curgrid"); 
     751         if( retour77 == 0 ) strcat(toprint," & \n"); 
     752         else strcat(toprint,"\n     & "); 
     753         strcat(toprint,"% parent % ix(3)"); 
    689754      } 
    690755      else if ( whichone == 24 ) /*  Agrif_Parent_Iy                          */ 
    691756      { 
    692          sprintf(toprint,"Agrif_Curgrid %% parent %% ix(2)"); 
     757         sprintf(toprint,"Agrif_Curgrid"); 
     758         if( retour77 == 0 ) strcat(toprint," & \n"); 
     759         else strcat(toprint,"\n     & "); 
     760         strcat(toprint,"% parent % ix(2)"); 
    693761      } 
    694762      else if ( whichone == 25 ) /*  Agrif_Parent_Ix                          */ 
    695763      { 
    696          sprintf(toprint,"Agrif_Curgrid %% parent %% ix(1)"); 
     764         sprintf(toprint,"Agrif_Curgrid"); 
     765         if( retour77 == 0 ) strcat(toprint," & \n"); 
     766         else strcat(toprint,"\n     & "); 
     767         strcat(toprint,"% parent % ix(1)"); 
    697768      } 
    698769      else if ( whichone == 26 ) /* Agrif_Iz                                  */ 
    699770      { 
    700          sprintf(toprint,"Agrif_Curgrid %% ix(3)"); 
     771         sprintf(toprint,"Agrif_Curgrid"); 
     772         if( retour77 == 0 ) strcat(toprint," & \n"); 
     773         else strcat(toprint,"\n     & "); 
     774         strcat(toprint," % ix(3)"); 
    701775      } 
    702776      else if ( whichone == 27 ) /* Agrif_Iy                                  */ 
    703777      { 
    704          sprintf(toprint,"Agrif_Curgrid %% ix(2)"); 
     778         sprintf(toprint,"Agrif_Curgrid"); 
     779         if( retour77 == 0 ) strcat(toprint," & \n"); 
     780         else strcat(toprint,"\n     & "); 
     781         strcat(toprint,"% ix(2)"); 
    705782      } 
    706783      else if ( whichone == 28 ) /* Agrif_Ix                                  */ 
    707784      { 
    708          sprintf(toprint,"Agrif_Curgrid %% ix(1)"); 
     785         sprintf(toprint,"Agrif_Curgrid"); 
     786         if( retour77 == 0 ) strcat(toprint," & \n"); 
     787         else strcat(toprint,"\n     & "); 
     788         strcat(toprint,"% ix(1)"); 
    709789      } 
    710790      else if ( whichone == 29 ) /* Agrif_Nb_Fixed_Grids                      */ 
     
    714794      else if ( whichone == 30 ) /* AGRIF_Nb_Step                             */ 
    715795      { 
    716          sprintf(toprint,"Agrif_Curgrid %% ngridstep"); 
     796         sprintf(toprint,"Agrif_Curgrid"); 
     797         if( retour77 == 0 ) strcat(toprint," & \n"); 
     798         else strcat(toprint,"\n     & "); 
     799         strcat(toprint,"% ngridstep"); 
    717800      } 
    718801      /*                                                                      */ 
    719802      if ( whichone == 1 || whichone == 2 ) 
    720803      { 
     804         Save_Length(toprint,43); 
    721805         tofich(fortranout,toprint,2); 
    722806      } 
    723807      else 
    724808      { 
    725          if( retour77 == 0 ) fprintf(fortranout," & \n"); 
    726          else fprintf(fortranout,"\n     & "); 
     809/*         if( retour77 == 0 ) fprintf(fortranout," & \n"); 
     810         else fprintf(fortranout,"\n     & ");*/ 
     811         Save_Length(toprint,43); 
    727812         fprintf(fortranout,"%s",toprint); 
    728813      } 
Note: See TracChangeset for help on using the changeset viewer.