Difficulties in Assembling an array from NumericEditFields in app designer

5 ビュー (過去 30 日間)
I need to assemble a 4x1 array from user-submitted data in NumericEditFields button fields.
When I use direct data by a matrix initiated directly my neural network can perform the simulation.
Matrix that works (example)
D1= [150; 22; 10; 5;]
D1=
150
22
10
5
However, if this data is sent by the user and I assemble an array with the following code:
app.D1 = [app.Is; app.Us; app.Vs; app.Es;]
where app.Is.. are the values of the fields entered by the user, the D1 array does not assemble an array and the following error appears.
Error using network/sim (line 248). Inputs is not a matrix or cell array.
I created a "test" button to send me the data of the assembled array and the return is as follows:
value =
4×1 NumericEditField array:
NumericEditField (150)
NumericEditField (22)
NumericEditField (10)
NumericEditField (5)
How do I create an array D1= [150; 22; 10; 5;] what works?
Can someone help me?

採用された回答

Walter Roberson
Walter Roberson 2022 年 8 月 9 日
app.D1 = [app.Is.Value; app.Us.Value; app.Vs.Value; app.Es.Value];
Or... you could leave app.D1 as it is, and at the time you need the numeric values from it,
D1 = arrayfun(@(F)F.Value, app.D1);
The difference between these two is that the first one fetches the numeric values as of the time the assignment to app.D1 is made, whereas the second records the numeric values as of the time that the assignment to D1 is made (with app.D1 recording the handles to the edit fields.)
  1 件のコメント
Arlan Pacheco Figueiredo
Arlan Pacheco Figueiredo 2022 年 8 月 9 日
編集済み: Arlan Pacheco Figueiredo 2022 年 8 月 9 日
Thank you very much Walter, with this code the app worked correctly.
I used "arrayfun" but I typed the code inside the parentheses totally wrong.
Grateful

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeMatrix Indexing についてさらに検索

製品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by