Da Vinci Firmware 1
Firmware for the DaVinci-M rocket avionics board.
Loading...
Searching...
No Matches
eml_mtimes_helper.c
Go to the documentation of this file.
1/*
2 * Academic License - for use in teaching, academic research, and meeting
3 * course requirements at degree granting institutions only. Not for
4 * government, commercial, or other organizational use.
5 * File: eml_mtimes_helper.c
6 *
7 * MATLAB Coder version : 24.2
8 * C/C++ source code generated on : 03-Dec-2024 17:11:12
9 */
10
11/* Include Files */
12#include "eml_mtimes_helper.h"
13#include "rt_nonfinite.h"
14
15/* Function Definitions */
16/*
17 * Arguments : const double in1_data[]
18 * const int in1_size[2]
19 * const double in2_data[]
20 * const int *in2_size
21 * const double in3_data[]
22 * const double in4_data[]
23 * const int *in4_size
24 * const double in5_data[]
25 * const int *in5_size
26 * const double in6_data[]
27 * const double in7_data[]
28 * const int *in7_size
29 * Return Type : double
30 */
31double binary_expand_op(const double in1_data[], const int in1_size[2],
32 const double in2_data[], const int *in2_size,
33 const double in3_data[], const double in4_data[],
34 const int *in4_size, const double in5_data[],
35 const int *in5_size, const double in6_data[],
36 const double in7_data[], const int *in7_size)
37{
38 double b_in2_data;
39 double in6;
40 double out1;
41 int i;
42 int loop_ub;
43 out1 = in3_data[0];
44 in6 = in6_data[0];
45 if (*in7_size == 1) {
46 if (*in5_size == 1) {
47 if (*in4_size == 1) {
48 loop_ub = *in2_size;
49 } else {
50 loop_ub = *in4_size;
51 }
52 } else {
53 loop_ub = *in5_size;
54 }
55 } else {
56 loop_ub = *in7_size;
57 }
58 for (i = 0; i < loop_ub; i++) {
59 b_in2_data =
60 ((in2_data[0] * out1 + in4_data[0] * out1) + in5_data[0] * in6) +
61 in7_data[0] * in6;
62 }
63 out1 = 0.0;
64 loop_ub = in1_size[1];
65 for (i = 0; i < loop_ub; i++) {
66 out1 += in1_data[0] * b_in2_data;
67 }
68 return out1;
69}
70
71/*
72 * File trailer for eml_mtimes_helper.c
73 *
74 * [EOF]
75 */
double binary_expand_op(const double in1_data[], const int in1_size[2], const double in2_data[], const int *in2_size, const double in3_data[], const double in4_data[], const int *in4_size, const double in5_data[], const int *in5_size, const double in6_data[], const double in7_data[], const int *in7_size)
Performs a fused set of element-wise operations for 2D interpolation.
A MATLAB Coder helper for performing element-wise array operations.
Provides definitions and utility functions for non-finite floating-point values.