microstructpy.geometry.Square¶
- class microstructpy.geometry.Square(**kwargs)[source]¶
A square.
This class contains a generic, 2D square. It is derived from the
microstructpy.geometry.Rectangle
class and contains theside_length
property, rather than multiple side lengths.- Parameters
- approximate(x1=None)[source]¶
Approximate square with a set of circles
This method approximates a square with a set of circles. These circles are spaced uniformly along the edges of the square with distance
x1
between them.Example
For a square with side_length=1, and x1=0.2, the approximation would look like Fig. 30.
- classmethod area_expectation(**kwargs)[source]¶
Expected area of square
This method computes the expected area of a square with distributed side length. The expectation is:
\[\mathbb{E}[A] = \mathbb{E}[S^2] = \mu_S^2 + \sigma_S^2\]Example
>>> import scipy.stats >>> import microstructpy as msp >>> S = scipy.stats.expon(scale=2) >>> S.mean()^2 + S.var() 8.0 >>> msp.geometry.Square.area_expectation(side_length=S) 8.0
- Parameters
**kwargs – Keyword arguments, same as
Square
but the inputs can be from thescipy.stats
module.- Returns
Expected/average area of the square.
- Return type
- best_fit(points)¶
Find rectangle of best fit for points
- plot(**kwargs)¶
Plot the rectangle.
This function adds a
matplotlib.patches.Rectangle
patch to the current axes. The keyword arguments are passed through to the patch.- Parameters
**kwargs (dict) – Keyword arguments for the patch.
- within(points)¶
Test if points are within n-box.
This function tests whether a point or set of points are within the n-box. For the set of points, a list of booleans is returned to indicate which points are within the n-box.
- Parameters
points (list or numpy.ndarray) – Point or list of points.
- Returns
Flags set to True for points in geometry.
- Return type