Do we need to provide values for midside nodes in a custom result?
This depends on the value of "location" for the custom result object.
For location="nodes", all node values must be returned, and this includes the values for midside nodes. The number of values to populate the collector will depend on whether the mesh is linear or quadratic.
For location="elemnodes", the collector should be populated in collector.SetValues by a list of values (1 or 3 times the number of corner nodes depending on “type” attribute) per element id. Only corner nodes are considered. Midside node results are then taken as the average of the corner nodes values.