Changeset 17075


Ignore:
Timestamp:
01/09/14 10:49:53 (11 years ago)
Author:
jbondzio
Message:

ADD: Shell for Level-Set Method

Location:
issm/trunk-jpl
Files:
20 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/externalpackages/cython/install-19.2.sh

    r17066 r17075  
    44#clean up
    55rm -rf Cython-0.19.2
     6rm -rf cython.tar.gz
    67
    78#download numpy first
  • issm/trunk-jpl/externalpackages/git/install.sh

    r13823 r17075  
    1818#install
    1919cd src
    20 ./configure  --prefix="$ISSM_DIR/externalpackages/git/install"
    21 #--with-python="$ISSM_DIR/externalpackages/python/install/bin/python" #Do we really need this line?
     20./configure  --prefix="$ISSM_DIR/externalpackages/git/install" \
     21    --with-python="$ISSM_DIR/externalpackages/python/install/bin/python" #Do we really need this line?
    2222       
    2323#Compile
  • issm/trunk-jpl/externalpackages/nose/install-linux64-python2.sh

    r16707 r17075  
    1111
    1212cd src
     13export python=$ISSM_DIR/externalpackages/python/install/bin/python
     14
    1315python ./setup.py build
    1416python ./setup.py install
  • issm/trunk-jpl/externalpackages/petsc/install-3.4-linux64.sh

    r16547 r17075  
    2121        --PETSC_ARCH=linux-gnu-amd64 \
    2222        --PETSC_DIR="$ISSM_DIR/externalpackages/petsc/src" \
    23         --with-debugging=0 \
     23        --with-debugging=1 \
    2424        --with-shared-libraries=1 \
    2525        --download-parmetis=yes \
  • issm/trunk-jpl/externalpackages/python/install-2.7.3-linux64.sh

    r13370 r17075  
    1919./configure \
    2020 --prefix="$ISSM_DIR/externalpackages/python/install" \
     21 --with-zlib \
    2122 --enable-shared
    2223
  • issm/trunk-jpl/externalpackages/scipy/install-linux64.sh

    r13371 r17075  
    88export FFLAGS=-ff2c
    99
     10if [ -d "scipy" ]; then
    1011#clean up
    11 rm -rf scipy
    12 
     12#rm -rf scipy
     13echo "hello"
     14else
    1315#download scipy
    14 export GIT_SSL_NO_VERIFY=true
    15 git clone https://github.com/scipy/scipy.git
     16    export GIT_SSL_NO_VERIFY=true
     17    git clone https://github.com/scipy/scipy.git
     18fi
    1619
    1720#install scipy
  • issm/trunk-jpl/src/c/Makefile.am

    r17028 r17075  
    369369#Transient sources  {{{
    370370transient_sources  = ./modules/ModelProcessorx/Transient/UpdateElementsTransient.cpp \
    371                                                         ./cores/transient_core.cpp
     371                                                        ./cores/transient_core.cpp\
     372              ./analyses/LevelsetAnalysis.h\
     373              ./analyses/LevelsetAnalysis.cpp
    372374#}}}
    373375#Steadystate sources  {{{
  • issm/trunk-jpl/src/c/analyses/EnumToAnalysis.cpp

    r16685 r17075  
    3636                case ExtrudeFromTopAnalysisEnum : return new ExtrudeFromTopAnalysis();
    3737                case ThermalAnalysisEnum : return new ThermalAnalysis();
     38          case LevelsetAnalysisEnum : return new LevelsetAnalysis();
    3839                #ifdef _HAVE_GIA_
    3940                case GiaAnalysisEnum : return new GiaAnalysis();
  • issm/trunk-jpl/src/c/analyses/StressbalanceAnalysis.h

    r17005 r17075  
    1111class StressbalanceAnalysis: public Analysis{
    1212
    13         public:
     13  public:
    1414                /*Model processing*/
    1515                int  DofsPerNode(int** doflist,int meshtype,int approximation);
  • issm/trunk-jpl/src/c/analyses/analyses.h

    r16685 r17075  
    2323#include "./HydrologyDCInefficientAnalysis.h"
    2424#include "./HydrologyShreveAnalysis.h"
     25#include "./LevelsetAnalysis.h"
    2526#include "./MasstransportAnalysis.h"
    2627#include "./MeltingAnalysis.h"
  • issm/trunk-jpl/src/c/cores/AnalysisConfiguration.cpp

    r16685 r17075  
    116116
    117117                case TransientSolutionEnum:
    118                         numanalyses=12;
     118                        numanalyses=13;
    119119                        analyses=xNew<int>(numanalyses);
    120120                        analyses[ 0]=StressbalanceAnalysisEnum;
     
    130130                        analyses[10]=ExtrudeFromBaseAnalysisEnum;
    131131                        analyses[11]=ExtrudeFromTopAnalysisEnum;
     132                        analyses[12]=LevelsetAnalysisEnum;
    132133                        break;
    133134
  • issm/trunk-jpl/src/c/cores/transient_core.cpp

    r17064 r17075  
    2222        int    i;
    2323        IssmDouble starttime,finaltime,dt,yts;
    24         bool   isstressbalance,ismasstransport,isFS,isthermal,isgroundingline,isdelta18o,isgia;
     24        bool   isstressbalance,ismasstransport,isFS,isthermal,isgroundingline,isdelta18o,isgia,islevelset;
    2525        bool   save_results,dakota_analysis;
    2626        bool   time_adapt=false;
     
    2828        int    meshtype,groundingline_migration;
    2929        int    numoutputs         = 0;
     30  Analysis *analysis = NULL;
    3031        char** requested_outputs = NULL;
    3132
     
    159160                }
    160161
     162                if(islevelset){
     163                        if(VerboseSolution()) _printf0_("   computing movement of ice boundaries\n");
     164                        //analysis = new LevelsetAnalysis();
     165                        //analysis->Core(femmodel);
     166                        //delete analysis;
     167                }
     168
    161169                /*unload results*/
    162170                if(VerboseSolution()) _printf0_("   computing requested outputs\n");
  • issm/trunk-jpl/src/c/modules/ModelProcessorx/ModelProcessorx.cpp

    r16787 r17075  
    1616
    1717        int   i,analysis_enum,verbose;
    18         bool  isthermal,ismasstransport,isstressbalance,isgroundingline,isenthalpy;
     18        bool  isthermal,ismasstransport,isstressbalance,isgroundingline,isenthalpy,islevelset;
    1919
    2020        /*Initialize datasets*/
     
    3434        iomodel->Constant(&isthermal,TransientIsthermalEnum);
    3535        iomodel->Constant(&isenthalpy,ThermalIsenthalpyEnum);
     36        iomodel->Constant(&islevelset,TransientIslevelsetEnum);
    3637        iomodel->Constant(&ismasstransport,TransientIsmasstransportEnum);
    3738        iomodel->Constant(&isstressbalance,TransientIsstressbalanceEnum);
     
    7374                if(solution_enum==SteadystateSolutionEnum && analysis_enum==MeltingAnalysisEnum && isenthalpy==true) continue;
    7475                if(solution_enum==SteadystateSolutionEnum && analysis_enum==EnthalpyAnalysisEnum && isenthalpy==false) continue;
     76                if(solution_enum==TransientSolutionEnum && analysis_enum==LevelsetAnalysisEnum && islevelset==false) continue;
     77
    7578
    7679                if(VerboseMProcessor()) _printf0_("   creating datasets for analysis " << EnumToStringx(analysis_enum) << "\n");
  • issm/trunk-jpl/src/c/shared/Enum/EnumDefinitions.h

    r17072 r17075  
    273273        TransientIsgiaEnum,
    274274        TransientIsdamageEnum,
     275        TransientIslevelsetEnum,
    275276        TransientNumRequestedOutputsEnum,
    276277        TransientRequestedOutputsEnum,
     
    317318        DamageEvolutionSolutionEnum,
    318319        DamageEvolutionAnalysisEnum,
     320        LevelsetAnalysisEnum,
    319321        StressbalanceAnalysisEnum,
    320322        StressbalanceSIAAnalysisEnum,
  • issm/trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp

    r17072 r17075  
    279279                case TransientIsgiaEnum : return "TransientIsgia";
    280280                case TransientIsdamageEnum : return "TransientIsdamage";
     281                case TransientIslevelsetEnum : return "TransientIslevelset";
    281282                case TransientNumRequestedOutputsEnum : return "TransientNumRequestedOutputs";
    282283                case TransientRequestedOutputsEnum : return "TransientRequestedOutputs";
     
    318319                case DamageEvolutionSolutionEnum : return "DamageEvolutionSolution";
    319320                case DamageEvolutionAnalysisEnum : return "DamageEvolutionAnalysis";
     321                case LevelsetAnalysisEnum : return "LevelsetAnalysis";
    320322                case StressbalanceAnalysisEnum : return "StressbalanceAnalysis";
    321323                case StressbalanceSIAAnalysisEnum : return "StressbalanceSIAAnalysis";
  • issm/trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp

    r17072 r17075  
    285285              else if (strcmp(name,"TransientIsgia")==0) return TransientIsgiaEnum;
    286286              else if (strcmp(name,"TransientIsdamage")==0) return TransientIsdamageEnum;
     287              else if (strcmp(name,"TransientIslevelset")==0) return TransientIslevelsetEnum;
    287288              else if (strcmp(name,"TransientNumRequestedOutputs")==0) return TransientNumRequestedOutputsEnum;
    288289              else if (strcmp(name,"TransientRequestedOutputs")==0) return TransientRequestedOutputsEnum;
     
    324325              else if (strcmp(name,"DamageEvolutionSolution")==0) return DamageEvolutionSolutionEnum;
    325326              else if (strcmp(name,"DamageEvolutionAnalysis")==0) return DamageEvolutionAnalysisEnum;
     327              else if (strcmp(name,"LevelsetAnalysis")==0) return LevelsetAnalysisEnum;
    326328              else if (strcmp(name,"StressbalanceAnalysis")==0) return StressbalanceAnalysisEnum;
    327329              else if (strcmp(name,"StressbalanceSIAAnalysis")==0) return StressbalanceSIAAnalysisEnum;
  • issm/trunk-jpl/src/m/classes/transient.m

    r16764 r17075  
    1212                isgia             = 0;
    1313                isdamage             = 0;
     14                islevelset = 0;
    1415                requested_outputs = {};
    1516        end
     
    3233                        obj.isgia           = 0;
    3334                        obj.isdamage        = 0;
     35                        obj.islevelset      = 0;
    3436
    3537                        %default output
     
    5254                        md = checkfield(md,'fieldname','transient.isgia','numel',[1],'values',[0 1]);
    5355                        md = checkfield(md,'fieldname','transient.isdamage','numel',[1],'values',[0 1]);
     56                        md = checkfield(md,'fieldname','transient.islevelset','numel',[1],'values',[0 1]);
    5457                        md = checkfield(md,'fieldname','transient.requested_outputs','stringrow',1);
    5558
     
    6467                        fielddisplay(obj,'isgia','indicates whether a postglacial rebound model is used in the transient');
    6568                        fielddisplay(obj,'isdamage','indicates whether damage evolution is used in the transient');
     69                        fielddisplay(obj,'islevelset','LEVEL SET DESCRIPTION...');
    6670                        fielddisplay(obj,'requested_outputs','list of additional outputs requested');
    6771
     
    7478                        WriteData(fid,'object',obj,'fieldname','isgia','format','Boolean');
    7579                        WriteData(fid,'object',obj,'fieldname','isdamage','format','Boolean');
     80                        WriteData(fid,'object',obj,'fieldname','islevelset','format','Boolean');
    7681
    7782                        %process requested outputs
  • issm/trunk-jpl/src/m/classes/transient.py

    r16764 r17075  
    1818                self.isgroundingline   = False
    1919                self.isgia             = False
     20                self.islevelset        = False
    2021                self.requested_outputs = []
    2122
     
    3132                string="%s\n%s"%(string,fielddisplay(self,'isgroundingline','indicates if a groundingline migration is used in the transient'))
    3233                string="%s\n%s"%(string,fielddisplay(self,'isgia','indicates if a postglacial rebound is used in the transient'))
     34                string="%s\n%s"%(string,fielddisplay(self,'islevelset','LEVELSET METHOD DESCRIPTION'))
    3335                string="%s\n%s"%(string,fielddisplay(self,'requested_outputs','list of additional outputs requested'))
    3436                return string
     
    4749                self.isgroundingline = False
    4850                self.isgia           = False
     51                self.islevelset           = False
    4952
    5053                #default output
     
    6366                md = checkfield(md,'fieldname','transient.isgroundingline','numel',[1],'values',[0,1])
    6467                md = checkfield(md,'fieldname','transient.isgia','numel',[1],'values',[0,1])
     68                md = checkfield(md,'fieldname','transient.islevelset','numel',[1],'values',[0,1])
    6569                md = checkfield(md,'fieldname','transient.requested_outputs','stringrow',1)
    6670
     
    7377                WriteData(fid,'object',self,'fieldname','isgroundingline','format','Boolean')
    7478                WriteData(fid,'object',self,'fieldname','isgia','format','Boolean')
     79                WriteData(fid,'object',self,'fieldname','islevelset','format','Boolean')
    7580
    7681                #process requested outputs
  • issm/trunk-jpl/src/m/dev/devpath.py

    r16722 r17075  
    2525from plotmodel import plotmodel
    2626
    27 c = get_ipython().config
    28 c.InteractiveShellApp.exec_lines = []
    29 c.InteractiveShellApp.exec_lines.append('%load_ext autoreload')
    30 c.InteractiveShellApp.exec_lines.append('%autoreload 2')
    31 c.InteractiveShellApp.exec_lines.append('print "Warning: disable autoreload in startup.py to improve performance." ')
     27#c = get_ipython().config
     28#c.InteractiveShellApp.exec_lines = []
     29#c.InteractiveShellApp.exec_lines.append('%load_ext autoreload')
     30#c.InteractiveShellApp.exec_lines.append('%autoreload 2')
     31#c.InteractiveShellApp.exec_lines.append('print "Warning: disable autoreload in startup.py to improve performance." ')
    3232
    3333print("\n  ISSM development path correctly loaded\n\n")
  • issm/trunk-jpl/src/m/enum/EnumDefinitions.py

    r17072 r17075  
    271271def TransientIsgiaEnum(): return StringToEnum("TransientIsgia")[0]
    272272def TransientIsdamageEnum(): return StringToEnum("TransientIsdamage")[0]
     273def TransientIslevelsetEnum(): return StringToEnum("TransientIslevelset")[0]
    273274def TransientNumRequestedOutputsEnum(): return StringToEnum("TransientNumRequestedOutputs")[0]
    274275def TransientRequestedOutputsEnum(): return StringToEnum("TransientRequestedOutputs")[0]
     
    310311def DamageEvolutionSolutionEnum(): return StringToEnum("DamageEvolutionSolution")[0]
    311312def DamageEvolutionAnalysisEnum(): return StringToEnum("DamageEvolutionAnalysis")[0]
     313def LevelsetAnalysisEnum(): return StringToEnum("LevelsetAnalysis")[0]
    312314def StressbalanceAnalysisEnum(): return StringToEnum("StressbalanceAnalysis")[0]
    313315def StressbalanceSIAAnalysisEnum(): return StringToEnum("StressbalanceSIAAnalysis")[0]
Note: See TracChangeset for help on using the changeset viewer.