diff --git a/quasiconvexity-micromorphic-testsuite/render-quasiconvexity-test.py b/quasiconvexity-micromorphic-testsuite/render-quasiconvexity-test.py
new file mode 100644
index 0000000000000000000000000000000000000000..11e211f116094b505b891dc2fb76da3d84a6c12c
--- /dev/null
+++ b/quasiconvexity-micromorphic-testsuite/render-quasiconvexity-test.py
@@ -0,0 +1,170 @@
+#### import the simple module from the paraview
+from paraview.simple import *
+
+# For os.devnull
+import os
+
+#### disable automatic camera reset on 'Show'
+paraview.simple._DisableFirstRenderCameraReset()
+
+# get the material library
+materialLibrary1 = GetMaterialLibrary()
+
+# Render result
+def renderResult(filePrefix, texFile):
+
+    # ----------------------------------------------------------------
+    # setup views used in the visualization
+    # ----------------------------------------------------------------
+
+    # Create a new 'Render View'
+    renderView1 = CreateView('RenderView')
+    renderView1.ViewSize = [800, 695]
+    renderView1.InteractionMode = '2D'
+    renderView1.AxesGrid = 'GridAxes3DActor'
+    renderView1.StereoType = 'Crystal Eyes'
+    renderView1.CameraPosition = [0.0, 0.0, 10000.0]
+    renderView1.CameraFocalDisk = 1.0
+    renderView1.CameraParallelScale = 1.4142135623730951
+    renderView1.BackEnd = 'OSPRay raycaster'
+    renderView1.OSPRayMaterialLibrary = materialLibrary1
+    renderView1.OrientationAxesVisibility = 0
+    renderView1.Background = [1.0, 1.0, 1.0]
+
+    SetActiveView(None)
+
+    # ----------------------------------------------------------------
+    # setup view layouts
+    # ----------------------------------------------------------------
+
+    # create new layout object 'Layout #1'
+    layout1 = CreateLayout(name='Layout #1')
+    layout1.AssignView(0, renderView1)
+    layout1.SetSize(800, 695)
+
+    # ----------------------------------------------------------------
+    # restore active view
+    SetActiveView(renderView1)
+    # ----------------------------------------------------------------
+
+    # ----------------------------------------------------------------
+    # setup the data processing pipelines
+    # ----------------------------------------------------------------
+
+    # create a new 'XML Unstructured Grid Reader'
+    data = XMLUnstructuredGridReader(registrationName=filePrefix + ".vtu", FileName=[filePrefix + ".vtu"])
+    data.CellArrayStatus = ['determinant', 'K']
+    data.TimeArray = 'None'
+
+    # ----------------------------------------------------------------
+    # setup the visualization in view 'renderView1'
+    # ----------------------------------------------------------------
+
+    # show data from 'data'
+    dataDisplay = Show(data, renderView1, 'UnstructuredGridRepresentation')
+
+    determinantRange = data.CellData["determinant"].GetRange()
+    texFile.write("det range: " + str(determinantRange[0]) + ",  " + str(determinantRange[1]) + "\n\n")
+
+    KRange = data.CellData["K"].GetRange()
+    texFile.write("K range: " + str(KRange[0]) + ",  " + str(KRange[1]) + "\n\n")
+
+    # get color transfer function/color map for 'determinant'
+    determinantArrayInfo = data.CellData["determinant"]
+    AssignLookupTable(determinantArrayInfo,'Cool to Warm', determinantRange)
+
+    # get opacity transfer function/opacity map for 'determinant'
+    determinantPWF = GetOpacityTransferFunction('determinant')
+    determinantPWF.Points = [-0.016938600689172745, 0.0, 0.5, 0.0, 1.7324700355529785, 1.0, 0.5, 0.0]
+    determinantPWF.ScalarRangeInitialized = 1
+
+    # trace defaults for the display properties.
+    dataDisplay.Representation = 'Surface'
+    dataDisplay.ColorArrayName = ['CELLS', 'determinant']
+    dataDisplay.SelectTCoordArray = 'None'
+    dataDisplay.SelectNormalArray = 'None'
+    dataDisplay.SelectTangentArray = 'None'
+    dataDisplay.OSPRayScaleFunction = 'PiecewiseFunction'
+    dataDisplay.SelectOrientationVectors = 'None'
+    dataDisplay.ScaleFactor = 0.2
+    dataDisplay.SelectScaleArray = 'determinant'
+    dataDisplay.GaussianRadius = 0.01
+    dataDisplay.SetScaleArray = [None, '']
+    dataDisplay.ScaleTransferFunction = 'PiecewiseFunction'
+    dataDisplay.OpacityArray = [None, '']
+    dataDisplay.OpacityTransferFunction = 'PiecewiseFunction'
+    dataDisplay.DataAxesGrid = 'GridAxesRepresentation'
+    dataDisplay.PolarAxes = 'PolarAxesRepresentation'
+
+    # setup the color legend parameters for each legend in this view
+
+    # get color legend/bar for determinantLUT in view renderView1
+    determinantLUT = GetColorTransferFunction('determinant')
+    dataDisplay.LookupTable = determinantLUT
+    determinantLUTColorBar = GetScalarBar(determinantLUT, renderView1)
+    determinantLUTColorBar.Title = 'determinant'
+    determinantLUTColorBar.ComponentTitle = ''
+    determinantLUTColorBar.LabelColor = [0.0, 0.0, 0.0]
+    determinantLUTColorBar.TitleColor = [0.0, 0.0, 0.0]
+
+    # set color bar visibility
+    determinantLUTColorBar.Visibility = 1
+
+    # show color legend
+    dataDisplay.SetScalarBarVisibility(renderView1, True)
+
+    Render()
+
+    #save screenshot
+    WriteImage(filePrefix + "-det.png")
+
+    # Render again, showing the K value
+    determinantLUTColorBar.Visibility = 0
+    AssignLookupTable(data.CellData["K"],'Cool to Warm', KRange)
+    dataDisplay.ColorArrayName = ['CELLS', 'K']
+
+    # get color legend/bar for KLUT in view renderView1
+    KLUT = GetColorTransferFunction('K')
+    dataDisplay.LookupTable = KLUT
+    KLUTColorBar = GetScalarBar(KLUT, renderView1)
+    KLUTColorBar.Title = 'IK'
+    KLUTColorBar.ComponentTitle = ''
+    KLUTColorBar.LabelColor = [0.0, 0.0, 0.0]
+    KLUTColorBar.TitleColor = [0.0, 0.0, 0.0]
+
+    # set color bar visibility
+    #KLUTColorBar.Visibility = 1
+
+    # show color legend
+    #dataDisplay.SetScalarBarVisibility(renderView1, True)
+
+    Render()
+
+    #save screenshot
+    WriteImage(filePrefix + "-K.png")
+
+    # ----------------------------------------------------------------
+    # restore active source
+    SetActiveSource(data)
+    # ----------------------------------------------------------------
+
+
+    if __name__ == '__main__':
+        # generate extracts
+        SaveExtracts(ExtractsOutputDirectory='extracts')
+
+
+if (len(sys.argv)!=2):
+    print('Usage: renderquasiconvexity-test <fileprefix>')
+    exit()
+
+# Open output document and write LaTeX header
+texFile = open(os.devnull,"w+")
+
+
+filename = sys.argv[1]
+print('filename: ' + filename)
+
+renderResult(filename, texFile)
+
+texFile.close()