Changeset 26004


Ignore:
Timestamp:
02/19/21 22:18:58 (4 years ago)
Author:
bulthuis
Message:

NEW: add core sampling_core and solution solver solutionsequence_sampling for sampling capability

Location:
issm/trunk-jpl
Files:
2 added
14 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/m4/analyses.m4

    r25101 r26004  
    430430AC_MSG_RESULT($HAVE_MELTING)
    431431dnl }}}
     432dnl with-Sampling{{{
     433
     434AC_ARG_WITH([Sampling],
     435
     436        AS_HELP_STRING([--with-Sampling = YES], [compile with Sampling capabilities (default is yes)]),
     437
     438        [SAMPLING=$withval],[SAMPLING=yes])
     439
     440AC_MSG_CHECKING(for Sampling capability compilation)
     441
     442
     443HAVE_SAMPLING=no
     444
     445if test "x$SAMPLING" = "xyes"; then
     446
     447        HAVE_SAMPLING=yes
     448
     449        AC_DEFINE([_HAVE_SAMPLING_],[1],[with Sampling capability])
     450
     451fi
     452
     453AM_CONDITIONAL([SAMPLING], [test x$HAVE_SAMPLING = xyes])
     454
     455AC_MSG_RESULT($HAVE_SAMPLING)
     456
     457dnl }}}
    432458dnl with-Sealevelrise{{{
    433459AC_ARG_WITH([Sealevelrise],
  • issm/trunk-jpl/src/c/Makefile.am

    r26000 r26004  
    256256        ./solutionsequences/solutionsequence_fct.cpp \
    257257        ./solutionsequences/solutionsequence_schurcg.cpp \
     258        ./solutionsequences/solutionsequence_sampling.cpp \
    258259        ./solutionsequences/convergence.cpp \
    259260        ./classes/Options/Options.cpp \
     
    548549endif
    549550#}}}
     551#Sampling sources  {{{
     552if SAMPLING
     553issm_sources += \
     554        ./cores/sampling_core.cpp \
     555        ./analyses/SamplingAnalysis.cpp
     556endif
    550557#Slr sources  {{{
    551558if SEALEVELRISE
  • issm/trunk-jpl/src/c/analyses/EnumToAnalysis.cpp

    r25947 r26004  
    104104                case MeltingAnalysisEnum : return new MeltingAnalysis();
    105105                #endif
     106                #ifdef _HAVE_SAMPLING_
     107                case SamplingAnalysisEnum : return new SamplingAnalysis();
     108                #endif
    106109                #ifdef _HAVE_SEALEVELRISE_
    107110                case SealevelchangeAnalysisEnum : return new SealevelchangeAnalysis();
  • issm/trunk-jpl/src/c/analyses/SamplingAnalysis.cpp

    r26003 r26004  
    7676  iomodel->FetchDataToInput(inputs,elements,"md.sampling.kappa",SamplingKappaEnum);
    7777        iomodel->FetchDataToInput(inputs,elements,"md.sampling.beta",SamplingBetaEnum,0.);
    78         iomodel->FetchDataToInput(inputs,elements,"md.initialization.sample",SampleEnum,0.);
     78        //iomodel->FetchDataToInput(inputs,elements,"md.initialization.sample",SampleEnum,0.);
    7979
    8080}/*}}}*/
  • issm/trunk-jpl/src/c/classes/FemModel.cpp

    r25956 r26004  
    832832                case EsaSolutionEnum:
    833833                        analyses_temp[numanalyses++]=EsaAnalysisEnum;
     834                        break;
     835
     836                case SamplingSolutionEnum:
     837                        analyses_temp[numanalyses++]=SamplingAnalysisEnum;
    834838                        break;
    835839
     
    48284832        IssmDouble* bslcice_partition_serial=NULL;
    48294833        IssmDouble* partitionice=NULL;
    4830         int npartice,nel; 
     4834        int npartice,nel;
    48314835
    48324836        Vector<IssmDouble>* bslchydro_partition=NULL;
    48334837        IssmDouble* bslchydro_partition_serial=NULL;
    48344838        IssmDouble* partitionhydro=NULL;
    4835         int nparthydro; 
    4836                
     4839        int nparthydro;
     4840
    48374841
    48384842   /*Initialize temporary vector that will be used to sum barystatic components
     
    51055109        pUp->SetValues(gsize,indices,Up,ADD_VAL);
    51065110        pUp->Assemble();
    5107        
     5111
    51085112
    51095113        /*Add RSL to Up to find the geoid: */
  • issm/trunk-jpl/src/c/classes/Profiler.h

    r25539 r26004  
    2727#define ESACORE                         14 /*Profiling ESA */
    2828#define SLRCORE                         15 /*Profiling SLR */
    29 #define MPISERIAL                               16 /*Profiling MPISerial */
    30 #define SEDLOOP                         17 /*Profiling MPISerial */
    31 #define SEDMatrix                               18 /*Profiling MPISerial */
    32 #define SEDUpdate                               19 /*Profiling MPISerial */
    33 #define EPLLOOP                         20 /*Profiling MPISerial */
    34 #define EPLMasking                      21 /*Profiling MPISerial */
    35 #define EPLMatrices                     22 /*Profiling MPISerial */
    36 #define EPLUpdate                               23 /*Profiling MPISerial */
    37 #define MAXPROFSIZE                     24 /*Used to initialize static arrays*/
     29#define SAMPLINGCORE    16 /*Profiling SAMPLING */
     30#define MPISERIAL                               17 /*Profiling MPISerial */
     31#define SEDLOOP                         18 /*Profiling MPISerial */
     32#define SEDMatrix                               19 /*Profiling MPISerial */
     33#define SEDUpdate                               20 /*Profiling MPISerial */
     34#define EPLLOOP                         21 /*Profiling MPISerial */
     35#define EPLMasking                      22 /*Profiling MPISerial */
     36#define EPLMatrices                     23 /*Profiling MPISerial */
     37#define EPLUpdate                               24 /*Profiling MPISerial */
     38#define MAXPROFSIZE                     25 /*Used to initialize static arrays*/
    3839
    3940
  • issm/trunk-jpl/src/c/cores/CorePointerFromSolutionEnum.cpp

    r25947 r26004  
    11/*!\file:  CorePointerFromSolutionEnum.cpp
    22 * \brief: return type of analyses, number of analyses and core solution function.
    3  */ 
     3 */
    44
    55#ifdef HAVE_CONFIG_H
     
    8282                        #endif
    8383                        break;
     84                case SamplingSolutionEnum:
     85                        solutioncore=&sampling_core;
     86                        break;
    8487
    8588                default:
  • issm/trunk-jpl/src/c/cores/cores.h

    r25956 r26004  
    11/*
    2  * cores.h: 
     2 * cores.h:
    33 */
    44
     
    5454void bmb_core(FemModel* femmodel);
    5555void damage_core(FemModel* femmodel);
     56void sampling_core(FemModel* femmodel);
    5657
    5758/*sealevel change cores:*/
  • issm/trunk-jpl/src/c/shared/Enum/Enum.vim

    r26002 r26004  
    13071307syn keyword cConstant RecoveryAnalysisEnum
    13081308syn keyword cConstant RiftfrontEnum
     1309syn keyword cConstant SamplingAnalysisEnum
     1310syn keyword cConstant SamplingSolutionEnum
    13091311syn keyword cConstant SIAApproximationEnum
    13101312syn keyword cConstant SMBcomponentsEnum
  • issm/trunk-jpl/src/c/shared/Enum/EnumDefinitions.h

    r26002 r26004  
    13061306        RecoveryAnalysisEnum,
    13071307        RiftfrontEnum,
     1308        SamplingAnalysisEnum,
     1309        SamplingSolutionEnum,
    13081310        SIAApproximationEnum,
    13091311        SMBcomponentsEnum,
  • issm/trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp

    r26002 r26004  
    13091309                case RecoveryAnalysisEnum : return "RecoveryAnalysis";
    13101310                case RiftfrontEnum : return "Riftfront";
     1311                case SamplingAnalysisEnum : return "SamplingAnalysis";
     1312                case SamplingSolutionEnum : return "SamplingSolution";
    13111313                case SIAApproximationEnum : return "SIAApproximation";
    13121314                case SMBcomponentsEnum : return "SMBcomponents";
  • issm/trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp

    r26002 r26004  
    13391339              else if (strcmp(name,"RecoveryAnalysis")==0) return RecoveryAnalysisEnum;
    13401340              else if (strcmp(name,"Riftfront")==0) return RiftfrontEnum;
     1341              else if (strcmp(name,"SamplingAnalysis")==0) return SamplingAnalysisEnum;
     1342              else if (strcmp(name,"SamplingSolution")==0) return SamplingSolutionEnum;
    13411343              else if (strcmp(name,"SIAApproximation")==0) return SIAApproximationEnum;
    13421344              else if (strcmp(name,"SMBcomponents")==0) return SMBcomponentsEnum;
     
    13651367              else if (strcmp(name,"SealevelUmotion")==0) return SealevelUmotionEnum;
    13661368              else if (strcmp(name,"SealevelchangeAnalysis")==0) return SealevelchangeAnalysisEnum;
    1367               else if (strcmp(name,"SealevelchangeSolution")==0) return SealevelchangeSolutionEnum;
    1368               else if (strcmp(name,"Seg")==0) return SegEnum;
    13691369         else stage=12;
    13701370   }
    13711371   if(stage==12){
    1372               if (strcmp(name,"SegInput")==0) return SegInputEnum;
     1372              if (strcmp(name,"SealevelchangeSolution")==0) return SealevelchangeSolutionEnum;
     1373              else if (strcmp(name,"Seg")==0) return SegEnum;
     1374              else if (strcmp(name,"SegInput")==0) return SegInputEnum;
    13731375              else if (strcmp(name,"Segment")==0) return SegmentEnum;
    13741376              else if (strcmp(name,"SegmentRiftfront")==0) return SegmentRiftfrontEnum;
  • issm/trunk-jpl/src/c/solutionsequences/solutionsequences.h

    r24080 r26004  
    11/*
    2  * solutionsequences.h: 
     2 * solutionsequences.h:
    33 */
    44
     
    2525void solutionsequence_adjoint_linear(FemModel* femmodel);
    2626void solutionsequence_schurcg(FemModel* femmodel);
     27void solutionsequence_sampling(FemModel* femmodel);
    2728
    2829/*convergence*/
  • issm/trunk-jpl/src/m/solve/solve.m

    r25955 r26004  
    2323%   - 'Esa'                or 'esa'
    2424%   - 'Sealevelchange'     or 'slc'
     25%   - 'Sampling'           or 'smp'
    2526%
    2627%   Extra options:
     
    7576elseif strcmpi(solutionstring,'slc') || strcmpi(solutionstring,'Sealevelchange')
    7677        solutionstring = 'SealevelchangeSolution';
     78elseif strcmpi(solutionstring,'smp') || strcmpi(solutionstring,'Sampling')
     79        solutionstring = 'SamplingSolution';   
    7780else
    7881        error(['solutionstring ' solutionstring ' not supported!']);
Note: See TracChangeset for help on using the changeset viewer.