def recovery_le( pb, corrs, macro ): out = {} dim = corrs['corrs_le']['u_00'].shape[1] mic_u = - compute_micro_u( corrs['corrs_le'], macro['strain'], 'u', dim ) mic_p = - compute_micro_u( corrs['corrs_le'], macro['strain'], 'p', dim ) out['u_mic'] = Struct( name = 'output_data', mode = 'vertex', data = mic_u, var_name = 'u', dofs = None ) out['p_mic'] = Struct( name = 'output_data', mode = 'cell', data = mic_p[:,nm.newaxis, :,nm.newaxis], var_name = 'p', dofs = None ) stress_Ym, strain_Ym = compute_stress_strain_u( pb, 'i1', 'Ym', 'matrix.D', 'u', mic_u ) stress_Ym += compute_mac_stress_part( pb, 'i1', 'Ym', 'matrix.D', 'u', macro['strain'] ) add_stress_p( stress_Ym, pb, 'i1', 'Ym', 'p', mic_p ) stress_Yc, strain_Yc = compute_stress_strain_u( pb, 'i1', 'Yc', 'reinf.D', 'u', mic_u ) stress_Yc += compute_mac_stress_part( pb, 'i1', 'Yc', 'reinf.D', 'u', macro['strain'] ) add_stress_p( stress_Yc, pb, 'i1', 'Yc', 'p', mic_p ) strain = macro['strain'] + strain_Ym + strain_Yc stress = stress_Ym + stress_Yc out['cauchy_strain'] = Struct( name = 'output_data', mode = 'cell', data = strain, dofs = None ) out['cauchy_stress'] = Struct( name = 'output_data', mode = 'cell', data = stress, dofs = None ) return out
def recovery_le( pb, corrs, macro ): out = {} dim = corrs['corrs_le']['u_00'].shape[1] mic_u = - compute_micro_u( corrs['corrs_le'], macro['strain'], 'u', dim ) mic_p = - compute_micro_u( corrs['corrs_le'], macro['strain'], 'p', dim ) out['u_mic'] = Struct( name = 'output_data', mode = 'vertex', data = mic_u, var_name = 'u', dofs = None ) out['p_mic'] = Struct( name = 'output_data', mode = 'cell', data = mic_p[:,nm.newaxis, :,nm.newaxis], var_name = 'p', dofs = None ) stress_Y, strain_Y = compute_stress_strain_u( pb, 'i1', 'Y', 'mat.D', 'u', mic_u ) stress_Y += compute_mac_stress_part( pb, 'i1', 'Y', 'mat.D', 'u', macro['strain'] ) add_stress_p( stress_Y, pb, 'i1', 'Y', 'p', mic_p ) strain = macro['strain'] + strain_Y out['cauchy_strain'] = Struct( name = 'output_data', mode = 'cell', data = strain, dofs = None ) out['cauchy_stress'] = Struct( name = 'output_data', mode = 'cell', data = stress_Y, dofs = None ) return out
def recovery_le(pb, corrs, macro): out = {} dim = corrs['corrs_le']['u_00'].shape[1] mic_u = - compute_micro_u(corrs['corrs_le'], macro['strain'], 'u', dim) out['u_mic'] = Struct(name='output_data', mode='vertex', data=mic_u, var_name='u', dofs=None) stress_Y, strain_Y = \ compute_stress_strain_u(pb, 'i', 'Y', 'mat.D', 'u', mic_u) stress_Y += \ compute_mac_stress_part(pb, 'i', 'Y', 'mat.D', 'u', macro['strain']) strain = macro['strain'] + strain_Y out['cauchy_strain'] = Struct(name='output_data', mode='cell', data=strain, dofs=None) out['cauchy_stress'] = Struct(name='output_data', mode='cell', data=stress_Y, dofs=None) return out
def recovery_le(pb, corrs, macro): out = {} dim = corrs["corrs_le"]["u_00"].shape[1] mic_u = -compute_micro_u(corrs["corrs_le"], macro["strain"], "u", dim) out["u_mic"] = Struct(name="output_data", mode="vertex", data=mic_u, var_name="u", dofs=None) stress_Y, strain_Y = compute_stress_strain_u(pb, "i", "Y", "mat.D", "u", mic_u) stress_Y += compute_mac_stress_part(pb, "i", "Y", "mat.D", "u", macro["strain"]) strain = macro["strain"] + strain_Y out["cauchy_strain"] = Struct(name="output_data", mode="cell", data=strain, dofs=None) out["cauchy_stress"] = Struct(name="output_data", mode="cell", data=stress_Y, dofs=None) return out