# espressopp.analysis.PressureTensorMultiLayer¶

This class computes the pressure tensor of the system in n layers. Layers are perpendicular to Z direction and are equidistant(distance is Lz/n). It can be used as standalone class in python as well as in combination with the integrator extension ExtAnalyze.

Example of standalone Usage:

>>> pt = espressopp.analysis.PressureTensorMultiLayer(system, n, dh)
>>> for i in xrange(n):
>>>     print "pressure tensor in layer %d: %s" % ( i, pt.compute())


or

>>> pt = espressopp.analysis.PressureTensorMultiLayer(system, n, dh)
>>> for k in xrange(100):
>>>     integrator.run(100)
>>>     pt.performMeasurement()
>>> for i in xrange(n):
>>>     print "average pressure tensor in layer %d: %s" % ( i, pt.compute())


Example of usage in integrator with ExtAnalyze:

>>> pt           = espressopp.analysis.PressureTensorMultiLayer(system, n, dh)
>>> extension_pt = espressopp.integrator.ExtAnalyze(pt , interval=100)
>>> integrator.run(10000)
>>> pt_ave = pt.getAverageValue()
>>> for i in xrange(n):
>>>   print "average Pressure Tensor = ", pt_ave[i][:6]
>>>   print "          std deviation = ", pt_ave[i][6:]
>>> print "number of measurements  = ", pt.getNumberOfMeasurements()


The following methods are supported:

• performMeasurement()
computes the pressure tensor and updates average and standard deviation
• reset()
resets average and standard deviation to 0
• compute()
computes the instant pressure tensor in n layers, return value: [xx, yy, zz, xy, xz, yz]
• getAverageValue()
returns the average pressure tensor and the standard deviation, return value: [xx, yy, zz, xy, xz, yz, +-xx, +-yy, +-zz, +-xy, +-xz, +-yz]
• getNumberOfMeasurements()
counts the number of measurements that have been computed (standalone or in integrator) does _not_ include measurements that have been done using “compute()”
espressopp.analysis.PressureTensorMultiLayer(system, n, dh)
Parameters: system – n – dh –