On Sun, Aug 26, 2012 at 8:42 PM, Colin McAuliffe <span dir="ltr"><<a href="mailto:cjm2176@columbia.edu" target="_blank">cjm2176@columbia.edu</a>></span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Im getting segmentation faults when I call PetscSectionSetChart, gdb is telling me this:<br>
<br>
Program received signal EXC_BAD_ACCESS, Could not access memory.<br>
Reason: 13 at address: 0x0000000000000000<br>
0x00000001005f9585 in PetscTrFreeDefault (aa=0x4008000000000000, line=296, function=0x1016bd470 "PetscSectionSetChart",<br>
file=0x1016bcbb8 "/Users/christina/Desktop/<u></u>COLIN/Work/petsc-dev/src/vec/<u></u>vec/impls/seq/vsection.c", dir=0x1016bca50 "")<br>
at /Users/christina/Desktop/<u></u>COLIN/Work/petsc-dev/src/sys/<u></u>memory/mtr.c:279<br>
279 if (head->classid != CLASSID_VALUE) {<br>
(gdb) ba<br>
#0 0x00000001005f9585 in PetscTrFreeDefault (aa=0x4008000000000000, line=296, function=0x1016bd470 "PetscSectionSetChart",<br>
file=0x1016bcbb8 "/Users/christina/Desktop/<u></u>COLIN/Work/petsc-dev/src/vec/<u></u>vec/impls/seq/vsection.c", dir=0x1016bca50 "")<br>
at /Users/christina/Desktop/<u></u>COLIN/Work/petsc-dev/src/sys/<u></u>memory/mtr.c:279<br>
#1 0x000000010075120b in PetscSectionSetChart (s=0x102e06910, pStart=1, pEnd=0)<br>
at /Users/christina/Desktop/<u></u>COLIN/Work/petsc-dev/src/vec/<u></u>vec/impls/seq/vsection.c:296<br>
#2 0x00000001006e99f3 in petscsectionsetchart_ (s=0x7fff5fbfee38, pStart=0x10165bc1c, pEnd=0x10165bc18, __ierr=0x7fff5fbfee4c)<br>
at /Users/christina/Desktop/<u></u>COLIN/Work/petsc-dev/src/vec/<u></u>vec/impls/seq/ftn-auto/<u></u>vsectionf.c:148<br>
#3 0x0000000100020c4c in setfs_ (fsind=<value temporarily unavailable, due to optimizations>,<br>
numfields=<value temporarily unavailable, due to optimizations>) at umacr8.F:96<br></blockquote><div><br></div><div>It looks like you never create the PetscSection in the call above. Can you send the code?</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Also, calling:<br>
<br>
call PetscSectionCreate(PETSC_COMM_<u></u>WORLD,sec,ierr)<br>
call PetscSectionGetChart(sec,<u></u>pStart,pEnd,ierr)<br>
<br>
returns pStart = 1 and pEnd = 0. Shouldn't PetscSectionCreate set pStart and pEnd to -1 and -1?<br></blockquote><div><br></div><div>Yes, that is true. I will create a Fortran example to check this.</div><div><br></div>
<div> Matt</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I am a bit stumped here, any idea what is going on?<br>
<br>
thanks<br>
Colin<br>
<br>
Quoting Matthew Knepley <<a href="mailto:knepley@gmail.com" target="_blank">knepley@gmail.com</a>>:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
On Mon, Aug 20, 2012 at 7:47 AM, Colin McAuliffe <<a href="mailto:cjm2176@columbia.edu" target="_blank">cjm2176@columbia.edu</a>>wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I am just not seeing where in the section such an IS would go. As far as I<br>
can tell from the functions in vsection.c, the only item in the section<br>
which is an IS is bcIndices, defining points where bcs are applied.<br>
<br>
</blockquote>
<br>
If you have no structure other than dof, you can make a Section where the<br>
points<br>
just number dofs. Then you just run through the ints p in your IS can call<br>
<br>
PetscSectionSetDof(section, p, 1)<br>
<br>
Then PetscSectionSetUp(). Stick this in a DMSHELL, or really any DM you<br>
want,<br>
and FS will use it.<br>
<br>
Matt<br>
<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
38 ierr = PetscNew(struct _n_PetscSection, s);CHKERRQ(ierr);<br>
39 (*s)->atlasLayout.comm = comm;<br>
40 (*s)->atlasLayout.pStart = -1;<br>
41 (*s)->atlasLayout.pEnd = -1;<br>
42 (*s)->atlasLayout.numDof = 1;<br>
43 (*s)->atlasDof = PETSC_NULL;<br>
44 (*s)->atlasOff = PETSC_NULL;<br>
45 (*s)->bc = PETSC_NULL;<br>
46 (*s)->bcIndices = PETSC_NULL;<br>
47 (*s)->setup = PETSC_FALSE;<br>
48 (*s)->numFields = 0;<br>
49 (*s)->fieldNames = PETSC_NULL;<br>
50 (*s)->field = PETSC_NULL;<br>
<br>
Quoting Matthew Knepley <<a href="mailto:knepley@gmail.com" target="_blank">knepley@gmail.com</a>>:<br>
<br>
On Mon, Aug 20, 2012 at 7:17 AM, Colin McAuliffe <<a href="mailto:cjm2176@columbia.edu" target="_blank">cjm2176@columbia.edu</a><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
>wrote:<br>
<br>
Yes, just call DMSetDefaultSection(). However, note that you will have<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
everything sized<br>
correctly, but handling topology and iteration for the residual<br>
calculation<br>
would be completely<br>
up to you.<br>
<br>
Matt<br>
<br>
<br>
</blockquote>
It would be really great to define the initial data layout using IS to<br>
define the equation numbers of the splits, while letting the new DM stuff<br>
handle creating all the nested splits given command line options. Is<br>
something like this possible?<br>
<br>
<br>
</blockquote>
This is just what I say above. Is something not working?<br>
<br>
Matt<br>
<br>
<br>
Colin<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Quoting Matthew Knepley <<a href="mailto:knepley@gmail.com" target="_blank">knepley@gmail.com</a>>:<br>
<br>
On Mon, Aug 13, 2012 at 4:06 PM, Colin McAuliffe <<a href="mailto:cjm2176@columbia.edu" target="_blank">cjm2176@columbia.edu</a><br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
>wrote:<br>
<br>
No, No, No. You do not have to write a DM implementation.<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
You just have to define the data layout in a PetscSection and attach<br>
it<br>
to<br>
the DM with DMSetDefaultSection.<br>
<br>
Matt<br>
<br>
<br>
Does use of the PetscSection mean that it is neccesary to define a<br>
</blockquote>
DMMesh?<br>
In other<br>
words is there a way to create the data layout for the physics without<br>
having to specify<br>
any information about the mesh?<br>
<br>
<br>
Yes, just call DMSetDefaultSection(). However, note that you will have<br>
</blockquote>
everything sized<br>
correctly, but handling topology and iteration for the residual<br>
calculation<br>
would be completely<br>
up to you.<br>
<br>
Matt<br>
<br>
<br>
Thanks<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Colin<br>
<br>
<br>
<br>
Quoting Matthew Knepley <<a href="mailto:knepley@gmail.com" target="_blank">knepley@gmail.com</a>>:<br>
<br>
On Thu, Aug 9, 2012 at 10:22 AM, Dmitry Karpeev <<a href="mailto:karpeev@mcs.anl.gov" target="_blank">karpeev@mcs.anl.gov</a>><br>
<br>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
<br>
<br>
On Thu, Aug 9, 2012 at 10:02 AM, Colin McAuliffe <<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<a href="mailto:cjm2176@columbia.edu" target="_blank">cjm2176@columbia.edu</a><br>
>wrote:<br>
<br>
Sanjay, thanks for the reply but I am avoiding using blocked format<br>
<br>
since<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
my problem has 10 dofs per node but only has either dofs 1-3 or 4-10<br>
active<br>
on a particular node. If I use block the equations I run out of<br>
memory<br>
pretty quickly on my machine but can get to reasonable sized<br>
problems<br>
with<br>
the unblocked format.<br>
<br>
Matt, sorry I am not getting this, but I am still not sure how the<br>
DM<br>
interface works. I can see in the function PCFieldSplitSetDefaults<br>
that<br>
there is an initial call to DMCreateFieldDecomposition and<br>
subsequent<br>
calls<br>
to DMCreateSubDM based on the command line options. What I am<br>
missing<br>
is<br>
how the first call to DMCreateFieldDecomposition is able to figure<br>
out<br>
which equations belong to which field just from command line info<br>
such<br>
as<br>
-pc_fieldsplit_0_fields 2,0. Where/how are the fields 2 and 0<br>
defined?<br>
<br>
This might change slightly in the near future in petsc-dev to allow<br>
<br>
one to<br>
</blockquote>
define splits using named fields.<br>
In any event, there has to be DM support to implement the<br>
decompositions<br>
over a particular mesh/problem over that mesh.<br>
With DMDA you can essentially get combinations of strided fields in<br>
each<br>
split. DMCOMPOSITE allows you<br>
to pull out combinations of the subproblems that were put in there to<br>
begin with. If you have your own mesh, you have to write<br>
a DM implementation around it to expose the available fields.<br>
<br>
<br>
No, No, No. You do not have to write a DM implementation.<br>
<br>
</blockquote>
<br>
You just have to define the data layout in a PetscSection and attach<br>
it<br>
to<br>
the DM with DMSetDefaultSection.<br>
<br>
Matt<br>
<br>
<br>
Dmitry.<br>
<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Thanks<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Colin<br>
<br>
<br>
Quoting Matthew Knepley <<a href="mailto:knepley@gmail.com" target="_blank">knepley@gmail.com</a>>:<br>
<br>
On Thu, Aug 9, 2012 at 9:21 AM, Sanjay Govindjee <<a href="mailto:s_g@berkeley.edu" target="_blank">s_g@berkeley.edu</a><br>
><br>
<br>
wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Colin,<br>
<br>
I you block the equations in FEAP, then the restrained BCs are<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
'included' in assembled PETSc matrix (these dofs have rows that<br>
are<br>
zero<br>
modulo a value of unity on the diagonal and the restrained value<br>
on<br>
the<br>
right-hand side).<br>
<br>
<br>
However, this is not necessary with the DM interface.<br>
<br>
<br>
</blockquote>
Matt<br>
<br>
<br>
-sg<br>
<br>
<br>
On 8/9/12 8:41 AM, Colin McAuliffe wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
From what I can gather from the petsc-dev source it looks like<br>
the<br>
<br>
commands in 4) will then generate the splits using strided<br>
blocks.<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
The<br>
problem with that is the fortran code I am using (FEAP) uses<br>
petsc<br>
to<br>
assemble and solve the linear problem within its own nonlinear<br>
and<br>
time<br>
stepping schemes. The linear problem that petsc solves already<br>
has<br>
boundary<br>
conditions applied to it so petsc only sees the active<br>
(unrestrained)<br>
equations. So then in general fields can't be extracted from the<br>
active<br>
equations using strided blocks and I am stuck with generating the<br>
index<br>
sets defining the splits on my own. Will it still be possible to<br>
make<br>
use<br>
of the new DM functions in this case?<br>
<br>
FEAP website:<br>
<a href="http://www.ce.berkeley.edu/**********projects/feap/" target="_blank">http://www.ce.berkeley.edu/***<u></u>*******projects/feap/</a><<a href="http://www.ce.berkeley.edu/********projects/feap/" target="_blank">http://<u></u>www.ce.berkeley.edu/********<u></u>projects/feap/</a>><br>
<http://**<a href="http://www.ce.berkeley.edu/********projects/feap/" target="_blank">www.ce.berkeley.edu/<u></u>********projects/feap/</a><<a href="http://www.ce.berkeley.edu/******projects/feap/" target="_blank">http://<u></u>www.ce.berkeley.edu/******<u></u>projects/feap/</a>><br>
><br>
<<a href="http://www." target="_blank">http://www.</a>**<a href="http://ce.berkeley.edu/******projects/**feap/" target="_blank">ce.berkeley.edu/<u></u>******projects/**feap/</a><<a href="http://ce.berkeley.edu/****projects/**feap/" target="_blank">http://<u></u>ce.berkeley.edu/****projects/*<u></u>*feap/</a>><br>
<http://**<a href="http://www.ce.berkeley.edu/******projects/feap/" target="_blank">www.ce.berkeley.edu/<u></u>******projects/feap/</a><<a href="http://www.ce.berkeley.edu/****projects/feap/" target="_blank">http://<u></u>www.ce.berkeley.edu/****<u></u>projects/feap/</a>><br>
><br>
><br>
<<a href="http://www.ce." target="_blank">http://www.ce.</a>**<a href="http://berkeley.edu/******projects/feap/" target="_blank">berkeley.edu/<u></u>******projects/feap/</a><<a href="http://berkeley.edu/****projects/feap/" target="_blank">http://<u></u>berkeley.edu/****projects/<u></u>feap/</a>><br>
<http://**<a href="http://berkeley.edu/**projects/feap/" target="_blank">berkeley.edu/**<u></u>projects/feap/</a><<a href="http://berkeley.edu/**projects/feap/" target="_blank">http://<u></u>berkeley.edu/**projects/feap/</a>><br>
><br>
<<a href="http://www." target="_blank">http://www.</a>**<a href="http://ce.berkeley.edu/****projects/**feap/" target="_blank">ce.berkeley.edu/<u></u>****projects/**feap/</a><<a href="http://ce.berkeley.edu/**projects/**feap/" target="_blank">http://<u></u>ce.berkeley.edu/**projects/**<u></u>feap/</a>><br>
<<a href="http://www." target="_blank">http://www.</a>**<a href="http://ce.berkeley.edu/**projects/**feap/" target="_blank">ce.berkeley.edu/<u></u>**projects/**feap/</a><<a href="http://www.ce.berkeley.edu/**projects/feap/" target="_blank">http://www.<u></u>ce.berkeley.edu/**projects/<u></u>feap/</a>><br>
><br>
><br>
><br>
<<a href="http://www.ce." target="_blank">http://www.ce.</a>**<a href="http://berkeley.edu/******projects/feap/" target="_blank">berkeley.edu/<u></u>******projects/feap/</a><<a href="http://berkeley.edu/****projects/feap/" target="_blank">http://<u></u>berkeley.edu/****projects/<u></u>feap/</a>><br>
<http://**<a href="http://berkeley.edu/**projects/feap/" target="_blank">berkeley.edu/**<u></u>projects/feap/</a><<a href="http://berkeley.edu/**projects/feap/" target="_blank">http://<u></u>berkeley.edu/**projects/feap/</a>><br>
><br>
<http://**<a href="http://berkeley.edu/**projects/feap/" target="_blank">berkeley.edu/**<u></u>projects/feap/</a><<a href="http://berkeley.edu/projects/feap/" target="_blank">http://<u></u>berkeley.edu/projects/feap/</a>><br>
<http://**<a href="http://berkeley.edu/projects/feap/" target="_blank">berkeley.edu/<u></u>projects/feap/</a><<a href="http://berkeley.edu/projects/feap/" target="_blank">http://<u></u>berkeley.edu/projects/feap/</a>><br>
><br>
><br>
<<a href="http://www.ce." target="_blank">http://www.ce.</a>**<a href="http://berkeley.edu/****projects/feap/" target="_blank">berkeley.edu/<u></u>****projects/feap/</a><<a href="http://berkeley.edu/**projects/feap/" target="_blank">http://<u></u>berkeley.edu/**projects/feap/</a>><br>
<http://**<a href="http://berkeley.edu/projects/feap/" target="_blank">berkeley.edu/<u></u>projects/feap/</a><<a href="http://berkeley.edu/projects/feap/" target="_blank">http://<u></u>berkeley.edu/projects/feap/</a>><br>
><br>
<<a href="http://www.ce." target="_blank">http://www.ce.</a>**<a href="http://berkeley.edu/**projects/feap/" target="_blank">berkeley.edu/<u></u>**projects/feap/</a><<a href="http://berkeley.edu/projects/feap/" target="_blank">http://<u></u>berkeley.edu/projects/feap/</a>><br>
<<a href="http://www.ce." target="_blank">http://www.ce.</a>**<a href="http://berkeley.edu/projects/feap/" target="_blank">berkeley.edu/<u></u>projects/feap/</a><<a href="http://www.ce.berkeley.edu/projects/feap/" target="_blank">http://www.ce.<u></u>berkeley.edu/projects/feap/</a>><br>
><br>
><br>
><br>
><br>
<br>
<br>
Colin<br>
<br>
<br>
Quoting Matthew Knepley <<a href="mailto:knepley@gmail.com" target="_blank">knepley@gmail.com</a>>:<br>
<br>
On Wed, Aug 8, 2012 at 10:51 PM, Matthew Knepley <<br>
<a href="mailto:knepley@gmail.com" target="_blank">knepley@gmail.com</a><br>
><br>
<br>
wrote:<br>
<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
On Wed, Aug 8, 2012 at 10:23 PM, Colin McAuliffe <<br>
<a href="mailto:cjm2176@columbia.edu" target="_blank">cjm2176@columbia.edu</a><br>
<br>
>wrote:<br>
<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Thanks all, regarding use of DM in 3.3, is the procedure now<br>
to<br>
create<br>
<br>
the fields with PCFieldSplitSetIS and then use<br>
<br>
DMCreateFieldDecompositionDM<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
to create a new DM based from the new fields and the DM for<br>
the<br>
original<br>
problem?<br>
<br>
<br>
1) Use petsc-dev<br>
<br>
<br>
2) PCFieldSplitSetIS() is independent. This allows you to<br>
</blockquote>
define<br>
splits<br>
however you want, but then recursive gets harder<br>
<br>
3) In 3.3., it uses DMCreateFieldDecompositionDM() to split all<br>
fields<br>
apart at once<br>
<br>
4) In petsc-dev, it uses DMCreateSubDM() which can split off<br>
any<br>
combination of fields, which from the command line is something<br>
like<br>
<br>
-pc_fieldsplit_0_fields 2,0 -pc_fieldsplit_1_fields 1,3<br>
<br>
<br>
I should have shown recursive:<br>
<br>
<br>
-fieldsplit_0_pc_type fieldsplit<br>
</blockquote>
<br>
will split 2,0 into two blocks.<br>
<br>
Matt<br>
<br>
<br>
Matt<br>
<br>
<br>
<br>
Colin<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
<br>
--<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Colin McAuliffe<br>
PhD Candidate<br>
Columbia University<br>
Department of Civil Engineering and Engineering Mechanics<br>
<br>
<br>
<br>
<br>
--<br>
<br>
</blockquote>
What most experimenters take for granted before they begin<br>
their<br>
experiments is infinitely more interesting than any results to<br>
which<br>
their<br>
experiments lead.<br>
-- Norbert Wiener<br>
<br>
<br>
<br>
<br>
--<br>
<br>
</blockquote>
What most experimenters take for granted before they begin their<br>
experiments is infinitely more interesting than any results to<br>
which<br>
their<br>
experiments lead.<br>
-- Norbert Wiener<br>
<br>
<br>
<br>
<br>
<br>
--<br>
</blockquote>
<br>
------------------------------<u></u>**********-----------------<br>
<br>
</blockquote>
<br>
Sanjay Govindjee, PhD, PE<br>
Professor of Civil Engineering<br>
Vice Chair for Academic Affairs<br>
<br>
779 Davis Hall<br>
Structural Engineering, Mechanics and Materials<br>
Department of Civil Engineering<br>
University of California<br>
Berkeley, CA 94720-1710<br>
<br>
Voice: <a href="tel:%2B1%20510%20642%206060" value="+15106426060" target="_blank">+1 510 642 6060</a><br>
FAX: <a href="tel:%2B1%20510%20643%205264" value="+15106435264" target="_blank">+1 510 643 5264</a><br>
<a href="mailto:s_g@berkeley.edu" target="_blank">s_g@berkeley.edu</a><br>
<a href="http://www.ce.berkeley.edu/~**********sanjay" target="_blank">http://www.ce.berkeley.edu/~**<u></u>********sanjay</a><<a href="http://www.ce.berkeley.edu/~********sanjay" target="_blank">http://www.ce.<u></u>berkeley.edu/~********sanjay</a>><br>
<<a href="http://www.ce." target="_blank">http://www.ce.</a>**<a href="http://berkeley.edu/~******sanjay" target="_blank">berkeley.edu/<u></u>~******sanjay</a><<a href="http://www.ce.berkeley.edu/~******sanjay" target="_blank">http://www.ce.<u></u>berkeley.edu/~******sanjay</a>><br>
><br>
<<a href="http://www.ce." target="_blank">http://www.ce.</a>**<a href="http://berkeley.edu/**~****sanjay" target="_blank">berkeley.edu/<u></u>**~****sanjay</a><<a href="http://berkeley.edu/~****sanjay" target="_blank">http://berkeley.<u></u>edu/~****sanjay</a>><br>
<<a href="http://www.ce." target="_blank">http://www.ce.</a>**<a href="http://berkeley.edu/~****sanjay" target="_blank">berkeley.edu/<u></u>~****sanjay</a><<a href="http://www.ce.berkeley.edu/~****sanjay" target="_blank">http://www.ce.<u></u>berkeley.edu/~****sanjay</a>><br>
><br>
><br>
<<a href="http://www.ce." target="_blank">http://www.ce.</a>**<a href="http://berkeley.edu/****~**sanjay" target="_blank">berkeley.edu/<u></u>****~**sanjay</a><<a href="http://berkeley.edu/**~**sanjay" target="_blank">http://berkeley.<u></u>edu/**~**sanjay</a>><br>
<<a href="http://berkeley." target="_blank">http://berkeley.</a>**edu/~**<u></u>sanjay <<a href="http://berkeley.edu/~**sanjay" target="_blank">http://berkeley.edu/~**sanjay</a><u></u>>><br>
<<a href="http://www.ce." target="_blank">http://www.ce.</a>**<a href="http://berkeley.edu/**~**sanjay" target="_blank">berkeley.edu/<u></u>**~**sanjay</a><<a href="http://berkeley.edu/~**sanjay" target="_blank">http://berkeley.<u></u>edu/~**sanjay</a>><br>
<<a href="http://www.ce." target="_blank">http://www.ce.</a>**<a href="http://berkeley.edu/~**sanjay" target="_blank">berkeley.edu/<u></u>~**sanjay</a><<a href="http://www.ce.berkeley.edu/~**sanjay" target="_blank">http://www.ce.<u></u>berkeley.edu/~**sanjay</a>><br>
><br>
><br>
><<br>
<a href="http://www.ce.berkeley.edu/~********sanjay" target="_blank">http://www.ce.berkeley.edu/~**<u></u>******sanjay</a><<a href="http://www.ce.berkeley.edu/~******sanjay" target="_blank">http://www.ce.<u></u>berkeley.edu/~******sanjay</a>><br>
<<a href="http://www.ce." target="_blank">http://www.ce.</a>**<a href="http://berkeley.edu/~****sanjay" target="_blank">berkeley.edu/<u></u>~****sanjay</a><<a href="http://www.ce.berkeley.edu/~****sanjay" target="_blank">http://www.ce.<u></u>berkeley.edu/~****sanjay</a>><br>
><br>
<<a href="http://www.ce." target="_blank">http://www.ce.</a>**<a href="http://berkeley.edu/**~**sanjay" target="_blank">berkeley.edu/<u></u>**~**sanjay</a><<a href="http://berkeley.edu/~**sanjay" target="_blank">http://berkeley.<u></u>edu/~**sanjay</a>><br>
<<a href="http://www.ce." target="_blank">http://www.ce.</a>**<a href="http://berkeley.edu/~**sanjay" target="_blank">berkeley.edu/<u></u>~**sanjay</a><<a href="http://www.ce.berkeley.edu/~**sanjay" target="_blank">http://www.ce.<u></u>berkeley.edu/~**sanjay</a>><br>
><br>
><br>
<<a href="http://www.ce.berkeley." target="_blank">http://www.ce.berkeley.</a>**edu/<u></u>****~sanjay<<a href="http://www.ce." target="_blank">http://www.ce.</a>**<br>
<a href="http://berkeley.edu/~sanjay" target="_blank">berkeley.edu/~sanjay</a> <<a href="http://www.ce.berkeley.edu/~**sanjay" target="_blank">http://www.ce.berkeley.edu/~*<u></u>*sanjay</a><<a href="http://www.ce.berkeley.edu/~sanjay" target="_blank">http://www.ce.<u></u>berkeley.edu/~sanjay</a>><br>
>><br>
><br>
><br>
------------------------------<u></u>**********-----------------<br>
<br>
<br>
<br>
<br>
--<br>
<br>
</blockquote>
What most experimenters take for granted before they begin their<br>
experiments is infinitely more interesting than any results to<br>
which<br>
their<br>
experiments lead.<br>
-- Norbert Wiener<br>
<br>
<br>
<br>
<br>
--<br>
</blockquote>
Colin McAuliffe<br>
PhD Candidate<br>
Columbia University<br>
Department of Civil Engineering and Engineering Mechanics<br>
<br>
<br>
<br>
<br>
</blockquote>
<br>
--<br>
</blockquote>
What most experimenters take for granted before they begin their<br>
experiments is infinitely more interesting than any results to which<br>
their<br>
experiments lead.<br>
-- Norbert Wiener<br>
<br>
<br>
<br>
<br>
</blockquote>
--<br>
Colin McAuliffe<br>
PhD Candidate<br>
Columbia University<br>
Department of Civil Engineering and Engineering Mechanics<br>
<br>
<br>
<br>
</blockquote>
<br>
--<br>
What most experimenters take for granted before they begin their<br>
experiments is infinitely more interesting than any results to which<br>
their<br>
experiments lead.<br>
-- Norbert Wiener<br>
<br>
<br>
<br>
</blockquote>
<br>
--<br>
Colin McAuliffe<br>
PhD Candidate<br>
Columbia University<br>
Department of Civil Engineering and Engineering Mechanics<br>
<br>
<br>
</blockquote>
<br>
<br>
--<br>
What most experimenters take for granted before they begin their<br>
experiments is infinitely more interesting than any results to which their<br>
experiments lead.<br>
-- Norbert Wiener<br>
<br>
<br>
</blockquote>
<br>
<br>
--<br>
Colin McAuliffe<br>
PhD Candidate<br>
Columbia University<br>
Department of Civil Engineering and Engineering Mechanics<br>
<br>
</blockquote>
<br>
<br><span class="HOEnZb"><font color="#888888">
<br>
--<br>
What most experimenters take for granted before they begin their<br>
experiments is infinitely more interesting than any results to which their<br>
experiments lead.<br>
-- Norbert Wiener<br>
<br>
</font></span></blockquote><span class="HOEnZb"><font color="#888888">
<br>
<br>
<br>
-- <br>
Colin McAuliffe<br>
PhD Candidate<br>
Columbia University<br>
Department of Civil Engineering and Engineering Mechanics<br>
</font></span></blockquote></div><br><br clear="all"><div><br></div>-- <br>What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>
-- Norbert Wiener<br>