source testlist.sh
PREVREVISION="`svn info deal.II | grep Revision | sed s/Revision://`"
-MAKECMD="nice make -j10"
+MAKECMD="nice make -j10 install"
+#MAKECMD="nice make -j10 optimized"
export MAKECMD
echo "testing $PREVREVISION"
-cd deal.II
echo "configure"
- ./configure --disable-threads --with-petsc=no || exit 2
+ cd build
+ cmake ../deal.II || exit 2
+ #./configure --disable-threads --with-petsc=no || exit 2
echo "compiling"
- $MAKECMD optimized || exit 3
+ $MAKECMD || exit 3
cd ..
-<head>
-</head>
-<body>
+<!DOCTYPE HTML>
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <title>deal.II regression timings</title>
+
+ <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
+
+<script src="http://code.highcharts.com/highcharts.js"></script>
+<script src="http://code.highcharts.com/modules/exporting.js"></script>
+
+<script>
+$(function () {
+ var chart;
+ $(document).ready(function() {
+ chart = new Highcharts.Chart({
+ chart: {
+ renderTo: 'container',
+ type: 'line',
+ marginRight: 250,
+ marginBottom: 25,
+ zoomType: 'x'
+ },
+ title: {
+ text: 'regression timings',
+ x: -20 //center
+ },
+ xAxis: {
+ },
+ yAxis: {
+ title: {
+ text: 'slowdown (%)'
+ },
+ plotLines: [{
+ value: 0,
+ width: 1,
+ color: '#808080'
+ }]
+ },
+ tooltip: {
+ formatter: function() {
+ return '<b>'+ this.series.name +'</b><br/>'+
+ this.y +'s' + ', rev ' + this.x;
+ }
+ },
+ legend: {
+ layout: 'vertical',
+ align: 'right',
+ verticalAlign: 'top',
+ x: -10,
+ y: 100,
+ borderWidth: 0
+ },
+
+ series: [
+
+{ name: 'tablehandler - write', data: [
+]}
+
+,
+{ name: 'test_assembly - assembly', data: [
+[27000,0.000000]
+, [27050,0.477327]
+, [27100,-0.238663]
+, [27150,-0.954654]
+, [27200,0.477327]
+, [27250,0.238663]
+, [27300,0.477327]
+, [27350,0.238663]
+, [27400,-0.238663]
+, [27450,-0.238663]
+, [27500,0.238663]
+, [27550,0.238663]
+, [27600,0.477327]
+, [27650,0.238663]
+, [27700,0.238663]
+, [27750,0.000000]
+, [27800,0.238663]
+, [27850,0.477327]
+, [27900,0.238663]
+, [27950,0.477327]
+, [28000,-0.238663]
+, [28050,0.238663]
+, [28100,100.000000]
+, [28150,97.852029]
+, [28200,98.806683]
+, [28250,0.238663]
+, [28300,0.238663]
+, [28350,0.477327]
+, [28400,0.477327]
+, [28450,0.238663]
+, [28500,0.238663]
+, [28550,0.238663]
+, [28600,0.715990]
+, [28650,0.238663]
+, [28700,0.954654]
+, [28725,0.954654]
+, [28750,0.954654]
+, [28775,0.477327]
+, [28800,0.954654]
+, [28825,-0.238663]
+, [28850,0.715990]
+, [28875,0.954654]
+, [28900,1.193317]
+, [28925,1.431981]
+, [28950,0.954654]
+, [28975,1.193317]
+, [29000,-1.193317]
+, [29025,0.954654]
+, [29050,0.954654]
+, [29075,1.193317]
+, [29100,1.193317]
+, [29125,1.431981]
+, [29150,1.193317]
+, [29175,1.431981]
+, [29200,1.193317]
+, [29225,1.431981]
+, [29250,0.954654]
+, [29275,0.715990]
+, [29300,0.954654]
+, [29325,1.193317]
+, [29350,1.670644]
+, [29375,1.193317]
+, [29400,0.954654]
+, [29425,0.954654]
+, [29450,0.715990]
+, [29475,1.193317]
+, [29500,0.954654]
+, [29525,1.193317]
+, [29550,1.431981]
+, [29575,0.954654]
+, [29600,0.954654]
+, [29625,0.954654]
+, [29650,1.193317]
+, [29675,1.193317]
+, [29700,1.193317]
+, [29725,1.193317]
+, [29750,0.954654]
+, [29775,0.954654]
+, [29800,0.954654]
+, [29825,0.954654]
+, [29850,1.193317]
+, [29875,0.954654]
+, [29900,0.954654]
+, [29925,0.954654]
+, [29950,0.715990]
+, [29975,-1.193317]
+, [30000,0.954654]
+, [30025,1.431981]
+, [30050,1.193317]
+, [30075,0.954654]
+, [30100,0.715990]
+, [30125,0.000000]
+]}
+
+,
+{ name: 'test_assembly - copy sp', data: [
+[27000,-1.663202]
+, [27050,-0.831601]
+, [27100,-0.415800]
+, [27150,-7.692308]
+, [27200,-0.207900]
+, [27250,-0.623701]
+, [27300,0.207900]
+, [27350,-0.415800]
+, [27400,-0.623701]
+, [27450,-1.455301]
+, [27500,-0.623701]
+, [27550,-0.623701]
+, [27600,-0.831601]
+, [27650,-0.623701]
+, [27700,1.039501]
+, [27750,-4.158004]
+, [27800,-3.950104]
+, [27850,-0.623701]
+, [27900,-0.831601]
+, [27950,-2.286902]
+, [28000,-0.415800]
+, [28050,-0.623701]
+, [28100,-0.623701]
+, [28150,-0.415800]
+, [28200,-0.623701]
+, [28250,-1.247401]
+, [28300,-1.663202]
+, [28350,-0.623701]
+, [28400,-1.039501]
+, [28450,-5.197505]
+, [28500,-0.831601]
+, [28550,-0.623701]
+, [28600,-1.039501]
+, [28650,-7.276507]
+, [28700,-1.039501]
+, [28725,-1.247401]
+, [28750,-1.871102]
+, [28775,-1.663202]
+, [28800,-0.207900]
+, [28825,-4.781705]
+, [28850,-0.207900]
+, [28875,0.207900]
+, [28900,0.000000]
+, [28925,-0.415800]
+, [28950,0.207900]
+, [28975,-0.623701]
+, [29000,-14.968815]
+, [29025,-0.207900]
+, [29050,-0.623701]
+, [29075,-0.831601]
+, [29100,0.207900]
+, [29125,-0.831601]
+, [29150,-0.415800]
+, [29175,-1.039501]
+, [29200,-0.207900]
+, [29225,-0.831601]
+, [29250,-0.207900]
+, [29275,0.207900]
+, [29300,-0.207900]
+, [29325,-1.039501]
+, [29350,-0.207900]
+, [29375,-1.247401]
+, [29400,-0.623701]
+, [29425,-0.831601]
+, [29450,-1.039501]
+, [29475,-0.623701]
+, [29500,-0.415800]
+, [29525,-0.415800]
+, [29550,-0.207900]
+, [29575,-0.623701]
+, [29600,-0.207900]
+, [29625,-0.415800]
+, [29650,-0.623701]
+, [29675,0.000000]
+, [29700,-0.415800]
+, [29725,-0.831601]
+, [29750,-0.415800]
+, [29775,-0.623701]
+, [29800,-0.207900]
+, [29825,-1.039501]
+, [29850,-0.207900]
+, [29875,-1.871102]
+, [29900,-0.415800]
+, [29925,-1.247401]
+, [29950,-0.415800]
+, [29975,-8.523909]
+, [30000,-0.415800]
+, [30025,-0.415800]
+, [30050,-1.247401]
+, [30075,-0.207900]
+, [30100,-0.831601]
+, [30125,-1.039501]
+]}
+
+,
+{ name: 'test_assembly - create matrix and vectors', data: [
+[27000,-0.952381]
+, [27050,-2.857143]
+, [27100,-0.952381]
+, [27150,-5.142857]
+, [27200,-7.428571]
+, [27250,-0.952381]
+, [27300,-2.857143]
+, [27350,-0.952381]
+, [27400,-0.952381]
+, [27450,-0.952381]
+, [27500,-0.952381]
+, [27550,0.000000]
+, [27600,-0.952381]
+, [27650,-0.952381]
+, [27700,-1.904762]
+, [27750,-0.952381]
+, [27800,-0.952381]
+, [27850,-0.952381]
+, [27900,-0.952381]
+, [27950,-1.904762]
+, [28000,-1.904762]
+, [28050,-0.952381]
+, [28100,-0.952381]
+, [28150,-1.904762]
+, [28200,-0.952381]
+, [28250,-0.952381]
+, [28300,-1.904762]
+, [28350,-2.857143]
+, [28400,-2.857143]
+, [28450,-5.523810]
+, [28500,-2.857143]
+, [28550,-1.904762]
+, [28600,-0.952381]
+, [28650,-1.904762]
+, [28700,-1.904762]
+, [28725,-0.952381]
+, [28750,-1.904762]
+, [28775,-0.952381]
+, [28800,-0.952381]
+, [28825,-5.142857]
+, [28850,-0.952381]
+, [28875,-0.952381]
+, [28900,-0.952381]
+, [28925,-1.904762]
+, [28950,-1.904762]
+, [28975,-0.952381]
+, [29000,-5.142857]
+, [29025,-1.904762]
+, [29050,-0.952381]
+, [29075,-1.904762]
+, [29100,-0.952381]
+, [29125,-1.904762]
+, [29150,-0.952381]
+, [29175,0.000000]
+, [29200,-2.857143]
+, [29225,-0.952381]
+, [29250,-0.952381]
+, [29275,-2.857143]
+, [29300,-0.952381]
+, [29325,-1.904762]
+, [29350,-1.904762]
+, [29375,-0.952381]
+, [29400,-1.904762]
+, [29425,-1.904762]
+, [29450,-0.952381]
+, [29475,-2.857143]
+, [29500,-0.952381]
+, [29525,-2.857143]
+, [29550,-0.952381]
+, [29575,-0.952381]
+, [29600,-1.904762]
+, [29625,-0.952381]
+, [29650,-2.857143]
+, [29675,-0.952381]
+, [29700,-0.952381]
+, [29725,-0.952381]
+, [29750,-2.857143]
+, [29775,-1.904762]
+, [29800,-1.904762]
+, [29825,-1.904762]
+, [29850,-2.857143]
+, [29875,-0.952381]
+, [29900,-0.952381]
+, [29925,-1.904762]
+, [29950,-0.952381]
+, [29975,-6.285714]
+, [30000,-1.904762]
+, [30025,-2.857143]
+, [30050,-0.952381]
+, [30075,-2.857143]
+, [30100,-1.904762]
+, [30125,-3.809524]
+]}
+
+,
+{ name: 'test_assembly - distribute dofs', data: [
+[27000,0.444444]
+, [27050,-0.888889]
+, [27100,-1.333333]
+, [27150,-2.222222]
+, [27200,-4.888889]
+, [27250,-3.111111]
+, [27300,-1.333333]
+, [27350,0.888889]
+, [27400,4.000000]
+, [27450,4.000000]
+, [27500,4.444444]
+, [27550,3.555556]
+, [27600,3.111111]
+, [27650,4.000000]
+, [27700,4.000000]
+, [27750,4.444444]
+, [27800,4.444444]
+, [27850,6.666667]
+, [27900,3.555556]
+, [27950,2.222222]
+, [28000,3.111111]
+, [28050,4.000000]
+, [28100,2.666667]
+, [28150,3.111111]
+, [28200,3.111111]
+, [28250,3.555556]
+, [28300,3.555556]
+, [28350,3.555556]
+, [28400,4.000000]
+, [28450,3.111111]
+, [28500,4.000000]
+, [28550,3.111111]
+, [28600,3.555556]
+, [28650,1.777778]
+, [28700,3.111111]
+, [28725,2.222222]
+, [28750,3.111111]
+, [28775,0.888889]
+, [28800,4.000000]
+, [28825,3.555556]
+, [28850,3.111111]
+, [28875,4.000000]
+, [28900,3.111111]
+, [28925,2.666667]
+, [28950,4.444444]
+, [28975,5.333333]
+, [29000,3.111111]
+, [29025,4.888889]
+, [29050,3.111111]
+, [29075,6.222222]
+, [29100,3.111111]
+, [29125,5.333333]
+, [29150,3.555556]
+, [29175,5.777778]
+, [29200,4.000000]
+, [29225,4.000000]
+, [29250,4.888889]
+, [29275,3.555556]
+, [29300,4.444444]
+, [29325,2.666667]
+, [29350,3.555556]
+, [29375,4.888889]
+, [29400,3.555556]
+, [29425,4.000000]
+, [29450,4.000000]
+, [29475,4.000000]
+, [29500,4.444444]
+, [29525,4.000000]
+, [29550,4.000000]
+, [29575,4.888889]
+, [29600,4.000000]
+, [29625,3.555556]
+, [29650,4.888889]
+, [29675,4.444444]
+, [29700,4.444444]
+, [29725,3.111111]
+, [29750,3.555556]
+, [29775,3.555556]
+, [29800,2.666667]
+, [29825,3.111111]
+, [29850,4.000000]
+, [29875,3.555556]
+, [29900,4.888889]
+, [29925,4.888889]
+, [29950,3.555556]
+, [29975,4.000000]
+, [30000,4.444444]
+, [30025,2.666667]
+, [30050,4.888889]
+, [30075,3.111111]
+, [30100,3.555556]
+, [30125,-0.444444]
+]}
+
+,
+{ name: 'test_assembly - make csp', data: [
+[27000,8.045977]
+, [27050,1.915709]
+, [27100,7.024266]
+, [27150,12.388250]
+, [27200,12.132822]
+, [27250,13.665390]
+, [27300,4.469987]
+, [27350,-0.127714]
+, [27400,0.000000]
+, [27450,4.342273]
+, [27500,1.021711]
+, [27550,1.021711]
+, [27600,1.404853]
+, [27650,0.638570]
+, [27700,-1.149425]
+, [27750,0.127714]
+, [27800,0.383142]
+, [27850,4.214559]
+, [27900,2.426564]
+, [27950,1.660281]
+, [28000,1.021711]
+, [28050,3.831418]
+, [28100,2.171137]
+, [28150,2.554278]
+, [28200,3.959132]
+, [28250,-0.638570]
+, [28300,0.766284]
+, [28350,0.893997]
+, [28400,2.171137]
+, [28450,1.149425]
+, [28500,0.383142]
+, [28550,0.766284]
+, [28600,0.127714]
+, [28650,1.915709]
+, [28700,0.766284]
+, [28725,2.043423]
+, [28750,0.127714]
+, [28775,0.766284]
+, [28800,13.665390]
+, [28825,13.154534]
+, [28850,13.665390]
+, [28875,12.388250]
+, [28900,13.409962]
+, [28925,11.877395]
+, [28950,13.154534]
+, [28975,12.388250]
+, [29000,9.833972]
+, [29025,13.154534]
+, [29050,13.026820]
+, [29075,11.877395]
+, [29100,12.899106]
+, [29125,13.282248]
+, [29150,13.282248]
+, [29175,13.793103]
+, [29200,11.621967]
+, [29225,12.132822]
+, [29250,12.388250]
+, [29275,12.643678]
+, [29300,12.005109]
+, [29325,10.855683]
+, [29350,12.643678]
+, [29375,13.537676]
+, [29400,13.026820]
+, [29425,11.749681]
+, [29450,12.643678]
+, [29475,10.983397]
+, [29500,13.537676]
+, [29525,12.899106]
+, [29550,12.899106]
+, [29575,12.643678]
+, [29600,11.238825]
+, [29625,13.537676]
+, [29650,12.132822]
+, [29675,11.877395]
+, [29700,12.515964]
+, [29725,13.920817]
+, [29750,12.643678]
+, [29775,13.537676]
+, [29800,12.260536]
+, [29825,10.600255]
+, [29850,11.877395]
+, [29875,13.409962]
+, [29900,12.643678]
+, [29925,13.409962]
+, [29950,12.132822]
+, [29975,12.260536]
+, [30000,11.877395]
+, [30025,12.771392]
+, [30050,12.132822]
+, [30075,14.303959]
+, [30100,0.638570]
+, [30125,1.404853]
+]}
+
+,
+{ name: 'test_assembly - refine', data: [
+[27000,-2.803738]
+, [27050,-1.401869]
+, [27100,0.000000]
+, [27150,-4.205607]
+, [27200,-5.607477]
+, [27250,-3.271028]
+, [27300,-3.271028]
+, [27350,-2.336449]
+, [27400,-1.869159]
+, [27450,-3.271028]
+, [27500,-0.934579]
+, [27550,-1.401869]
+, [27600,-2.336449]
+, [27650,-2.803738]
+, [27700,-0.934579]
+, [27750,-4.672897]
+, [27800,-1.869159]
+, [27850,-3.271028]
+, [27900,-2.803738]
+, [27950,-2.803738]
+, [28000,-2.336449]
+, [28050,-2.803738]
+, [28100,-2.803738]
+, [28150,-3.271028]
+, [28200,-2.803738]
+, [28250,-3.271028]
+, [28300,-4.672897]
+, [28350,-3.271028]
+, [28400,-5.607477]
+, [28450,-4.205607]
+, [28500,-2.336449]
+, [28550,-5.140187]
+, [28600,-1.869159]
+, [28650,-2.803738]
+, [28700,-3.738318]
+, [28725,-4.672897]
+, [28750,-4.672897]
+, [28775,-1.869159]
+, [28800,-3.738318]
+, [28825,-5.140187]
+, [28850,-4.672897]
+, [28875,-4.672897]
+, [28900,-5.607477]
+, [28925,-3.738318]
+, [28950,-3.738318]
+, [28975,-3.271028]
+, [29000,-5.607477]
+, [29025,-4.672897]
+, [29050,-4.672897]
+, [29075,-5.140187]
+, [29100,-4.205607]
+, [29125,-4.672897]
+, [29150,-3.738318]
+, [29175,-4.672897]
+, [29200,-5.607477]
+, [29225,-3.738318]
+, [29250,-3.738318]
+, [29275,-4.205607]
+, [29300,-3.738318]
+, [29325,-5.607477]
+, [29350,-4.205607]
+, [29375,-4.672897]
+, [29400,-4.672897]
+, [29425,-4.672897]
+, [29450,-3.738318]
+, [29475,-5.607477]
+, [29500,-4.205607]
+, [29525,-4.672897]
+, [29550,-5.140187]
+, [29575,-5.140187]
+, [29600,-5.607477]
+, [29625,-4.205607]
+, [29650,-3.738318]
+, [29675,-6.074766]
+, [29700,-5.607477]
+, [29725,-5.607477]
+, [29750,-3.738318]
+, [29775,-5.140187]
+, [29800,-5.140187]
+, [29825,-4.205607]
+, [29850,-4.205607]
+, [29875,-2.336449]
+, [29900,-4.672897]
+, [29925,-4.205607]
+, [29950,-4.205607]
+, [29975,-6.542056]
+, [30000,-4.205607]
+, [30025,-4.672897]
+, [30050,-4.205607]
+, [30075,-4.672897]
+, [30100,-2.803738]
+, [30125,-2.803738]
+]}
+
+,
+{ name: 'test_assembly - renumbering', data: [
+[27000,0.000000]
+, [27050,-0.187617]
+, [27100,0.187617]
+, [27150,-1.313321]
+, [27200,0.000000]
+, [27250,0.187617]
+, [27300,0.187617]
+, [27350,0.000000]
+, [27400,0.000000]
+, [27450,0.375235]
+, [27500,-0.187617]
+, [27550,0.000000]
+, [27600,0.000000]
+, [27650,-0.187617]
+, [27700,0.000000]
+, [27750,-0.375235]
+, [27800,0.000000]
+, [27850,0.375235]
+, [27900,0.000000]
+, [27950,-0.375235]
+, [28000,0.000000]
+, [28050,-0.187617]
+, [28100,0.000000]
+, [28150,-0.187617]
+, [28200,-0.375235]
+, [28250,0.187617]
+, [28300,-0.375235]
+, [28350,-0.375235]
+, [28400,0.000000]
+, [28450,0.000000]
+, [28500,-0.375235]
+, [28550,-1.125704]
+, [28600,0.375235]
+, [28650,-0.938086]
+, [28700,0.187617]
+, [28725,-0.938086]
+, [28750,0.000000]
+, [28775,0.375235]
+, [28800,3.939962]
+, [28825,3.564728]
+, [28850,4.127580]
+, [28875,3.939962]
+, [28900,3.377111]
+, [28925,3.939962]
+, [28950,3.752345]
+, [28975,3.939962]
+, [29000,2.439024]
+, [29025,3.564728]
+, [29050,3.939962]
+, [29075,3.939962]
+, [29100,3.939962]
+, [29125,3.752345]
+, [29150,3.939962]
+, [29175,3.939962]
+, [29200,3.752345]
+, [29225,3.752345]
+, [29250,3.752345]
+, [29275,3.752345]
+, [29300,3.564728]
+, [29325,3.939962]
+, [29350,3.752345]
+, [29375,3.752345]
+, [29400,3.939962]
+, [29425,3.752345]
+, [29450,3.752345]
+, [29475,3.564728]
+, [29500,3.564728]
+, [29525,3.752345]
+, [29550,3.939962]
+, [29575,3.752345]
+, [29600,3.564728]
+, [29625,3.752345]
+, [29650,3.564728]
+, [29675,3.752345]
+, [29700,3.564728]
+, [29725,3.564728]
+, [29750,3.939962]
+, [29775,3.564728]
+, [29800,3.564728]
+, [29825,3.939962]
+, [29850,3.752345]
+, [29875,3.564728]
+, [29900,3.752345]
+, [29925,3.939962]
+, [29950,3.564728]
+, [29975,3.564728]
+, [30000,3.377111]
+, [30025,3.564728]
+, [30050,3.752345]
+, [30075,3.752345]
+, [30100,1.876173]
+, [30125,0.000000]
+]}
+
+,
+{ name: 'test_assembly - setup constraints', data: [
+[27000,0.793651]
+, [27050,-2.380952]
+, [27100,-3.174603]
+, [27150,-3.174603]
+, [27200,-1.587302]
+, [27250,-4.761905]
+, [27300,-3.174603]
+, [27350,-1.587302]
+, [27400,-1.587302]
+, [27450,-3.174603]
+, [27500,-3.968254]
+, [27550,-3.968254]
+, [27600,-2.380952]
+, [27650,-3.174603]
+, [27700,-1.587302]
+, [27750,-3.174603]
+, [27800,0.000000]
+, [27850,-4.761905]
+, [27900,-4.761905]
+, [27950,-3.968254]
+, [28000,-1.587302]
+, [28050,-3.174603]
+, [28100,-1.587302]
+, [28150,-4.761905]
+, [28200,-4.761905]
+, [28250,-2.380952]
+, [28300,-2.380952]
+, [28350,-1.587302]
+, [28400,-1.587302]
+, [28450,0.000000]
+, [28500,-3.174603]
+, [28550,-3.174603]
+, [28600,-3.174603]
+, [28650,-3.174603]
+, [28700,-3.174603]
+, [28725,-1.587302]
+, [28750,-1.587302]
+, [28775,-6.349206]
+, [28800,0.000000]
+, [28825,-0.793651]
+, [28850,0.793651]
+, [28875,-0.793651]
+, [28900,2.380952]
+, [28925,-1.587302]
+, [28950,-0.793651]
+, [28975,0.000000]
+, [29000,-5.555556]
+, [29025,0.000000]
+, [29050,0.000000]
+, [29075,0.793651]
+, [29100,0.793651]
+, [29125,3.174603]
+, [29150,1.587302]
+, [29175,-0.793651]
+, [29200,-0.793651]
+, [29225,0.000000]
+, [29250,0.000000]
+, [29275,0.000000]
+, [29300,0.000000]
+, [29325,0.793651]
+, [29350,3.174603]
+, [29375,0.000000]
+, [29400,-0.793651]
+, [29425,3.174603]
+, [29450,0.000000]
+, [29475,-0.793651]
+, [29500,1.587302]
+, [29525,2.380952]
+, [29550,-2.380952]
+, [29575,0.793651]
+, [29600,0.793651]
+, [29625,0.000000]
+, [29650,-2.380952]
+, [29675,0.793651]
+, [29700,0.793651]
+, [29725,1.587302]
+, [29750,3.174603]
+, [29775,-1.587302]
+, [29800,0.793651]
+, [29825,0.000000]
+, [29850,1.587302]
+, [29875,2.380952]
+, [29900,-1.587302]
+, [29925,3.174603]
+, [29950,2.380952]
+, [29975,-1.587302]
+, [30000,1.587302]
+, [30025,0.000000]
+, [30050,0.000000]
+, [30075,0.793651]
+, [30100,-3.968254]
+, [30125,-0.793651]
+]}
+
+,
+{ name: 'step-22 - assembly', data: [
+]}
+
+,
+{ name: 'step-22 - refine', data: [
+]}
+
+,
+{ name: 'step-22 - results', data: [
+]}
+
+,
+{ name: 'step-22 - setup', data: [
+]}
+
+,
+{ name: 'step-22 - solver', data: [
+[27000,-1.160862]
+, [27050,-1.492537]
+, [27100,-1.824212]
+, [27150,-1.824212]
+, [27200,-1.326700]
+, [27250,-1.492537]
+, [27300,-1.326700]
+, [27350,-1.658375]
+, [27400,-1.990050]
+, [27450,-1.492537]
+, [27500,-1.492537]
+, [27550,-2.985075]
+, [27600,-1.658375]
+, [27650,-4.477612]
+, [27700,-2.487562]
+, [27750,-1.492537]
+, [27800,-1.326700]
+, [27850,-1.160862]
+, [27900,-1.326700]
+, [27950,-2.155887]
+, [28000,-4.145937]
+, [28050,-1.658375]
+, [28100,-2.155887]
+, [28150,-1.160862]
+, [28200,-1.160862]
+, [28250,-1.492537]
+, [28300,-1.326700]
+, [28350,-1.492537]
+, [28400,-1.326700]
+, [28450,-2.321725]
+, [28500,-2.155887]
+, [28550,-1.160862]
+, [28600,-2.155887]
+, [28650,-1.990050]
+, [28700,-1.326700]
+, [28725,-1.160862]
+, [28750,-1.326700]
+, [28775,-1.160862]
+, [28800,-0.165837]
+, [28825,0.497512]
+, [28850,-0.497512]
+, [28875,-1.658375]
+, [28900,-0.995025]
+, [28925,-0.829187]
+, [28950,-0.331675]
+, [28975,0.165837]
+, [29000,-8.126036]
+, [29025,-3.814262]
+, [29050,0.497512]
+, [29075,-1.658375]
+, [29100,-0.165837]
+, [29125,-0.331675]
+, [29150,0.497512]
+, [29175,-0.331675]
+, [29200,-0.497512]
+, [29225,0.000000]
+, [29250,0.000000]
+, [29275,0.331675]
+, [29300,0.000000]
+, [29325,0.165837]
+, [29350,-0.331675]
+, [29375,0.497512]
+, [29400,-0.497512]
+, [29425,0.000000]
+, [29450,-0.165837]
+, [29475,0.000000]
+, [29500,-0.497512]
+, [29525,0.165837]
+, [29550,0.331675]
+, [29575,0.165837]
+, [29600,-1.160862]
+, [29625,-0.497512]
+, [29650,-0.829187]
+, [29675,0.000000]
+, [29700,-0.497512]
+, [29725,-0.331675]
+, [29750,-0.663350]
+, [29775,-0.497512]
+, [29800,-0.663350]
+, [29825,-0.331675]
+, [29850,0.829187]
+, [29875,0.331675]
+, [29900,-0.165837]
+, [29925,-0.165837]
+, [29950,-0.165837]
+, [29975,0.000000]
+, [30000,0.165837]
+, [30025,0.331675]
+, [30050,0.165837]
+, [30075,0.165837]
+, [30100,-0.497512]
+, [30125,-0.663350]
+]}
+
+,
+{ name: 'test_poisson - 40 matrix-vector products', data: [
+[27000,1.440922]
+, [27050,-0.864553]
+, [27100,-0.288184]
+, [27150,1.440922]
+, [27200,-3.458213]
+, [27250,-1.729107]
+, [27300,-1.152738]
+, [27350,1.152738]
+, [27400,0.288184]
+, [27450,-0.288184]
+, [27500,0.000000]
+, [27550,-4.034582]
+, [27600,-0.288184]
+, [27650,-4.322767]
+, [27700,-0.576369]
+, [27750,0.576369]
+, [27800,0.576369]
+, [27850,-0.288184]
+, [27900,-1.152738]
+, [27950,-1.729107]
+, [28000,-0.288184]
+, [28050,-1.440922]
+, [28100,1.152738]
+, [28150,0.288184]
+, [28200,-6.916427]
+, [28250,-3.746398]
+, [28300,-10.374640]
+, [28350,-6.340058]
+, [28400,-4.034582]
+, [28450,-0.288184]
+, [28500,-3.170029]
+, [28550,-4.322767]
+, [28600,-0.288184]
+, [28650,-4.322767]
+, [28700,-3.170029]
+, [28725,0.576369]
+, [28750,-4.610951]
+, [28775,-0.576369]
+, [28800,-0.288184]
+, [28825,0.000000]
+, [28850,-0.864553]
+, [28875,-0.288184]
+, [28900,0.576369]
+, [28925,0.000000]
+, [28950,-0.288184]
+, [28975,0.288184]
+, [29000,-4.034582]
+, [29025,-0.288184]
+, [29050,-0.288184]
+, [29075,0.000000]
+, [29100,-0.576369]
+, [29125,0.000000]
+, [29150,-0.288184]
+, [29175,0.000000]
+, [29200,-0.576369]
+, [29225,-0.864553]
+, [29250,-0.288184]
+, [29275,0.288184]
+, [29300,-0.576369]
+, [29325,-2.017291]
+, [29350,-0.288184]
+, [29375,-0.288184]
+, [29400,0.000000]
+, [29425,-0.864553]
+, [29450,-0.864553]
+, [29475,0.864553]
+, [29500,-1.152738]
+, [29525,-0.288184]
+, [29550,0.000000]
+, [29575,-0.288184]
+, [29600,0.288184]
+, [29625,-0.288184]
+, [29650,0.000000]
+, [29675,0.000000]
+, [29700,0.000000]
+, [29725,-0.288184]
+, [29750,0.576369]
+, [29775,-1.729107]
+, [29800,-0.288184]
+, [29825,-0.576369]
+, [29850,0.288184]
+, [29875,-2.593660]
+, [29900,0.000000]
+, [29925,0.000000]
+, [29950,-0.576369]
+, [29975,0.000000]
+, [30000,-0.288184]
+, [30025,-1.152738]
+, [30050,-0.288184]
+, [30075,-0.288184]
+, [30100,0.864553]
+, [30125,1.152738]
+]}
+
+,
+{ name: 'test_poisson - setup mesh and matrix', data: [
+[27000,0.000000]
+, [27050,-2.777778]
+, [27100,0.925926]
+, [27150,2.777778]
+, [27200,0.000000]
+, [27250,1.851852]
+, [27300,-2.777778]
+, [27350,-2.777778]
+, [27400,0.000000]
+, [27450,-0.925926]
+, [27500,-3.703704]
+, [27550,-0.925926]
+, [27600,-0.925926]
+, [27650,-2.777778]
+, [27700,-0.925926]
+, [27750,-0.925926]
+, [27800,-0.925926]
+, [27850,0.000000]
+, [27900,-4.629630]
+, [27950,-3.703704]
+, [28000,-3.703704]
+, [28050,-1.851852]
+, [28100,-0.925926]
+, [28150,0.000000]
+, [28200,-1.851852]
+, [28250,-6.481481]
+, [28300,-6.481481]
+, [28350,-4.629630]
+, [28400,-2.777778]
+, [28450,-5.555556]
+, [28500,-0.925926]
+, [28550,-3.703704]
+, [28600,-3.703704]
+, [28650,-5.555556]
+, [28700,-2.777778]
+, [28725,0.000000]
+, [28750,-0.925926]
+, [28775,-0.925926]
+, [28800,2.777778]
+, [28825,1.851852]
+, [28850,1.851852]
+, [28875,1.851852]
+, [28900,2.777778]
+, [28925,1.851852]
+, [28950,2.777778]
+, [28975,2.777778]
+, [29000,-4.629630]
+, [29025,2.777778]
+, [29050,1.851852]
+, [29075,1.851852]
+, [29100,1.851852]
+, [29125,1.851852]
+, [29150,1.851852]
+, [29175,1.851852]
+, [29200,1.851852]
+, [29225,1.851852]
+, [29250,2.777778]
+, [29275,1.851852]
+, [29300,1.851852]
+, [29325,1.851852]
+, [29350,1.851852]
+, [29375,1.851852]
+, [29400,2.777778]
+, [29425,2.777778]
+, [29450,1.851852]
+, [29475,2.777778]
+, [29500,1.851852]
+, [29525,2.777778]
+, [29550,1.851852]
+, [29575,1.851852]
+, [29600,2.777778]
+, [29625,1.851852]
+, [29650,1.851852]
+, [29675,1.851852]
+, [29700,1.851852]
+, [29725,1.851852]
+, [29750,2.777778]
+, [29775,1.851852]
+, [29800,2.777778]
+, [29825,1.851852]
+, [29850,1.851852]
+, [29875,0.925926]
+, [29900,1.851852]
+, [29925,2.777778]
+, [29950,0.000000]
+, [29975,2.777778]
+, [30000,1.851852]
+, [30025,1.851852]
+, [30050,2.777778]
+, [30075,2.777778]
+, [30100,0.000000]
+, [30125,-0.925926]
+]}
+
+,
+{ name: 'test_poisson - write into matrix', data: [
+[27000,3.780718]
+, [27050,0.189036]
+, [27100,3.024575]
+, [27150,1.890359]
+, [27200,1.890359]
+, [27250,3.591682]
+, [27300,1.134216]
+, [27350,3.024575]
+, [27400,3.024575]
+, [27450,0.756144]
+, [27500,3.402647]
+, [27550,2.457467]
+, [27600,3.780718]
+, [27650,3.402647]
+, [27700,2.646503]
+, [27750,2.457467]
+, [27800,2.835539]
+, [27850,3.402647]
+, [27900,3.969754]
+, [27950,3.024575]
+, [28000,0.189036]
+, [28050,3.780718]
+, [28100,813.043478]
+, [28150,824.385633]
+, [28200,826.275992]
+, [28250,1.323251]
+, [28300,-0.567108]
+, [28350,0.189036]
+, [28400,-0.756144]
+, [28450,0.756144]
+, [28500,0.378072]
+, [28550,1.701323]
+, [28600,0.567108]
+, [28650,0.945180]
+, [28700,0.378072]
+, [28725,1.890359]
+, [28750,0.378072]
+, [28775,0.945180]
+, [28800,3.969754]
+, [28825,2.835539]
+, [28850,3.402647]
+, [28875,4.158790]
+, [28900,5.482042]
+, [28925,5.293006]
+, [28950,4.158790]
+, [28975,3.780718]
+, [29000,1.890359]
+, [29025,3.591682]
+, [29050,4.158790]
+, [29075,5.671078]
+, [29100,3.213611]
+, [29125,4.347826]
+, [29150,4.347826]
+, [29175,4.914934]
+, [29200,5.671078]
+, [29225,3.024575]
+, [29250,6.049149]
+, [29275,5.860113]
+, [29300,5.482042]
+, [29325,3.780718]
+, [29350,3.591682]
+, [29375,5.482042]
+, [29400,4.158790]
+, [29425,3.591682]
+, [29450,3.591682]
+, [29475,3.402647]
+, [29500,5.482042]
+, [29525,3.969754]
+, [29550,5.860113]
+, [29575,4.158790]
+, [29600,3.780718]
+, [29625,2.835539]
+, [29650,5.103970]
+, [29675,3.780718]
+, [29700,3.780718]
+, [29725,3.780718]
+, [29750,5.482042]
+, [29775,3.024575]
+, [29800,5.103970]
+, [29825,3.591682]
+, [29850,3.213611]
+, [29875,3.213611]
+, [29900,3.969754]
+, [29925,3.591682]
+, [29950,3.780718]
+, [29975,3.780718]
+, [30000,5.103970]
+, [30025,3.780718]
+, [30050,5.482042]
+, [30075,4.347826]
+, [30100,1.323251]
+, [30125,3.024575]
+]}
+
+
+]
+ });
+setTimeout(function(){
+chart.xAxis[0].setExtremes(28000,chart.xAxis[0].getExtremes().dataMax);
+},1000);
+ });
+});
+
+
+</script>
+ </head>
+ <body>
deal.II performance benchmarks, see
-<a href="http://www.dealii.org/testsuite.html">http://www.dealii.org/testsuite.html</a><br>
+<a href="http://www.dealii.org/testsuite.html">http://www.dealii.org/testsuite.html</a><br><br>
+
+<div id="container" style="min-width: 400px; height: 400px; margin: 0 auto"></div>
<img src="baseline.png"/>
<img src="tablehandler.png"/>
-</body>
+ </body>
+</html>
+
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <title>Highcharts Example</title>
+ <title>deal.II regression timings</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<script src="http://code.highcharts.com/highcharts.js"></script>
<script src="http://code.highcharts.com/modules/exporting.js"></script>
-<div id="container" style="min-width: 400px; height: 400px; margin: 0 auto"></div>
<script>
$(function () {
var chart;
</head>
<body>
deal.II performance benchmarks, see
-<a href="http://www.dealii.org/testsuite.html">http://www.dealii.org/testsuite.html</a><br>
+<a href="http://www.dealii.org/testsuite.html">http://www.dealii.org/testsuite.html</a><br><br>
<div id="container" style="min-width: 400px; height: 400px; margin: 0 auto"></div>
for l in data:
if (len(l.strip())<1):
continue
+
+ if (baseline>-1 and baseline<0.5):
+ continue;
- lnumbers = [float(x) for x in l.split()]
+ def isfloat(x):
+ try:
+ float(x)
+ return True
+ except ValueError:
+ return False
+ lnumbers = [float(x) for x in l.split() if isfloat(x)]
if len(lnumbers)<=1:
continue;
- if baseline<0:
+ if baseline<0 and len(lnumbers)>idx:
baseline=lnumbers[idx]
- if lnumbers[0]==0:
+ if lnumbers[0]<27000:
continue;
-
+
if (i==1):
print(","),
i=1;
+
- print "[%d,%f]" % (lnumbers[0], (lnumbers[idx]-baseline)/baseline*100.0)
+ if len(lnumbers)>idx:
+ print "[%d,%f]" % (lnumbers[0], (lnumbers[idx]-baseline)/baseline*100.0)
print "]}\n"
-print end
\ No newline at end of file
+print end
#!/bin/bash
-REV=24500
+#REV=24500
+REV=29000
rm -rf deal.II
-svn co -r $REV http://www.dealii.org/svn/dealii/trunk/deal.II
+svn co -r $REV https://svn.dealii.org/trunk/deal.II
+mkdir build
+cd build
+cmake -DCMAKE_BUILD_TYPE=Release -DDEAL_II_WITH_THREADS=OFF -DCMAKE_INSTALL_PREFIX=`pwd`/../installed ../deal.II
+make install -j 10
+cd ..
+
+source testlist.sh
+for test in $TESTS ; do
+ cd $test
+ echo "** cmake for $test:"
+ cmake -DDEAL_II_DIR=`pwd`/../installed
+ make release
+ cd ..
+done
+
+
\ No newline at end of file
--- /dev/null
+##
+# CMake script for the step-1 tutorial program:
+##
+
+# Set the name of the project and target:
+SET(TARGET "step-22")
+
+# Declare all source files the target consists of:
+SET(TARGET_SRC
+ ${TARGET}.cc
+ # You can specify additional files here!
+ )
+
+# Usually, you will not need to modify anything beyond this point...
+
+CMAKE_MINIMUM_REQUIRED(VERSION 2.8.8)
+
+FIND_PACKAGE(deal.II 8.0 QUIET
+ HINTS
+ ${deal.II_DIR}/ ${DEAL_II_DIR}/ ../../installed/ ../ ../../ ../../../ ../../../../../ $ENV{DEAL_II_DIR}
+ #
+ # If the deal.II library cannot be found (because it is not installed at a
+ # default location or your project resides at an uncommon place), you
+ # can specify additional hints for search paths here, e.g.
+ # "$ENV{HOME}/workspace/deal.II"
+ )
+
+IF (NOT ${deal.II_FOUND})
+ MESSAGE(FATAL_ERROR
+ "\n\n"
+ " *** Could not locate deal.II. *** "
+ "\n\n"
+ " *** You may want to either pass the -DDEAL_II_DIR=/path/to/deal.II flag to cmake \n"
+ " *** or set an environment variable \"DEAL_II_DIR\" that contains this path.")
+ENDIF ()
+
+DEAL_II_INITIALIZE_CACHED_VARIABLES()
+PROJECT(${TARGET})
+DEAL_II_INVOKE_AUTOPILOT()
+++ /dev/null
-# $Id: Makefile 25724 2012-07-24 23:35:36Z bangerth $
-
-
-# For the small projects Makefile, you basically need to fill in only
-# four fields.
-#
-# The first is the name of the application. It is assumed that the
-# application name is the same as the base file name of the single C++
-# file from which the application is generated.
-target = step-22
-
-# The second field determines whether you want to run your program in
-# debug or optimized mode. The latter is significantly faster, but no
-# run-time checking of parameters and internal states is performed, so
-# you should set this value to `on' while you develop your program,
-# and to `off' when running production computations.
-debug-mode = off
-
-
-# As third field, we need to give the path to the top-level deal.II
-# directory. You need to adjust this to your needs. Since this path is
-# probably the most often needed one in the Makefile internals, it is
-# designated by a single-character variable, since that can be
-# reference using $D only, i.e. without the parentheses that are
-# required for most other parameters, as e.g. in $(target).
-D = ../deal.II
-
-
-# The last field specifies the names of data and other files that
-# shall be deleted when calling `make clean'. Object and backup files,
-# executables and the like are removed anyway. Here, we give a list of
-# files in the various output formats that deal.II supports.
-clean-up-files = *gmv *gnuplot *gpl *eps *pov *vtk *ucd *.d2
-
-
-
-
-#
-#
-# Usually, you will not need to change anything beyond this point.
-#
-#
-# The next statement tells the `make' program where to find the
-# deal.II top level directory and to include the file with the global
-# settings
-include $D/common/Make.global_options
-
-
-# Since the whole project consists of only one file, we need not
-# consider difficult dependencies. We only have to declare the
-# libraries which we want to link to the object file. deal.II has two
-# libraries: one for the debug mode version of the
-# application and one for optimized mode.
-libs.g := $(lib-deal2.g)
-libs.o := $(lib-deal2.o)
-
-
-# We now use the variable defined above to switch between debug and
-# optimized mode to select the set of libraries to link with. Included
-# in the list of libraries is the name of the object file which we
-# will produce from the single C++ file. Note that by default we use
-# the extension .g.o for object files compiled in debug mode and .o for
-# object files in optimized mode (or whatever local default on your
-# system is instead of .o)
-ifeq ($(debug-mode),on)
- libraries = $(target).g.$(OBJEXT) $(libs.g)
-else
- libraries = $(target).$(OBJEXT) $(libs.o)
-endif
-
-
-# Now comes the first production rule: how to link the single object
-# file produced from the single C++ file into the executable. Since
-# this is the first rule in the Makefile, it is the one `make' selects
-# if you call it without arguments.
-all: $(target)$(EXEEXT)
-$(target)$(EXEEXT) : $(libraries)
- @echo ============================ Linking $@
- @$(CXX) -o $@ $^ $(LIBS) $(LDFLAGS)
-
-
-# To make running the application somewhat independent of the actual
-# program name, we usually declare a rule `run' which simply runs the
-# program. You can then run it by typing `make run'. This is also
-# useful if you want to call the executable with arguments which do
-# not change frequently. You may then want to add them to the
-# following rule:
-run: $(target)$(EXEEXT)
- @echo ============================ Running $<
- @./$(target)$(EXEEXT)
-
-
-# As a last rule to the `make' program, we define what to do when
-# cleaning up a directory. This usually involves deleting object files
-# and other automatically created files such as the executable itself,
-# backup files, and data files. Since the latter are not usually quite
-# diverse, you needed to declare them at the top of this file.
-clean:
- -rm -f *.$(OBJEXT) *~ Makefile.dep $(target)$(EXEEXT) $(clean-up-files)
-
-
-# Since we have not yet stated how to make an object file from a C++
-# file, we should do so now. Since the many flags passed to the
-# compiler are usually not of much interest, we suppress the actual
-# command line using the `at' sign in the first column of the rules
-# and write the string indicating what we do instead.
-./%.g.$(OBJEXT) :
- @echo "==============debug========= $(<F) -> $@"
- @$(CXX) $(CXXFLAGS.g) -c $< -o $@
-./%.$(OBJEXT) :
- @echo "==============optimized===== $(<F) -> $@"
- @$(CXX) $(CXXFLAGS.o) -c $< -o $@
-
-
-# The following statement tells make that the rules `run' and `clean'
-# are not expected to produce files of the same name as Makefile rules
-# usually do.
-.PHONY: all run clean
-
-
-# Finally there is a rule which you normally need not care much about:
-# since the executable depends on some include files from the library,
-# besides the C++ application file of course, it is necessary to
-# re-generate the executable when one of the files it depends on has
-# changed. The following rule creates a dependency file
-# `Makefile.dep', which `make' uses to determine when to regenerate
-# the executable. This file is automagically remade whenever needed,
-# i.e. whenever one of the cc-/h-files changed. Make detects whether
-# to remake this file upon inclusion at the bottom of this file.
-#
-# If the creation of Makefile.dep fails, blow it away and fail
-Makefile.dep: $(target).cc Makefile \
- $(shell echo $D/include/deal.II/*/*.h)
- @echo ============================ Remaking $@
- @$D/common/scripts/make_dependencies $(INCLUDE) -B. $(target).cc \
- > $@ \
- || (rm -f $@ ; false)
- @if test -s $@ ; then true ; else rm $@ ; false ; fi
-
-# To make the dependencies known to `make', we finally have to include
-# them:
--include Makefile.dep
-
-
--- /dev/null
+##
+# CMake script for the step-1 tutorial program:
+##
+
+# Set the name of the project and target:
+SET(TARGET "table_handler")
+
+# Declare all source files the target consists of:
+SET(TARGET_SRC
+ ${TARGET}.cc
+ # You can specify additional files here!
+ )
+
+# Usually, you will not need to modify anything beyond this point...
+
+CMAKE_MINIMUM_REQUIRED(VERSION 2.8.8)
+
+FIND_PACKAGE(deal.II 8.0 QUIET
+ HINTS
+ ${deal.II_DIR}/ ${DEAL_II_DIR}/ ../../installed/ ../ ../../ ../../../ ../../../../../ $ENV{DEAL_II_DIR}
+ #
+ # If the deal.II library cannot be found (because it is not installed at a
+ # default location or your project resides at an uncommon place), you
+ # can specify additional hints for search paths here, e.g.
+ # "$ENV{HOME}/workspace/deal.II"
+ )
+
+IF (NOT ${deal.II_FOUND})
+ MESSAGE(FATAL_ERROR
+ "\n\n"
+ " *** Could not locate deal.II. *** "
+ "\n\n"
+ " *** You may want to either pass the -DDEAL_II_DIR=/path/to/deal.II flag to cmake \n"
+ " *** or set an environment variable \"DEAL_II_DIR\" that contains this path.")
+ENDIF ()
+
+DEAL_II_INITIALIZE_CACHED_VARIABLES()
+PROJECT(${TARGET})
+DEAL_II_INVOKE_AUTOPILOT()
+++ /dev/null
-# $Id: Makefile 25724 2012-07-24 23:35:36Z bangerth $
-
-
-# For the small projects Makefile, you basically need to fill in only
-# four fields.
-#
-# The first is the name of the application. It is assumed that the
-# application name is the same as the base file name of the single C++
-# file from which the application is generated.
-target = table_handler
-
-# The second field determines whether you want to run your program in
-# debug or optimized mode. The latter is significantly faster, but no
-# run-time checking of parameters and internal states is performed, so
-# you should set this value to `on' while you develop your program,
-# and to `off' when running production computations.
-debug-mode = off
-
-
-# As third field, we need to give the path to the top-level deal.II
-# directory. You need to adjust this to your needs. Since this path is
-# probably the most often needed one in the Makefile internals, it is
-# designated by a single-character variable, since that can be
-# reference using $D only, i.e. without the parentheses that are
-# required for most other parameters, as e.g. in $(target).
-D = ../deal.II
-
-
-# The last field specifies the names of data and other files that
-# shall be deleted when calling `make clean'. Object and backup files,
-# executables and the like are removed anyway. Here, we give a list of
-# files in the various output formats that deal.II supports.
-clean-up-files = *gmv *gnuplot *gpl *eps *pov *vtk *ucd *.d2
-
-
-
-
-#
-#
-# Usually, you will not need to change anything beyond this point.
-#
-#
-# The next statement tells the `make' program where to find the
-# deal.II top level directory and to include the file with the global
-# settings
-include $D/common/Make.global_options
-
-
-# Since the whole project consists of only one file, we need not
-# consider difficult dependencies. We only have to declare the
-# libraries which we want to link to the object file. deal.II has two
-# libraries: one for the debug mode version of the
-# application and one for optimized mode.
-libs.g := $(lib-deal2.g)
-libs.o := $(lib-deal2.o)
-
-
-# We now use the variable defined above to switch between debug and
-# optimized mode to select the set of libraries to link with. Included
-# in the list of libraries is the name of the object file which we
-# will produce from the single C++ file. Note that by default we use
-# the extension .g.o for object files compiled in debug mode and .o for
-# object files in optimized mode (or whatever local default on your
-# system is instead of .o)
-ifeq ($(debug-mode),on)
- libraries = $(target).g.$(OBJEXT) $(libs.g)
-else
- libraries = $(target).$(OBJEXT) $(libs.o)
-endif
-
-
-# Now comes the first production rule: how to link the single object
-# file produced from the single C++ file into the executable. Since
-# this is the first rule in the Makefile, it is the one `make' selects
-# if you call it without arguments.
-all: $(target)$(EXEEXT)
-$(target)$(EXEEXT) : $(libraries)
- @echo ============================ Linking $@
- @$(CXX) -o $@ $^ $(LIBS) $(LDFLAGS)
-
-
-# To make running the application somewhat independent of the actual
-# program name, we usually declare a rule `run' which simply runs the
-# program. You can then run it by typing `make run'. This is also
-# useful if you want to call the executable with arguments which do
-# not change frequently. You may then want to add them to the
-# following rule:
-run: $(target)$(EXEEXT)
- @echo ============================ Running $<
- @./$(target)$(EXEEXT)
-
-
-# As a last rule to the `make' program, we define what to do when
-# cleaning up a directory. This usually involves deleting object files
-# and other automatically created files such as the executable itself,
-# backup files, and data files. Since the latter are not usually quite
-# diverse, you needed to declare them at the top of this file.
-clean:
- -rm -f *.$(OBJEXT) *~ Makefile.dep $(target)$(EXEEXT) $(clean-up-files)
-
-
-# Since we have not yet stated how to make an object file from a C++
-# file, we should do so now. Since the many flags passed to the
-# compiler are usually not of much interest, we suppress the actual
-# command line using the `at' sign in the first column of the rules
-# and write the string indicating what we do instead.
-./%.g.$(OBJEXT) :
- @echo "==============debug========= $(<F) -> $@"
- @$(CXX) $(CXXFLAGS.g) -c $< -o $@
-./%.$(OBJEXT) :
- @echo "==============optimized===== $(<F) -> $@"
- @$(CXX) $(CXXFLAGS.o) -c $< -o $@
-
-
-# The following statement tells make that the rules `run' and `clean'
-# are not expected to produce files of the same name as Makefile rules
-# usually do.
-.PHONY: all run clean
-
-
-# Finally there is a rule which you normally need not care much about:
-# since the executable depends on some include files from the library,
-# besides the C++ application file of course, it is necessary to
-# re-generate the executable when one of the files it depends on has
-# changed. The following rule creates a dependency file
-# `Makefile.dep', which `make' uses to determine when to regenerate
-# the executable. This file is automagically remade whenever needed,
-# i.e. whenever one of the cc-/h-files changed. Make detects whether
-# to remake this file upon inclusion at the bottom of this file.
-#
-# If the creation of Makefile.dep fails, blow it away and fail
-Makefile.dep: $(target).cc Makefile \
- $(shell echo $D/include/deal.II/*/*.h)
- @echo ============================ Remaking $@
- @$D/common/scripts/make_dependencies $(INCLUDE) -B. $(target).cc \
- > $@ \
- || (rm -f $@ ; false)
- @if test -s $@ ; then true ; else rm $@ ; false ; fi
-
-# To make the dependencies known to `make', we finally have to include
-# them:
--include Makefile.dep
-
-
--- /dev/null
+##
+# CMake script for the step-1 tutorial program:
+##
+
+# Set the name of the project and target:
+SET(TARGET "step-22")
+
+# Declare all source files the target consists of:
+SET(TARGET_SRC
+ ${TARGET}.cc
+ # You can specify additional files here!
+ )
+
+# Usually, you will not need to modify anything beyond this point...
+
+CMAKE_MINIMUM_REQUIRED(VERSION 2.8.8)
+
+FIND_PACKAGE(deal.II 8.0 QUIET
+ HINTS
+ ${deal.II_DIR}/ ${DEAL_II_DIR}/ ../../installed/ ../ ../../ ../../../ ../../../../../ $ENV{DEAL_II_DIR}
+ #
+ # If the deal.II library cannot be found (because it is not installed at a
+ # default location or your project resides at an uncommon place), you
+ # can specify additional hints for search paths here, e.g.
+ # "$ENV{HOME}/workspace/deal.II"
+ )
+
+IF (NOT ${deal.II_FOUND})
+ MESSAGE(FATAL_ERROR
+ "\n\n"
+ " *** Could not locate deal.II. *** "
+ "\n\n"
+ " *** You may want to either pass the -DDEAL_II_DIR=/path/to/deal.II flag to cmake \n"
+ " *** or set an environment variable \"DEAL_II_DIR\" that contains this path.")
+ENDIF ()
+
+DEAL_II_INITIALIZE_CACHED_VARIABLES()
+PROJECT(${TARGET})
+DEAL_II_INVOKE_AUTOPILOT()
+++ /dev/null
-# $Id: Makefile 25724 2012-07-24 23:35:36Z bangerth $
-
-
-# For the small projects Makefile, you basically need to fill in only
-# four fields.
-#
-# The first is the name of the application. It is assumed that the
-# application name is the same as the base file name of the single C++
-# file from which the application is generated.
-target = step-22
-
-# The second field determines whether you want to run your program in
-# debug or optimized mode. The latter is significantly faster, but no
-# run-time checking of parameters and internal states is performed, so
-# you should set this value to `on' while you develop your program,
-# and to `off' when running production computations.
-debug-mode = off
-
-
-# As third field, we need to give the path to the top-level deal.II
-# directory. You need to adjust this to your needs. Since this path is
-# probably the most often needed one in the Makefile internals, it is
-# designated by a single-character variable, since that can be
-# reference using $D only, i.e. without the parentheses that are
-# required for most other parameters, as e.g. in $(target).
-D = ../deal.II
-
-
-# The last field specifies the names of data and other files that
-# shall be deleted when calling `make clean'. Object and backup files,
-# executables and the like are removed anyway. Here, we give a list of
-# files in the various output formats that deal.II supports.
-clean-up-files = *gmv *gnuplot *gpl *eps *pov *vtk *ucd *.d2
-
-
-
-
-#
-#
-# Usually, you will not need to change anything beyond this point.
-#
-#
-# The next statement tells the `make' program where to find the
-# deal.II top level directory and to include the file with the global
-# settings
-include $D/common/Make.global_options
-
-
-# Since the whole project consists of only one file, we need not
-# consider difficult dependencies. We only have to declare the
-# libraries which we want to link to the object file. deal.II has two
-# libraries: one for the debug mode version of the
-# application and one for optimized mode.
-libs.g := $(lib-deal2.g)
-libs.o := $(lib-deal2.o)
-
-
-# We now use the variable defined above to switch between debug and
-# optimized mode to select the set of libraries to link with. Included
-# in the list of libraries is the name of the object file which we
-# will produce from the single C++ file. Note that by default we use
-# the extension .g.o for object files compiled in debug mode and .o for
-# object files in optimized mode (or whatever local default on your
-# system is instead of .o)
-ifeq ($(debug-mode),on)
- libraries = $(target).g.$(OBJEXT) $(libs.g)
-else
- libraries = $(target).$(OBJEXT) $(libs.o)
-endif
-
-
-# Now comes the first production rule: how to link the single object
-# file produced from the single C++ file into the executable. Since
-# this is the first rule in the Makefile, it is the one `make' selects
-# if you call it without arguments.
-all: $(target)$(EXEEXT)
-$(target)$(EXEEXT) : $(libraries)
- @echo ============================ Linking $@
- @$(CXX) -o $@ $^ $(LIBS) $(LDFLAGS)
-
-
-# To make running the application somewhat independent of the actual
-# program name, we usually declare a rule `run' which simply runs the
-# program. You can then run it by typing `make run'. This is also
-# useful if you want to call the executable with arguments which do
-# not change frequently. You may then want to add them to the
-# following rule:
-run: $(target)$(EXEEXT)
- @echo ============================ Running $<
- @./$(target)$(EXEEXT)
-
-
-# As a last rule to the `make' program, we define what to do when
-# cleaning up a directory. This usually involves deleting object files
-# and other automatically created files such as the executable itself,
-# backup files, and data files. Since the latter are not usually quite
-# diverse, you needed to declare them at the top of this file.
-clean:
- -rm -f *.$(OBJEXT) *~ Makefile.dep $(target)$(EXEEXT) $(clean-up-files)
-
-
-# Since we have not yet stated how to make an object file from a C++
-# file, we should do so now. Since the many flags passed to the
-# compiler are usually not of much interest, we suppress the actual
-# command line using the `at' sign in the first column of the rules
-# and write the string indicating what we do instead.
-./%.g.$(OBJEXT) :
- @echo "==============debug========= $(<F) -> $@"
- @$(CXX) $(CXXFLAGS.g) -c $< -o $@
-./%.$(OBJEXT) :
- @echo "==============optimized===== $(<F) -> $@"
- @$(CXX) $(CXXFLAGS.o) -c $< -o $@
-
-
-# The following statement tells make that the rules `run' and `clean'
-# are not expected to produce files of the same name as Makefile rules
-# usually do.
-.PHONY: all run clean
-
-
-# Finally there is a rule which you normally need not care much about:
-# since the executable depends on some include files from the library,
-# besides the C++ application file of course, it is necessary to
-# re-generate the executable when one of the files it depends on has
-# changed. The following rule creates a dependency file
-# `Makefile.dep', which `make' uses to determine when to regenerate
-# the executable. This file is automagically remade whenever needed,
-# i.e. whenever one of the cc-/h-files changed. Make detects whether
-# to remake this file upon inclusion at the bottom of this file.
-#
-# If the creation of Makefile.dep fails, blow it away and fail
-Makefile.dep: $(target).cc Makefile \
- $(shell echo $D/include/deal.II/*/*.h)
- @echo ============================ Remaking $@
- @$D/common/scripts/make_dependencies $(INCLUDE) -B. $(target).cc \
- > $@ \
- || (rm -f $@ ; false)
- @if test -s $@ ; then true ; else rm $@ ; false ; fi
-
-# To make the dependencies known to `make', we finally have to include
-# them:
--include Makefile.dep
-
-
--- /dev/null
+##
+# CMake script for the step-1 tutorial program:
+##
+
+# Set the name of the project and target:
+SET(TARGET "poisson")
+
+# Declare all source files the target consists of:
+SET(TARGET_SRC
+ ${TARGET}.cc
+ # You can specify additional files here!
+ )
+
+# Usually, you will not need to modify anything beyond this point...
+
+CMAKE_MINIMUM_REQUIRED(VERSION 2.8.8)
+
+FIND_PACKAGE(deal.II 8.0 QUIET
+ HINTS
+ ${deal.II_DIR}/ ${DEAL_II_DIR}/ ../../installed/ ../ ../../ ../../../ ../../../../../ $ENV{DEAL_II_DIR}
+ #
+ # If the deal.II library cannot be found (because it is not installed at a
+ # default location or your project resides at an uncommon place), you
+ # can specify additional hints for search paths here, e.g.
+ # "$ENV{HOME}/workspace/deal.II"
+ )
+
+IF (NOT ${deal.II_FOUND})
+ MESSAGE(FATAL_ERROR
+ "\n\n"
+ " *** Could not locate deal.II. *** "
+ "\n\n"
+ " *** You may want to either pass the -DDEAL_II_DIR=/path/to/deal.II flag to cmake \n"
+ " *** or set an environment variable \"DEAL_II_DIR\" that contains this path.")
+ENDIF ()
+
+DEAL_II_INITIALIZE_CACHED_VARIABLES()
+PROJECT(${TARGET})
+DEAL_II_INVOKE_AUTOPILOT()
+++ /dev/null
-# $Id: Makefile 25724 2012-07-24 23:35:36Z bangerth $
-
-
-# For the small projects Makefile, you basically need to fill in only
-# four fields.
-#
-# The first is the name of the application. It is assumed that the
-# application name is the same as the base file name of the single C++
-# file from which the application is generated.
-target = poisson
-
-# The second field determines whether you want to run your program in
-# debug or optimized mode. The latter is significantly faster, but no
-# run-time checking of parameters and internal states is performed, so
-# you should set this value to `on' while you develop your program,
-# and to `off' when running production computations.
-debug-mode = off
-
-
-# As third field, we need to give the path to the top-level deal.II
-# directory. You need to adjust this to your needs. Since this path is
-# probably the most often needed one in the Makefile internals, it is
-# designated by a single-character variable, since that can be
-# reference using $D only, i.e. without the parentheses that are
-# required for most other parameters, as e.g. in $(target).
-D = ../deal.II
-
-
-# The last field specifies the names of data and other files that
-# shall be deleted when calling `make clean'. Object and backup files,
-# executables and the like are removed anyway. Here, we give a list of
-# files in the various output formats that deal.II supports.
-clean-up-files = *gmv *gnuplot *gpl *eps *pov *vtk *ucd *.d2
-
-
-
-
-#
-#
-# Usually, you will not need to change anything beyond this point.
-#
-#
-# The next statement tells the `make' program where to find the
-# deal.II top level directory and to include the file with the global
-# settings
-include $D/common/Make.global_options
-
-
-# Since the whole project consists of only one file, we need not
-# consider difficult dependencies. We only have to declare the
-# libraries which we want to link to the object file. deal.II has two
-# libraries: one for the debug mode version of the
-# application and one for optimized mode.
-libs.g := $(lib-deal2.g)
-libs.o := $(lib-deal2.o)
-
-
-# We now use the variable defined above to switch between debug and
-# optimized mode to select the set of libraries to link with. Included
-# in the list of libraries is the name of the object file which we
-# will produce from the single C++ file. Note that by default we use
-# the extension .g.o for object files compiled in debug mode and .o for
-# object files in optimized mode (or whatever local default on your
-# system is instead of .o)
-ifeq ($(debug-mode),on)
- libraries = $(target).g.$(OBJEXT) $(libs.g)
-else
- libraries = $(target).$(OBJEXT) $(libs.o)
-endif
-
-
-# Now comes the first production rule: how to link the single object
-# file produced from the single C++ file into the executable. Since
-# this is the first rule in the Makefile, it is the one `make' selects
-# if you call it without arguments.
-all: $(target)$(EXEEXT)
-$(target)$(EXEEXT) : $(libraries)
- @echo ============================ Linking $@
- @$(CXX) -o $@ $^ $(LIBS) $(LDFLAGS)
-
-
-# To make running the application somewhat independent of the actual
-# program name, we usually declare a rule `run' which simply runs the
-# program. You can then run it by typing `make run'. This is also
-# useful if you want to call the executable with arguments which do
-# not change frequently. You may then want to add them to the
-# following rule:
-run: $(target)$(EXEEXT)
- @echo ============================ Running $<
- @./$(target)$(EXEEXT)
-
-
-# As a last rule to the `make' program, we define what to do when
-# cleaning up a directory. This usually involves deleting object files
-# and other automatically created files such as the executable itself,
-# backup files, and data files. Since the latter are not usually quite
-# diverse, you needed to declare them at the top of this file.
-clean:
- -rm -f *.$(OBJEXT) *~ Makefile.dep $(target)$(EXEEXT) $(clean-up-files)
-
-
-# Since we have not yet stated how to make an object file from a C++
-# file, we should do so now. Since the many flags passed to the
-# compiler are usually not of much interest, we suppress the actual
-# command line using the `at' sign in the first column of the rules
-# and write the string indicating what we do instead.
-./%.g.$(OBJEXT) :
- @echo "==============debug========= $(<F) -> $@"
- @$(CXX) $(CXXFLAGS.g) -c $< -o $@
-./%.$(OBJEXT) :
- @echo "==============optimized===== $(<F) -> $@"
- @$(CXX) $(CXXFLAGS.o) -c $< -o $@
-
-
-# The following statement tells make that the rules `run' and `clean'
-# are not expected to produce files of the same name as Makefile rules
-# usually do.
-.PHONY: all run clean
-
-
-# Finally there is a rule which you normally need not care much about:
-# since the executable depends on some include files from the library,
-# besides the C++ application file of course, it is necessary to
-# re-generate the executable when one of the files it depends on has
-# changed. The following rule creates a dependency file
-# `Makefile.dep', which `make' uses to determine when to regenerate
-# the executable. This file is automagically remade whenever needed,
-# i.e. whenever one of the cc-/h-files changed. Make detects whether
-# to remake this file upon inclusion at the bottom of this file.
-#
-# If the creation of Makefile.dep fails, blow it away and fail
-Makefile.dep: $(target).cc Makefile \
- $(shell echo $D/include/deal.II/*/*.h)
- @echo ============================ Remaking $@
- @$D/common/scripts/make_dependencies $(INCLUDE) -B. $(target).cc \
- > $@ \
- || (rm -f $@ ; false)
- @if test -s $@ ; then true ; else rm $@ ; false ; fi
-
-# To make the dependencies known to `make', we finally have to include
-# them:
--include Makefile.dep
-
-