[aspect-devel] The output of nonadiabatic_temperature

Nan Zhang Nan.Zhang at colorado.edu
Thu Oct 27 19:54:59 PDT 2016


Hi Juliane,

When I run my new aspect, I got errors like
****************************************************
*** Timestep 100:  t=1.18035e+08 years
   Solving temperature system... 16 iterations.
   Solving C_1 system ... 16 iterations.
   Rebuilding Stokes preconditioner...
   Solving Stokes system...
   Postprocessing:
[125]PETSC ERROR: [127]PETSC ERROR: [126]PETSC ERROR:
------------------------------------------------------------------------
------------------------------------------------------------------------
------------------------------------------------------------------------
[127]PETSC ERROR: [126]PETSC ERROR: [125]PETSC ERROR: Caught signal number
11 SEGV: Segmentation Violation, probably memory access out of range
Caught signal number 11 SEGV: Segmentation Violation, probably memory
access out of range
Caught signal number 11 SEGV: Segmentation Violation, probably memory
access out of range
[126]PETSC ERROR: [127]PETSC ERROR: [125]PETSC ERROR: Try option
-start_in_debugger or -on_error_attach_debugger
Try option -start_in_debugger or -on_error_attach_debugger
Try option -start_in_debugger or -on_error_attach_debugger
[126]PETSC ERROR: [127]PETSC ERROR: [125]PETSC ERROR: or see
http://www.mcs.anl.gov/petsc/documentation/faq.html#valgrind
or see http://www.mcs.anl.gov/petsc/documentation/faq.html#valgrind
or see http://www.mcs.anl.gov/petsc/documentation/faq.html#valgrind
[124]PETSC ERROR: [113]PETSC ERROR: [126]PETSC ERROR: [107]PETSC ERROR:
[110]PETSC ERROR: [109]PETSC ERROR: [104]PETSC ERROR:
------------------------------------------------------------------------
[35]PETSC ERROR: [43]PETSC ERROR:
------------------------------------------------------------------------
[35]PETSC ERROR: Caught signal number 11 SEGV: Segmentation Violation,
probably memory access out of range
[35]PETSC ERROR:
------------------------------------------------------------------------
[110]PETSC ERROR: [109]PETSC ERROR: [103]PETSC ERROR: Caught signal number
11 SEGV: Segmentation Violation, probably memory access out of range
Caught signal number 11 SEGV: Segmentation Violation, probably memory
access out of range
------------------------------------------------------------------------
[106]PETSC ERROR: [99]PETSC ERROR: [110]PETSC ERROR: [108]PETSC ERROR:
[96]PETSC ERROR:
------------------------------------------------------------------------
[103]PETSC ERROR:
------------------------------------------------------------------------
[99]PETSC ERROR: [111]PETSC ERROR: Try option -start_in_debugger or
-on_error_attach_debugger
[109]PETSC ERROR: [106]PETSC ERROR: Try option -start_in_debugger or
-on_error_attach_debugger
[110]PETSC ERROR: [109]PETSC ERROR:
------------------------------------------------------------------------
Caught signal number 11 SEGV: Segmentation Violation, probably memory
access out of range
Caught signal number 11 SEGV: Segmentation Violation, probably memory
access out of range
Caught signal number 11 SEGV: Segmentation Violation, probably memory
access out of range
or see http://www.mcs.anl.gov/petsc/documentation/faq.html#valgrind
------------------------------------------------------------------------
[110]PETSC ERROR: or see
http://www.mcs.anl.gov/petsc/documentation/faq.html#valgrind
[111]PETSC ERROR: or try http://valgrind.org on GNU/linux and Apple Mac OS
X to find memory corruption errors
Caught signal number 11 SEGV: Segmentation Violation, probably memory
access out of range
[108]PETSC ERROR: [109]PETSC ERROR: [106]PETSC ERROR: [99]PETSC ERROR:
[111]PETSC ERROR: Try option -start_in_debugger or
-on_error_attach_debugger
Try option -start_in_debugger or -on_error_attach_debugger
Caught signal number 11 SEGV: Segmentation Violation, probably memory
access out of range
…
Note: The EXACT line numbers in the stack are not available,
[80]PETSC ERROR:       INSTEAD the line number of the start of the function
[80]PETSC ERROR:       is given.
^[[1;31mRank 89 [Fri Oct 28 03:20:22 2016] [c5-0c1s3n0] application called
MPI_Abort(MPI_COMM_WORLD, 59) - process 89
[80]PETSC ERROR: --------------------- Error Message
--------------------------------------------------------------
^[[0;39m^[[0;49m[80]PETSC ERROR: Signal received
...
****************************************************

I put my 3 modified file at
https://github.com/NanZHANG-cuboulder/aspect_development/. The
modifications are marked with nanzhang. I wonder if you guys could help me
find the problem?

Bests,
Nan

On Wed, Oct 26, 2016 at 2:08 AM, Juliane Dannberg <dannberg at gfz-potsdam.de>
wrote:

> Hi Nan,
>
>
> I spent a long time to understand the namespace in aspect, and finally
> defined a global array to transfer the average temperature
> into compute_derived_quantities_vector(). I passed the compiling, and am
> doing the calculation test.
>
> While, I still have a question for the virtual function compute_derived_quantities_vector().
> I found that it is never called directly either in the visualization or the
> simulator, by grep -r "compute_derived_quantities_vector" . under the
> source directory. I could guess where it is called in the visualization.cc.
> But, could you accurately point me where it is called. I want to understand
> the logic flow more clearly.
>
> In visualization.cc in the execute() function is where the data of the
> individual postprocessors is computed and added to the output. However,
> much of that happens within deal.ii. That is also why you don't find the
> call to the compute_derived_quantities_vector() function within the
> source directory of Aspect, it's called from deal.ii. I think
> compute_derived_quantities_vector() is called from
> data_out.build_patches() (line 439).  If you want to know more about how
> exactly that works, you can have a look at the documentation of the DataOut
> class in deal.ii.
>
> Best,
> Juliane
>
>
>
>
> On Tue, Oct 25, 2016 at 9:48 AM, Juliane Dannberg <dannberg at gfz-potsdam.de
> > wrote:
>
>> Hi Nan,
>>
>> from what I see, you might have declared your ave_temp vector in a place
>> that you can not access from where you want to use it (in your
>> postprocessor). You declared it within the Visualization class, and try to
>> access it in a different class (which is also not derived from
>> Visualization).
>>
>> So you probably would want to declare and fill your average temperature
>> vector in a different place in the code. The Visualization class is used
>> just to generate graphical output for all visualization postprocessors, and
>> it doesn't compute any of the output quantities for the individual
>> postprocessors.
>>
>> So the very easy to implement (but also very slow) option would be to
>> call the function that does the lateral averaging directly within
>> compute_derived_quantities_vector().
>>
>> Alternatively, you could have a look at the "Dynamic Topography"
>> postprocessor that demonstrates how you would write a visualization
>> postprocessor that has to loop over all cells for the computation of the
>> output.
>>
>> In general, it is always helpful if you send the whole patch (or a link
>> to a version of the code that reproduces the error, e.g. on github) because
>> then we can reproduce the error and it's easier to fix it.
>>
>> Best,
>> Juliane
>>
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.geodynamics.org/pipermail/aspect-devel/attachments/20161028/2e3f810d/attachment-0001.html>


More information about the Aspect-devel mailing list