/[escript]/trunk/doc/examples/cookbook/example01a.py
ViewVC logotype

Annotation of /trunk/doc/examples/cookbook/example01a.py

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2648 - (hide annotations)
Mon Sep 7 00:06:15 2009 UTC (10 years, 1 month ago) by jfenwick
Original Path: trunk/doc/examples/cookbook/onedheatdiff.py
File MIME type: text/x-python
File size: 2618 byte(s)
ecording some changes related to Anthony's cookbook.
These tests still do not run.

test_heatref.py is the current problem.
Current problems include:
undefined symbols
a dependence on X somehow.

I've already addressed the matplotlib X thing somewhere else.
Find and apply.


1 ahallam 2392
2     ########################################################
3     #
4     # Copyright (c) 2003-2009 by University of Queensland
5     # Earth Systems Science Computational Center (ESSCC)
6     # http://www.uq.edu.au/esscc
7     #
8     # Primary Business: Queensland, Australia
9     # Licensed under the Open Software License version 3.0
10     # http://www.opensource.org/licenses/osl-3.0.php
11     #
12     ########################################################
13    
14     __copyright__="""Copyright (c) 2003-2009 by University of Queensland
15     Earth Systems Science Computational Center (ESSCC)
16     http://www.uq.edu.au/esscc
17     Primary Business: Queensland, Australia"""
18     __license__="""Licensed under the Open Software License version 3.0
19     http://www.opensource.org/licenses/osl-3.0.php"""
20     __url__="https://launchpad.net/escript-finley"
21    
22     """
23     Author: Antony Hallam antony.hallam@uqconnect.edu.au
24     """
25    
26     # To solve the problem it is necessary to import the modules we require.
27     from esys.escript import * # This imports everything from the escript library
28     from esys.escript.linearPDEs import LinearPDE # This defines LinearPDE as LinearPDE
29     from esys.finley import Rectangle # This imports the rectangle domain function from finley
30     import os #This package is necessary to handle saving our data.
31 jfenwick 2648 from cblib import needdirs
32 ahallam 2392
33    
34     ##ESTABLISHING VARIABLES
35     #PDE related
36     q=50.e6 #our heat source temperature
37     Tref=0. #the starting temperature of our iron bar
38     rho=2.6e6
39 ahallam 2397 eta=0#75.
40 ahallam 2392 kappa=240.
41     #Script/Iteration Related
42     t=0 #our start time, usually zero
43     tend=5.#the time we want to end the simulation
44     h=0.05 #size of time step
45    
46     print "Expected Number of Output Files is: ", (tend-t)/h
47    
48     i=0 #loop counter
49     save_path = "data/onedheatdiff" #the folder to put our outputs in, leave blank "" for script path - note this folder path must exist to work
50 jfenwick 2648 needdirs([save_path])
51 ahallam 2392
52     #... generate domain ...
53     rod = Rectangle(l0=0.05,l1=.01,n0=500, n1=1)
54     # extract finite points
55 ahallam 2397 x=rod.getX()
56 ahallam 2392 #... open PDE ...
57     mypde=LinearPDE(rod)
58     mypde.setSymmetryOn()
59     mypde.setValue(A=kappa*kronecker(rod),D=rho/h,d=eta,y=eta*Tref)
60     # ... set heat source: ....
61    
62     qH=q*whereZero(x[0])
63     # ... set initial temperature ....
64     T=Tref
65    
66     # ... start iteration:
67     while t<=tend:
68     i+=1
69     t+=h
70 ahallam 2397 mypde.setValue(Y=qH+rho/h*T)
71 ahallam 2392 T=mypde.getSolution()
72     print T
73 caltinay 2534 saveVTK(os.path.join(save_path,"data%03d.vtu") %i,sol=T)
74 ahallam 2392
75 ahallam 2597 #~ command = ('mencoder',
76     #~ 'mf://*.png',
77     #~ '-mf',
78     #~ 'type=png:w=800:h=600:fps=25',
79     #~ '-ovc',
80     #~ 'lavc',
81     #~ '-lavcopts',
82     #~ 'vcodec=mpeg4',
83     #~ '-oac',
84     #~ 'copy',
85     #~ '-o',
86     #~ 'output.avi')
87 ahallam 2392

  ViewVC Help
Powered by ViewVC 1.1.26