/[escript]/trunk/downunder/test/python/run_gravity.py
ViewVC logotype

Contents of /trunk/downunder/test/python/run_gravity.py

Parent Directory Parent Directory | Revision Log Revision Log


Revision 4213 - (show annotations)
Tue Feb 19 01:16:29 2013 UTC (6 years, 9 months ago) by caltinay
File MIME type: text/x-python
File size: 2151 byte(s)
Some cleanup and more consistent logging.

1
2 ##############################################################################
3 #
4 # Copyright (c) 2003-2013 by University of Queensland
5 # http://www.uq.edu.au
6 #
7 # Primary Business: Queensland, Australia
8 # Licensed under the Open Software License version 3.0
9 # http://www.opensource.org/licenses/osl-3.0.php
10 #
11 # Development until 2012 by Earth Systems Science Computational Center (ESSCC)
12 # Development since 2012 by School of Earth Sciences
13 #
14 ##############################################################################
15
16 __copyright__="""Copyright (c) 2003-2013 by University of Queensland
17 http://www.uq.edu.au
18 Primary Business: Queensland, Australia"""
19 __license__="""Licensed under the Open Software License version 3.0
20 http://www.opensource.org/licenses/osl-3.0.php"""
21 __url__="https://launchpad.net/escript-finley"
22
23 import os
24 from esys.downunder import *
25 from esys.escript import unitsSI as U
26 from esys.weipa import saveSilo
27
28
29 try:
30 WORKDIR=os.environ['DOWNUNDER_WORKDIR']
31 except KeyError:
32 WORKDIR='.'
33
34 features=[SmoothAnomaly(lx=30*U.km, ly=20*U.km, lz=18.*U.km, \
35 x=22*U.km, y=3*U.km, depth=10*U.km, v_inner=200., v_outer=1e-6),\
36 SmoothAnomaly(lx=25*U.km, ly=20*U.km, lz=20*U.km,
37 x=40*U.km, y=1*U.km, depth=22*U.km, v_inner=-500., v_outer=1e-6),\
38 SmoothAnomaly(lx=30*U.km, ly=20*U.km, lz=18.*U.km, \
39 x=68*U.km, y=3*U.km, depth=13*U.km, v_inner=200., v_outer=1e-6)]
40
41 source=SyntheticFeatureData(DataSource.GRAVITY, DIM=2, number_of_elements=220, length=100*U.km, features=features)
42 domainbuilder=DomainBuilder(dim=2)
43 domainbuilder.addSource(source)
44 domainbuilder.setElementPadding(20)
45 domainbuilder.setVerticalExtents(depth=50*U.km, air_layer=20*U.km, num_cells=25)
46
47 inv=GravityInversion()
48 inv.setup(domainbuilder)
49 inv.setSolverTolerance(1e-4)
50 inv.setSolverMaxIterations(40)
51 inv.getCostFunction().setTradeOffFactorsModels(10)
52
53 rho_new=inv.run()
54 print("rho_new = %s"%rho_new)
55 print("rho = %s"%source.getReferenceProperty())
56 g, chi = inv.getCostFunction().getForwardModel().getSurvey(0)
57 saveSilo(os.path.join(WORKDIR, 'gravinv'), density=rho_new, density_ref=source.getReferenceProperty(), g=g, chi=chi)
58

  ViewVC Help
Powered by ViewVC 1.1.26