Ignore:
Timestamp:
10/08/20 13:10:29 (4 years ago)
Author:
ymipsl
Message:

Xios coupling

  • fix problem when sending grid mask from client to server
  • remove methods about grid compression, which will be managed in other ways

YM

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/node/grid.cpp

    r1943 r1956  
    26812681     
    26822682    vector<CScattererConnector*> scattererConnectors ; 
     2683    CScattererConnector* scattererConnector; 
    26832684    for(int i=0 ; i<elements.size() ; i++) 
    26842685    { 
     
    26872688         CDomain* domain = (CDomain*) elements[i].ptr ; 
    26882689         sendAddDomain(domain->getId(),client) ; 
    2689          domain->distributeToServer(client, gridRemoteConnector.getDistributedGlobalIndex(i)) ; 
    2690          scattererConnectors.push_back(domain->getClientToServerConnector(client)) ; 
     2690         domain->distributeToServer(client, gridRemoteConnector.getDistributedGlobalIndex(i), scattererConnector) ; 
     2691         scattererConnectors.push_back(scattererConnector) ; 
    26912692      } 
    26922693      else if (elements[i].type==TYPE_AXIS) 
     
    26942695        CAxis* axis = (CAxis*) elements[i].ptr ; 
    26952696        sendAddAxis(axis->getId(),client) ; 
    2696         axis->distributeToServer(client, gridRemoteConnector.getDistributedGlobalIndex(i)) ; 
    2697         scattererConnectors.push_back(axis->getClientToServerConnector(client)) ; 
     2697        axis->distributeToServer(client, gridRemoteConnector.getDistributedGlobalIndex(i), scattererConnector) ; 
     2698        scattererConnectors.push_back(scattererConnector) ; 
    26982699      } 
    26992700      else if (elements[i].type==TYPE_SCALAR) 
     
    27012702        CScalar* scalar = (CScalar*) elements[i].ptr ; 
    27022703        sendAddScalar(scalar->getId(),client) ; 
    2703         scalar->distributeToServer(client, gridRemoteConnector.getDistributedGlobalIndex(i)) ; 
    2704         scattererConnectors.push_back(scalar->getClientToServerConnector(client)) ; 
     2704        scalar->distributeToServer(client, gridRemoteConnector.getDistributedGlobalIndex(i), scattererConnector) ; 
     2705        scattererConnectors.push_back(scattererConnector) ; 
    27052706      } 
    27062707    } 
     
    27172718    message<<getId() ;  
    27182719    gridScattererConnector.transfer(maskOut, client, event, message) ; 
    2719  
     2720    for(auto& it : scattererConnectors) delete it ; 
    27202721 
    27212722    vector<CScattererConnector*> clientToServerConnectors ; 
     
    28002801  void CGrid::sendGridToCouplerOut(CContextClient* client, const string& fieldId) 
    28012802  { 
    2802     if (sendGridToCouplerOut_done_.count(client)!=0) return ; 
     2803/*    if (sendGridToCouplerOut_done_.count(client)!=0) return ; 
    28032804    else sendGridToCouplerOut_done_.insert(client) ; 
    28042805  
     
    28722873     
    28732874    // compute the grid clientToServerConnector to send flux from client to servers 
    2874     clientToClientConnector_[client] = new CGridScattererConnector(clientToClientConnectors) ; 
     2875    clientToClientConnector_[client] = new CGridScattererConnector(clientToClientConnectors) ;*/ 
    28752876  } 
    28762877 
Note: See TracChangeset for help on using the changeset viewer.