2012-02-18 3 views
2

Определить полюса осознанных факторов, как независимые переменные (начиная решения для рутинной оптимизации)FMINSEARCH принимает только входы типа данных двойного (Matlab)

x0 = {[-0.4 -0.4 -0.4 -0.4]}; 

оценки целевой функции

filename = 'getrcsu'; 

объявить функцию, чтобы свести к минимуму

x = fminsearch(@(m,n,w1,w2,h,G,hd,mpoles,dpoles) filename,x0); 

Когда я попробую запустить кодировку выше. Matlab отображает сообщение об ошибке:

FMINSEARCH only accepts inputs of data type double. 

Я не понимаю, в чем проблема. Пожалуйста помоги мне с этим. Благодарю.

ответ

2

Ваша проблема вызвана использованием фигурных скобок вокруг x0. Вы определяете его как массив ячеек, а не матрицу.

x0 = [-0.4 -0.4 -0.4 -0.4]; 

Должно работать.

+0

Спасибо за ответ prototoast.I еще есть несколько вопросов здесь. 1) Если mpoles и dpoles выражены в исходном решении, следует ли вставлять их в скобку после @ в кодировке выше ??? 2) Я столкнулся с другой формой ошибки: «Преобразование в double из tf невозможно». –

Смежные вопросы