Problem Dependent parameter passing into slicesample
1 次查看(过去 30 天)
显示 更早的评论
Is there a way for me to pass a problem dependent parameter into slicesample similar to how it is done for lsqnonlin, i.e.
c=1;
x = lsqnonlin(@(x) myfun(x,c),[1;1]);
function F = myfun(x,c)
F = [ 2*x(1) - exp(c*x(1))
-x(1) - exp(c*x(2))
x(1) - x(2) ];
%hoping to do something like this:
x = slicesample([1;1],N,'pdf',f(x,c),'thin',5,'burnin',1000);
So far it seems like slicesample can only be called with the parameters that it will explore the pdf space with.
0 个评论
回答(1 个)
Prudhvi Peddagoni
2021-3-12
Hi,
You can pass additional parameters such as c to the slicesample function like this:
x = slicesample([1;1],N,'pdf',@(x) myfun(x,c),'thin',5,'burnin',1000);
The reason it is throwing error is because there are 3 different functions in myfun. In lsqnonlin function, it returns x such that the sum of squares of these multiple input functions is minimum. But in the case of slicesample function, you need to give a single function.
Hope this helps.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Startup and Shutdown 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!