Beispiel #1
0
    def copyCases(self):
        self.btfLinearUpwind = GmtPlotCopyCase(
                'schaerAdvect-btf-1000-linearUpwind',
                source='$atmostests_builddir',
                target='$builddir',
                plots=['src/thesis/cubicFit/schaerAdvect/errorW.gmtdict'],
                files=['10000/T', '10000/T_analytic', '10000/T_diff']
        )

        self.cutCellLinearUpwind = GmtPlotCopyCase(
                'schaerAdvect-cutCell-1000-linearUpwind',
                source='$atmostests_builddir',
                target='$builddir',
                plots=['src/thesis/cubicFit/schaerAdvect/error.gmtdict'],
                files=['10000/T', '10000/T_analytic', '10000/T_diff']
        )

        self.btfCubicFit = GmtPlotCopyCase(
                'schaerAdvect-btf-1000-cubicFit',
                source='$atmostests_builddir',
                target='$builddir',
                plots=['src/thesis/cubicFit/schaerAdvect/errorSW.gmtdict'],
                files=['10000/T', '10000/T_analytic', '10000/T_diff']
        )

        self.cutCellCubicFit = GmtPlotCopyCase(
                'schaerAdvect-cutCell-1000-cubicFit',
                source='$atmostests_builddir',
                target='$builddir',
                plots=['src/thesis/cubicFit/schaerAdvect/errorS.gmtdict'],
                files=['10000/T', '10000/T_analytic', '10000/T_diff']
        )
Beispiel #2
0
    def copyCases(self):
        self.uniformLorenz = GmtPlotCopyCase(
            'arakawaKonor-uniform-lorenz',
            source='$atmostests_builddir',
            target='$builddir',
            plots=[
                'src/thesis/cp/arakawaKonor/theta_diffW.gmtdict',
                'src/thesis/cp/arakawaKonor/theta_diffSW.gmtdict'
            ],
            files=['0/theta_diff', '172800/theta_diff'])

        self.uniformCP = GmtPlotCopyCase(
            'arakawaKonor-uniform-cp',
            source='$atmostests_builddir',
            target='$builddir',
            plots=['src/thesis/cp/arakawaKonor/theta_diffSW.gmtdict'],
            files=['172800/theta_diff'])

        self.horizontalGradingLorenz = GmtPlotCopyCase(
            'arakawaKonor-horizontalGrading-lorenz',
            source='$atmostests_builddir',
            target='$builddir',
            plots=[
                'src/thesis/cp/arakawaKonor/meshW.gmtdict',
                'src/thesis/cp/arakawaKonor/theta_diff.gmtdict',
                'src/thesis/cp/arakawaKonor/theta_diffS.gmtdict'
            ],
            files=['0/theta_diff', '172800/theta_diff'])

        self.horizontalGradingCP = GmtPlotCopyCase(
            'arakawaKonor-horizontalGrading-cp',
            source='$atmostests_builddir',
            target='$builddir',
            plots=['src/thesis/cp/arakawaKonor/theta_diffS.gmtdict'],
            files=['172800/theta_diff'])

        self.verticalGradingLorenz = GmtPlotCopyCase(
            'arakawaKonor-verticalGrading-lorenz',
            source='$atmostests_builddir',
            target='$builddir',
            plots=['src/thesis/cp/arakawaKonor/mesh.gmtdict'])
Beispiel #3
0
    def copyCases(self):
        self.btf5000mLinearUpwind = GmtPlotCopyCase(
            'mountainAdvect-h0-btf-1000-5000m-linearUpwind',
            source='$atmostests_builddir',
            target='$builddir',
            plots=[
                'src/thesis/slanted/mountainAdvect/meshW.gmtdict',
                'src/thesis/slanted/mountainAdvect/errorW.gmtdict'
            ],
            files=['10000/T', '10000/T_analytic', '10000/T_diff'])

        self.cutCell5000mLinearUpwind = GmtPlotCopyCase(
            'mountainAdvect-h0-cutCell-1000-5000m-linearUpwind',
            source='$atmostests_builddir',
            target='$builddir',
            plots=[
                'src/thesis/slanted/mountainAdvect/meshW.gmtdict',
                'src/thesis/slanted/mountainAdvect/error.gmtdict'
            ],
            files=['10000/T', '10000/T_analytic', '10000/T_diff'])

        self.slantedCell5000mLinearUpwind = GmtPlotCopyCase(
            'mountainAdvect-h0-slantedCell-1000-5000m-linearUpwind',
            source='$atmostests_builddir',
            target='$builddir',
            plots=[
                'src/thesis/slanted/mountainAdvect/mesh.gmtdict',
                'src/thesis/slanted/mountainAdvect/error.gmtdict'
            ],
            files=['10000/T', '10000/T_analytic', '10000/T_diff'])

        self.btf5000mCubicFit = GmtPlotCopyCase(
            'mountainAdvect-h0-btf-1000-5000m-cubicFit',
            source='$atmostests_builddir',
            target='$builddir',
            plots=[
                'src/thesis/slanted/mountainAdvect/errorSW.gmtdict',
                'src/thesis/slanted/mountainAdvect/tracer.gmtdict'
            ],
            files=['10000/T', '10000/T_analytic', '10000/T_diff'],
            renamedFiles={
                '0/T': '10000/T_0',
                '5000/T': '10000/T_5000'
            })

        self.cutCell5000mCubicFit = GmtPlotCopyCase(
            'mountainAdvect-h0-cutCell-1000-5000m-cubicFit',
            source='$atmostests_builddir',
            target='$builddir',
            plots=['src/thesis/slanted/mountainAdvect/errorS.gmtdict'],
            files=['10000/T', '10000/T_analytic', '10000/T_diff'])

        self.slantedCell5000mCubicFit = GmtPlotCopyCase(
            'mountainAdvect-h0-slantedCell-1000-5000m-cubicFit',
            source='$atmostests_builddir',
            target='$builddir',
            plots=['src/thesis/slanted/mountainAdvect/errorS.gmtdict'],
            files=['10000/T', '10000/T_analytic', '10000/T_diff'])
Beispiel #4
0
    def copyCases(self):
        self.btfMesh6000mCase = GmtPlotCopyCase(
            'resting-mesh-btf-6000m',
            source='$atmostests_builddir',
            target='$builddir',
            plots=['src/thesis/slanted/resting/meshW.gmtdict'])

        self.sleveMesh6000mCase = GmtPlotCopyCase(
            'resting-mesh-sleve-6000m',
            source='$atmostests_builddir',
            target='$builddir',
            plots=['src/thesis/slanted/resting/mesh.gmtdict'])

        self.cutCellMesh6000mCase = GmtPlotCopyCase(
            'resting-mesh-cutCell-6000m',
            source='$atmostests_builddir',
            target='$builddir',
            plots=['src/thesis/slanted/resting/meshSW.gmtdict'])

        self.slantedCellMesh6000mCase = GmtPlotCopyCase(
            'resting-mesh-slantedCell-6000m',
            source='$atmostests_builddir',
            target='$builddir',
            plots=['src/thesis/slanted/resting/meshS.gmtdict'])
Beispiel #5
0
    def __init__(self):
        self.distortedMeshCase = GmtPlotCopyCase(
            'deformationPlane-mesh-distorted-6',
            source='$atmostests_builddir',
            target='$builddir',
            plots=['src/thesis/highOrderFit/deformationPlane/mesh.gmtdict'])

        self.distortedMesh = GmtPlot(
            'deformationPlane-distortedMesh',
            plot='mesh',
            case=Case('deformationPlane-mesh-distorted-6'),
            time='constant')

        self.meshesFigure = PDFLaTeXFigure(
            'deformationPlane-fig-meshes',
            output=os.path.join(
                'thesis/highOrderFit/deformationPlane/fig-meshes'),
            figure=os.path.join(
                'src/thesis/highOrderFit/deformationPlane/fig-meshes'),
            components=self.distortedMesh.outputs())

        self.convergence = Gnuplot(
            'highOrderFit-deformationPlane-convergence',
            output=os.path.join(
                'thesis/highOrderFit/deformationPlane/convergence'),
            plot=os.path.join(
                'src/thesis/highOrderFit/deformationPlane/convergence.plt'),
            data=[
                '$atmostests_builddir/deformationPlane-uniform-cubicFit-collated/5/l2errorT.txt',
                '$atmostests_builddir/deformationPlane-uniform-cubicFit-collated/5/linferrorT.txt',
                '$atmostests_builddir/deformationPlane-uniform-highOrderFit-collated/5/l2errorT.txt',
                '$atmostests_builddir/deformationPlane-uniform-highOrderFit-collated/5/linferrorT.txt',
                '$atmostests_builddir/deformationPlane-distorted-cubicFit-collated/5/l2errorT.txt',
                '$atmostests_builddir/deformationPlane-distorted-cubicFit-collated/5/linferrorT.txt',
                '$atmostests_builddir/deformationPlane-distorted-highOrderFit-collated/5/l2errorT.txt',
                '$atmostests_builddir/deformationPlane-distorted-highOrderFit-collated/5/linferrorT.txt'
            ])
Beispiel #6
0
    def __init__(self):
        self.gaussiansConvergence = Gnuplot(
            'deformationSphere-gaussiansConvergence',
            output=os.path.join(
                'thesis/cubicFit/deformationSphere/gaussiansConvergence'),
            plot=os.path.join(
                'src/thesis/cubicFit/deformationSphere/gaussiansConvergence.plt'
            ),
            data=[
                '$atmostests_builddir/deformationSphere-gaussians-hex-linearUpwind-collated/1036800/l2errorT.txt',
                '$atmostests_builddir/deformationSphere-gaussians-hex-cubicFit-collated/1036800/l2errorT.txt',
                '$atmostests_builddir/deformationSphere-gaussians-cubedSphere-linearUpwind-collated/1036800/l2errorT.txt',
                '$atmostests_builddir/deformationSphere-gaussians-cubedSphere-cubicFit-collated/1036800/l2errorT.txt',
                '$atmostests_builddir/deformationSphere-gaussians-hex-linearUpwind-collated/1036800/linferrorT.txt',
                '$atmostests_builddir/deformationSphere-gaussians-hex-cubicFit-collated/1036800/linferrorT.txt',
                '$atmostests_builddir/deformationSphere-gaussians-cubedSphere-linearUpwind-collated/1036800/linferrorT.txt',
                '$atmostests_builddir/deformationSphere-gaussians-cubedSphere-cubicFit-collated/1036800/linferrorT.txt'
            ])

        self.gaussiansHex8cubicFit = GmtPlotCopyCase(
            'deformationSphere-gaussians-hex-8-cubicFit',
            source='$atmostests_builddir',
            target='$builddir',
            plots=[
                'src/thesis/cubicFit/deformationSphere/tracer.gmtdict',
                'src/thesis/cubicFit/deformationSphere/tracerW.gmtdict',
            ],
            files=['0/T', '518400/T', '1036800/T'])

        gaussiansHex8cubicFitCase = Case(
            'deformationSphere-gaussians-hex-8-cubicFit')

        self.gaussiansInitialTracer = GmtPlot(
            'deformationSphere-gaussiansInitialTracer',
            plot='tracer',
            case=gaussiansHex8cubicFitCase,
            time=0,
            data=['0/T'],
            colorBar='legends/tracer_T.eps')

        self.gaussiansMidTracer = GmtPlot(
            'deformationSphere-gaussiansMidTracer',
            plot='tracerW',
            case=gaussiansHex8cubicFitCase,
            time=518400,
            data=['518400/T'])

        self.gaussiansFinalTracer = GmtPlot(
            'deformationSphere-gaussiansFinalTracer',
            plot='tracerW',
            case=gaussiansHex8cubicFitCase,
            time=1036800,
            data=['1036800/T'])

        self.coarsestSpacing = siunitx.Ang(
            'deformationSphere-mesh-hex-4-averageEquatorialSpacing',
            '$atmostests_builddir/deformationSphere-mesh-hex-4',
            'averageEquatorialSpacing.txt')

        self.hex8Spacing = siunitx.Ang(
            'deformationSphere-mesh-hex-8-averageEquatorialSpacing',
            '$atmostests_builddir/deformationSphere-mesh-hex-8',
            'averageEquatorialSpacing.txt')

        self.finestSpacing = siunitx.Ang(
            'deformationSphere-mesh-hex-9-averageEquatorialSpacing',
            '$atmostests_builddir/deformationSphere-mesh-hex-9',
            'averageEquatorialSpacing.txt')
    def __init__(self):
        self.lorenz = GmtPlotCopyCase(
                'arakawaKonor-horizontalGrading-lorenz',
                source='$atmostests_builddir',
                target='$builddir',
                plots=[
                    'src/mc-report-2017-12/theta_diff.gmtdict',
                    'src/mc-report-2017-12/theta_diffS.gmtdict'
                ],
                files=['0/theta_diff', '172800/theta_diff'])

        self.charneyPhillips = GmtPlotCopyCase(
                'arakawaKonor-horizontalGrading-cp',
                source='$atmostests_builddir',
                target='$builddir',
                plots=['src/mc-report-2017-12/theta_diffS.gmtdict'],
                files=['172800/theta_diff'])

        lorenzCase = Case('arakawaKonor-horizontalGrading-lorenz')
        charneyPhillipsCase = Case('arakawaKonor-horizontalGrading-cp')

        self.initialThetaDiff = GmtPlot(
            'arakawaKonor-initial-theta_diff',
            plot='theta_diff',
            case=lorenzCase,
            time=0,
            data=['0/theta_diff'],
            colorBar='legends/theta_diff.eps')

        self.lorenzThetaDiff = GmtPlot(
            'arakawaKonor-lorenz-theta_diff',
            plot='theta_diffS',
            case=lorenzCase,
            time=172800,
            data=['172800/theta_diff'])

        self.charneyPhillipsThetaDiff = GmtPlot(
            'arakawaKonor-cp-theta_diff',
            plot='theta_diffS',
            case=charneyPhillipsCase,
            time=172800,
            data=['172800/theta_diff'])

        self.thetaDiffFigure = PDFLaTeXFigure(
                'arakawaKonor-fig-thetaDiff',
                output=os.path.join('mc-report-2017-12/fig-arakawaKonor-thetaDiff'),
                figure=os.path.join('src/mc-report-2017-12/fig-arakawaKonor-thetaDiff'),
                components=self.initialThetaDiff.outputs() + \
                           self.lorenzThetaDiff.outputs() + \
                           self.charneyPhillipsThetaDiff.outputs()
        )

        self.conservation = Gnuplot(
                'arakawaKonor-conservation',
                output=os.path.join('mc-report-2017-12/arakawaKonor-conservation'),
                plot=os.path.join('src/mc-report-2017-12/arakawaKonor-conservation.plt'),
                data=[
                    '$atmostests_builddir/arakawaKonor-uniform-lorenz/energy.dat',
                    '$atmostests_builddir/arakawaKonor-uniform-cp/energy.dat',
                    '$atmostests_builddir/arakawaKonor-horizontalGrading-lorenz/energy.dat',
                    '$atmostests_builddir/arakawaKonor-horizontalGrading-cp/energy.dat',
                    '$atmostests_builddir/arakawaKonorAdvect-uniform-lorenz/energy.dat',
                    '$atmostests_builddir/arakawaKonorAdvect-uniform-cp/energy.dat',
                    '$atmostests_builddir/arakawaKonorAdvect-horizontalGrading-lorenz/energy.dat',
                    '$atmostests_builddir/arakawaKonorAdvect-horizontalGrading-cp/energy.dat'
                ]
        )