Changeset 4973


Ignore:
Timestamp:
08/04/10 12:00:48 (15 years ago)
Author:
Eric.Larour
Message:

Added MassFlux and Misfit conversion + simplified code.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk/src/c/objects/ElementResults/NodalValuesUnitConversion.cpp

    r4257 r4973  
    2020        int i;
    2121        double yts;
     22        double scale;
    2223
    2324        /*Get some values from parameters, that are often needed: */
    2425        parameters->FindParam(&yts,YtsEnum);
    2526
     27        /*Get scaling factor: */
    2628        switch(enum_type){
    27                 case VxEnum:  for(i=0;i<num_nodal_values;i++)nodal_values[i]=nodal_values[i]*yts;break;
    28                 case VyEnum:  for(i=0;i<num_nodal_values;i++)nodal_values[i]=nodal_values[i]*yts;break;
    29                 case VzEnum:  for(i=0;i<num_nodal_values;i++)nodal_values[i]=nodal_values[i]*yts;break;
    30                 case VelEnum: for(i=0;i<num_nodal_values;i++)nodal_values[i]=nodal_values[i]*yts;break;
    31                 case MeltingRateEnum: for(i=0;i<num_nodal_values;i++)nodal_values[i]=nodal_values[i]*yts;break;
     29                case VxEnum:  scale=yts;break; //m/yr
     30                case VyEnum:  scale=yts;break; //m/yr
     31                case VzEnum:  scale=yts;break; //m/yr
     32                case VelEnum: scale=yts;break; //m/yr
     33                case MeltingRateEnum: scale=yts;break; //m/yr
     34                case MisfitEnum: scale=pow(yts,2);break; //(m/yr)^2
     35                case MassFluxEnum: scale=pow(10,-12)*yts;break; // (GigaTon/year)
    3236                default: break;
    3337        }
     38               
     39        /*Scale : */
     40        for(i=0;i<num_nodal_values;i++)nodal_values[i]=nodal_values[i]*scale;
    3441}
Note: See TracChangeset for help on using the changeset viewer.