<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def get_effective_ecs(self, strain, order=2):
 """ Returns the effective elastic constants from the elastic tensor expansion. Args: strain (Strain or 3x3 array-like):
 strain condition under which to calculate the effective constants order (int):
 order of the ecs to be returned """

        ec_sum = 0
        for n, ecs in enumerate(self[order-2:]):
            ec_sum += ecs.einsum_sequence([strain] * n) / factorial(n)
        return ec_sum