For the mcpefmMatchPattern EdgeFindingMethod the weighted profile is determined from the covariance of the profile lumianance and the Pattern property array. By default the pattern property is a flattened, rising step, but you will almost always want to assign your own pattern (otherwise the one of the simpler weighted average EdgeFindingMethod approaches will probably work for you).
When you assign to the Pattern property, the MatchLength property is automatically set to the length of the assigned array. If you subsequently change the MatchLength, then the Pattern property array is automatically mapped onto the new MatchLength.
On assignment Weights array must be at least length 2 and the values must not be all the same; that is, the Pattern must have some shape to it. Before being used to produce the WeightedProfiles, the Pattern array is mapped (stretched or interpolated) to the MatchLength.
The Pattern property is exposed as an array of Double.
The Pattern property is ignored by the weighted average methods (EdgeFindingMethod values mcpefmPeaks, mcpefmValleys, mcpefmRisingEdges and mcpefmFallingEdges).