Пример #1
0
        internal RCParameterMirrorViewModel(IRCParameterViewModel toMirror)
        {
            Name      = toMirror.Name;
            _toMirror = toMirror;

            toMirror
            .WhenAnyValue(vm => vm.CorrelationN)
            .Subscribe(ObserveMirrorCorrelationN);
        }
Пример #2
0
        internal ViewCorrelationViewModel(Arr <string> parameterNames, Matrix <double> correlations)
        {
            ParameterNames = parameterNames;

            var nParameters = ParameterNames.Count;

            RequireTrue(
                nParameters > 1 &&
                nParameters == correlations.RowCount &&
                nParameters == correlations.ColumnCount
                );

            var rcParameterViewModels = new IRCParameterViewModel[nParameters][];

            Range(0, nParameters).Iter(i =>
            {
                rcParameterViewModels[i] = new IRCParameterViewModel[nParameters];

                var row = correlations.Row(i);

                Range(0, nParameters).Iter(j =>
                {
                    if (j == i)
                    {
                        rcParameterViewModels[i][j] = new RCParameterDiagonalViewModel(
                            ParameterNames[i],
                            1d
                            );
                    }
                    else
                    {
                        rcParameterViewModels[i][j] = new RCParameterViewModel(
                            ParameterNames[i],
                            default
                            )
                        {
                            CorrelationN = Round(row[j], 2)
                        };
                    }
                });
            });

            _rcParameterViewModels = rcParameterViewModels;

            Close = ReactiveCommand.Create(HandleClose);
        }