static void c6_chartstep_c6_motor_control(SFc6_motor_controlInstanceStruct *chartInstance) { real_T c6_hoistedGlobal; real_T c6_b_hoistedGlobal; real_T c6_c_hoistedGlobal; real_T c6_Xd; real_T c6_Xq; real_T c6_theta; uint32_T c6_debug_family_var_map[11]; real_T c6_c; real_T c6_s; real_T c6_ipm[4]; real_T c6_xab[2]; real_T c6_nargin = 3.0; real_T c6_nargout = 2.0; real_T c6_Xalpha; real_T c6_Xbeta; real_T c6_x; real_T c6_b_x; real_T c6_c_x; real_T c6_d_x; int32_T c6_i0; real_T c6_a[4]; real_T c6_b_Xd[2]; int32_T c6_i1; real_T c6_b[2]; int32_T c6_i2; int32_T c6_i3; int32_T c6_i4; real_T c6_C[2]; int32_T c6_i5; int32_T c6_i6; int32_T c6_i7; int32_T c6_i8; int32_T c6_i9; int32_T c6_i10; real_T *c6_c_Xd; real_T *c6_b_Xq; real_T *c6_b_theta; real_T *c6_b_Xalpha; real_T *c6_b_Xbeta; c6_b_Xbeta = (real_T *)ssGetOutputPortSignal(chartInstance->S, 2); c6_b_theta = (real_T *)ssGetInputPortSignal(chartInstance->S, 2); c6_b_Xq = (real_T *)ssGetInputPortSignal(chartInstance->S, 1); c6_b_Xalpha = (real_T *)ssGetOutputPortSignal(chartInstance->S, 1); c6_c_Xd = (real_T *)ssGetInputPortSignal(chartInstance->S, 0); _SFD_CC_CALL(CHART_ENTER_DURING_FUNCTION_TAG, 5U, chartInstance->c6_sfEvent); c6_hoistedGlobal = *c6_c_Xd; c6_b_hoistedGlobal = *c6_b_Xq; c6_c_hoistedGlobal = *c6_b_theta; c6_Xd = c6_hoistedGlobal; c6_Xq = c6_b_hoistedGlobal; c6_theta = c6_c_hoistedGlobal; sf_debug_symbol_scope_push_eml(0U, 11U, 11U, c6_debug_family_names, c6_debug_family_var_map); sf_debug_symbol_scope_add_eml_importable(&c6_c, 0U, c6_sf_marshallOut, c6_sf_marshallIn); sf_debug_symbol_scope_add_eml_importable(&c6_s, 1U, c6_sf_marshallOut, c6_sf_marshallIn); sf_debug_symbol_scope_add_eml_importable(c6_ipm, 2U, c6_c_sf_marshallOut, c6_c_sf_marshallIn); sf_debug_symbol_scope_add_eml_importable(c6_xab, 3U, c6_b_sf_marshallOut, c6_b_sf_marshallIn); sf_debug_symbol_scope_add_eml_importable(&c6_nargin, 4U, c6_sf_marshallOut, c6_sf_marshallIn); sf_debug_symbol_scope_add_eml_importable(&c6_nargout, 5U, c6_sf_marshallOut, c6_sf_marshallIn); sf_debug_symbol_scope_add_eml(&c6_Xd, 6U, c6_sf_marshallOut); sf_debug_symbol_scope_add_eml(&c6_Xq, 7U, c6_sf_marshallOut); sf_debug_symbol_scope_add_eml(&c6_theta, 8U, c6_sf_marshallOut); sf_debug_symbol_scope_add_eml_importable(&c6_Xalpha, 9U, c6_sf_marshallOut, c6_sf_marshallIn); sf_debug_symbol_scope_add_eml_importable(&c6_Xbeta, 10U, c6_sf_marshallOut, c6_sf_marshallIn); CV_EML_FCN(0, 0); _SFD_EML_CALL(0U, chartInstance->c6_sfEvent, 5); c6_x = c6_theta; c6_c = c6_x; c6_b_x = c6_c; c6_c = c6_b_x; c6_c = muDoubleScalarCos(c6_c); _SFD_EML_CALL(0U, chartInstance->c6_sfEvent, 6); c6_c_x = c6_theta; c6_s = c6_c_x; c6_d_x = c6_s; c6_s = c6_d_x; c6_s = muDoubleScalarSin(c6_s); _SFD_EML_CALL(0U, chartInstance->c6_sfEvent, 8); c6_ipm[0] = c6_c; c6_ipm[2] = -c6_s; c6_ipm[1] = c6_s; c6_ipm[3] = c6_c; _SFD_EML_CALL(0U, chartInstance->c6_sfEvent, 10); for (c6_i0 = 0; c6_i0 < 4; c6_i0++) { c6_a[c6_i0] = c6_ipm[c6_i0]; } c6_b_Xd[0] = c6_Xd; c6_b_Xd[1] = c6_Xq; for (c6_i1 = 0; c6_i1 < 2; c6_i1++) { c6_b[c6_i1] = c6_b_Xd[c6_i1]; } c6_eml_scalar_eg(chartInstance); c6_eml_scalar_eg(chartInstance); for (c6_i2 = 0; c6_i2 < 2; c6_i2++) { c6_xab[c6_i2] = 0.0; } for (c6_i3 = 0; c6_i3 < 2; c6_i3++) { c6_xab[c6_i3] = 0.0; } for (c6_i4 = 0; c6_i4 < 2; c6_i4++) { c6_C[c6_i4] = c6_xab[c6_i4]; } for (c6_i5 = 0; c6_i5 < 2; c6_i5++) { c6_xab[c6_i5] = c6_C[c6_i5]; } for (c6_i6 = 0; c6_i6 < 2; c6_i6++) { c6_C[c6_i6] = c6_xab[c6_i6]; } for (c6_i7 = 0; c6_i7 < 2; c6_i7++) { c6_xab[c6_i7] = c6_C[c6_i7]; } for (c6_i8 = 0; c6_i8 < 2; c6_i8++) { c6_xab[c6_i8] = 0.0; c6_i9 = 0; for (c6_i10 = 0; c6_i10 < 2; c6_i10++) { c6_xab[c6_i8] += c6_a[c6_i9 + c6_i8] * c6_b[c6_i10]; c6_i9 += 2; } } _SFD_EML_CALL(0U, chartInstance->c6_sfEvent, 12); c6_Xalpha = c6_xab[0]; _SFD_EML_CALL(0U, chartInstance->c6_sfEvent, 13); c6_Xbeta = c6_xab[1]; _SFD_EML_CALL(0U, chartInstance->c6_sfEvent, -13); sf_debug_symbol_scope_pop(); *c6_b_Xalpha = c6_Xalpha; *c6_b_Xbeta = c6_Xbeta; _SFD_CC_CALL(EXIT_OUT_OF_FUNCTION_TAG, 5U, chartInstance->c6_sfEvent); }
static void sf_c6_TTR_mdl(SFc6_TTR_mdlInstanceStruct *chartInstance) { int32_T c6_i0; real_T c6_hoistedGlobal; real_T c6_u_ctrl; int32_T c6_i1; real_T c6_U_bounds[2]; uint32_T c6_debug_family_var_map[6]; real_T c6_i; real_T c6_nargin = 2.0; real_T c6_nargout = 1.0; real_T c6_u_ctrl_out; real_T c6_varargin_1; real_T c6_varargin_2; real_T c6_b_varargin_2; real_T c6_varargin_3; real_T c6_x; real_T c6_y; real_T c6_b_x; real_T c6_b_y; real_T c6_xk; real_T c6_yk; real_T c6_c_x; real_T c6_c_y; real_T c6_b_varargin_1; real_T c6_c_varargin_2; real_T c6_d_varargin_2; real_T c6_b_varargin_3; real_T c6_d_x; real_T c6_d_y; real_T c6_e_x; real_T c6_e_y; real_T c6_b_xk; real_T c6_b_yk; real_T c6_f_x; real_T c6_f_y; real_T *c6_b_u_ctrl; real_T *c6_b_u_ctrl_out; real_T (*c6_b_U_bounds)[2]; c6_b_U_bounds = (real_T (*)[2])ssGetInputPortSignal(chartInstance->S, 1); c6_b_u_ctrl_out = (real_T *)ssGetOutputPortSignal(chartInstance->S, 1); c6_b_u_ctrl = (real_T *)ssGetInputPortSignal(chartInstance->S, 0); _sfTime_ = (real_T)ssGetT(chartInstance->S); _SFD_CC_CALL(CHART_ENTER_SFUNCTION_TAG, 5U, chartInstance->c6_sfEvent); _SFD_DATA_RANGE_CHECK(*c6_b_u_ctrl, 0U); _SFD_DATA_RANGE_CHECK(*c6_b_u_ctrl_out, 1U); for (c6_i0 = 0; c6_i0 < 2; c6_i0++) { _SFD_DATA_RANGE_CHECK((*c6_b_U_bounds)[c6_i0], 2U); } chartInstance->c6_sfEvent = CALL_EVENT; _SFD_CC_CALL(CHART_ENTER_DURING_FUNCTION_TAG, 5U, chartInstance->c6_sfEvent); c6_hoistedGlobal = *c6_b_u_ctrl; c6_u_ctrl = c6_hoistedGlobal; for (c6_i1 = 0; c6_i1 < 2; c6_i1++) { c6_U_bounds[c6_i1] = (*c6_b_U_bounds)[c6_i1]; } _SFD_SYMBOL_SCOPE_PUSH_EML(0U, 6U, 6U, c6_debug_family_names, c6_debug_family_var_map); _SFD_SYMBOL_SCOPE_ADD_EML(&c6_i, 0U, c6_sf_marshallOut); _SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c6_nargin, 1U, c6_sf_marshallOut, c6_sf_marshallIn); _SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c6_nargout, 2U, c6_sf_marshallOut, c6_sf_marshallIn); _SFD_SYMBOL_SCOPE_ADD_EML(&c6_u_ctrl, 3U, c6_sf_marshallOut); _SFD_SYMBOL_SCOPE_ADD_EML(c6_U_bounds, 4U, c6_b_sf_marshallOut); _SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c6_u_ctrl_out, 5U, c6_sf_marshallOut, c6_sf_marshallIn); CV_EML_FCN(0, 0); _SFD_EML_CALL(0U, chartInstance->c6_sfEvent, 9); c6_u_ctrl_out = c6_u_ctrl; _SFD_EML_CALL(0U, chartInstance->c6_sfEvent, 11); CV_EML_IF(0, 1, 0, FALSE); _SFD_EML_CALL(0U, chartInstance->c6_sfEvent, 17); c6_i = 1.0; CV_EML_FOR(0, 1, 0, 1); _SFD_EML_CALL(0U, chartInstance->c6_sfEvent, 18); c6_varargin_1 = c6_u_ctrl; c6_varargin_2 = c6_U_bounds[0]; c6_b_varargin_2 = c6_varargin_1; c6_varargin_3 = c6_varargin_2; c6_x = c6_b_varargin_2; c6_y = c6_varargin_3; c6_b_x = c6_x; c6_b_y = c6_y; c6_eml_scalar_eg(chartInstance); c6_xk = c6_b_x; c6_yk = c6_b_y; c6_c_x = c6_xk; c6_c_y = c6_yk; c6_eml_scalar_eg(chartInstance); c6_u_ctrl_out = muDoubleScalarMax(c6_c_x, c6_c_y); _SFD_EML_CALL(0U, chartInstance->c6_sfEvent, 19); c6_b_varargin_1 = c6_u_ctrl; c6_c_varargin_2 = c6_U_bounds[1]; c6_d_varargin_2 = c6_b_varargin_1; c6_b_varargin_3 = c6_c_varargin_2; c6_d_x = c6_d_varargin_2; c6_d_y = c6_b_varargin_3; c6_e_x = c6_d_x; c6_e_y = c6_d_y; c6_eml_scalar_eg(chartInstance); c6_b_xk = c6_e_x; c6_b_yk = c6_e_y; c6_f_x = c6_b_xk; c6_f_y = c6_b_yk; c6_eml_scalar_eg(chartInstance); c6_u_ctrl_out = muDoubleScalarMin(c6_f_x, c6_f_y); CV_EML_FOR(0, 1, 0, 0); _SFD_EML_CALL(0U, chartInstance->c6_sfEvent, -19); _SFD_SYMBOL_SCOPE_POP(); *c6_b_u_ctrl_out = c6_u_ctrl_out; _SFD_CC_CALL(EXIT_OUT_OF_FUNCTION_TAG, 5U, chartInstance->c6_sfEvent); _SFD_CHECK_FOR_STATE_INCONSISTENCY(_TTR_mdlMachineNumber_, chartInstance->chartNumber, chartInstance->instanceNumber); }