Professional Interests: medical image processing, optimization algorithms

PLEASE NOTE: I do not read email sent through my author page. Please post questions about FEX submissions in their respective Comments section.

Answered

How do I assign values from 1D arrays to 4D arrays efficiently

I do this so I can use vectorization to greatly speed up the performance of my calculations by using element-wise operations. Ho...

How do I assign values from 1D arrays to 4D arrays efficiently

I do this so I can use vectorization to greatly speed up the performance of my calculations by using element-wise operations. Ho...

19 hours ago | 1

| accepted

Answered

lsqnonlin is only giving the initial point

I don't know if the solution is what you were expecting, but this gives exitflag 1, la=[39.873297 39.872124 39.869953 39.864596...

lsqnonlin is only giving the initial point

I don't know if the solution is what you were expecting, but this gives exitflag 1, la=[39.873297 39.872124 39.869953 39.864596...

22 hours ago | 1

Answered

Find the Argmin of a vector

You should have avoided naming the variables that way, and should have used (for example) a cell array. Indeed. Here's an examp...

Find the Argmin of a vector

You should have avoided naming the variables that way, and should have used (for example) a cell array. Indeed. Here's an examp...

1 day ago | 0

Answered

Recover matrix Z from XZX', Z es symmetric and n-by-n, while X is k-by-n where n>>k

In the case where k truly is <<n, you can use my KronProd class to get the minimum norm solution https://www.mathworks.com/matl...

Recover matrix Z from XZX', Z es symmetric and n-by-n, while X is k-by-n where n>>k

In the case where k truly is <<n, you can use my KronProd class to get the minimum norm solution https://www.mathworks.com/matl...

1 day ago | 0

Answered

Sum of m- fold convolution

if you write the expression in the frequency domain, it just becomes a big polynomial...

Sum of m- fold convolution

if you write the expression in the frequency domain, it just becomes a big polynomial...

2 days ago | 0

Answered

Why is memory reduced for an identical copy of a sparse array?

Are you sure you have to worry about it? According to what I'm seeing (in R2019a,R2020a), the extra 16 bytes occurs only anomolo...

Why is memory reduced for an identical copy of a sparse array?

Are you sure you have to worry about it? According to what I'm seeing (in R2019a,R2020a), the extra 16 bytes occurs only anomolo...

3 days ago | 0

Answered

standard deviation and mean across specific columns of a 3D matrix

If the idea is to average along rows 2 through 5 in every slice, you would want this, MmtxT1 = mean( mtx([2 3 4 5],:,:) , 2); ...

standard deviation and mean across specific columns of a 3D matrix

If the idea is to average along rows 2 through 5 in every slice, you would want this, MmtxT1 = mean( mtx([2 3 4 5],:,:) , 2); ...

3 days ago | 0

Answered

How to increase memory available for arrays?

A simple solution might be to close other applications that might be consuming RAM. For example, closing Microsoft Outlook freed...

How to increase memory available for arrays?

A simple solution might be to close other applications that might be consuming RAM. For example, closing Microsoft Outlook freed...

3 days ago | 0

Question

EVALIN cannot execute a return?

I am trying to create a function that aborts whatever mfile is currently executing after issuing a warning. I see no way of avoi...

3 days ago | 2 answers | 0

Answered

make vectors same length

One way, collection = {acc,gyr,mag}; minlen = min(cellfun('length',collection)); clipped=cellfun(@(z)z(1:minlen),collecti...

make vectors same length

One way, collection = {acc,gyr,mag}; minlen = min(cellfun('length',collection)); clipped=cellfun(@(z)z(1:minlen),collecti...

4 days ago | 1

| accepted

Answered

Can I change degrees to radians by simply changing from sind to sin?

cos and sin will assume the input angles are measured in radians. If theta is in degrees, you must convert to radians in order t...

Can I change degrees to radians by simply changing from sind to sin?

cos and sin will assume the input angles are measured in radians. If theta is in degrees, you must convert to radians in order t...

4 days ago | 1

| accepted

Answered

How to use linear and quadratic programming to optimize w to solve the following problem

This looks like a direct application of lsqlin https://www.mathworks.com/help/optim/ug/lsqlin.html

How to use linear and quadratic programming to optimize w to solve the following problem

This looks like a direct application of lsqlin https://www.mathworks.com/help/optim/ug/lsqlin.html

4 days ago | 0

Answered

count number of indices

Using group1s from the File Exchange https://www.mathworks.com/matlabcentral/fileexchange/78008-group1s col2=arrayA(:,2); I...

count number of indices

Using group1s from the File Exchange https://www.mathworks.com/matlabcentral/fileexchange/78008-group1s col2=arrayA(:,2); I...

4 days ago | 0

Submitted

Extract linearly independent subset of matrix columns

Loop-free code routine to find a maximal subset of linearly independent columns in a matrix

5 days ago | 4 downloads |

Answered

How do I partition a n by m matrix into equal rows

Hint: Consider repelem https://www.mathworks.com/help/matlab/ref/repelem.html

How do I partition a n by m matrix into equal rows

Hint: Consider repelem https://www.mathworks.com/help/matlab/ref/repelem.html

6 days ago | 0

Answered

Integral calculation using matlab

My difficulty stems from the absolute value which is "outside" of the integral Why is this a difficulty? Because it prevents yo...

Integral calculation using matlab

My difficulty stems from the absolute value which is "outside" of the integral Why is this a difficulty? Because it prevents yo...

6 days ago | 0

Answered

finite difference step size value in fmincon

You might try the sqp or interior point algorithm, instead of whatever fmincon algorithm setting you are currently using. Accord...

finite difference step size value in fmincon

You might try the sqp or interior point algorithm, instead of whatever fmincon algorithm setting you are currently using. Accord...

6 days ago | 0

| accepted

Answered

fmincon output is converging to infeasible point

It appears that you are simply trying to find a point where getCost(Y) returns zero. If so, it might make it easier on the algor...

fmincon output is converging to infeasible point

It appears that you are simply trying to find a point where getCost(Y) returns zero. If so, it might make it easier on the algor...

6 days ago | 0

Answered

Algorithm to extract linearly dependent columns in a matrix

See this FEX contribution https://www.mathworks.com/matlabcentral/fileexchange/77437-extract-linearly-independent-subset-of-mat...

Algorithm to extract linearly dependent columns in a matrix

See this FEX contribution https://www.mathworks.com/matlabcentral/fileexchange/77437-extract-linearly-independent-subset-of-mat...

6 days ago | 2

Answered

fminbnd loop leads to same optimizer

In addition to hwat John said, you could plot the function to confirm whether fminbnd is giving you a good approximation of the ...

fminbnd loop leads to same optimizer

In addition to hwat John said, you could plot the function to confirm whether fminbnd is giving you a good approximation of the ...

7 days ago | 0

| accepted

Answered

return a single vector after a for loop and not individual results

For a fully vectorized solution: [maxval,place]=max(Divergence<=5,[],2); place(maxval==0)=nan; Or, to do the same with a loop...

return a single vector after a for loop and not individual results

For a fully vectorized solution: [maxval,place]=max(Divergence<=5,[],2); place(maxval==0)=nan; Or, to do the same with a loop...

7 days ago | 0

| accepted

Answered

Index in position 1 exceeds array bounds (must not exceed 1). FMINCON

Make theta0 a column vector: >> theta0 = [2,0.2,0.1,0.4].' theta0 = 2.0000 0.2000 0.1000 0.4000

Index in position 1 exceeds array bounds (must not exceed 1). FMINCON

Make theta0 a column vector: >> theta0 = [2,0.2,0.1,0.4].' theta0 = 2.0000 0.2000 0.1000 0.4000

8 days ago | 0

| accepted

Answered

How can I determine the amount of times a certain value can be achieved by summing values in a matrix?

Below is a more advanced version of my original answer, which is showing greater empirical succes. It incorporates initializatio...

How can I determine the amount of times a certain value can be achieved by summing values in a matrix?

Below is a more advanced version of my original answer, which is showing greater empirical succes. It incorporates initializatio...

8 days ago | 0

Answered

How to logically index multiple indices while indexing other indices normally?

You probably won't notice much difference with such small data sizes, but reshape is slightly better than permute because it wil...

How to logically index multiple indices while indexing other indices normally?

You probably won't notice much difference with such small data sizes, but reshape is slightly better than permute because it wil...

8 days ago | 0

| accepted

Answered

How do I get every combination of 3 vectors?

Example: [X,Y,Z]=ndgrid(1:3,10:15,100:102); [X(:),Y(:),Z(:)]

How do I get every combination of 3 vectors?

Example: [X,Y,Z]=ndgrid(1:3,10:15,100:102); [X(:),Y(:),Z(:)]

9 days ago | 1

Answered

Particularly strange bug using the eval function

I also know that MATHWORKS would prefer me not to define variables that clash with their own builtins. However, the code st...

Particularly strange bug using the eval function

I also know that MATHWORKS would prefer me not to define variables that clash with their own builtins. However, the code st...

9 days ago | 2

Answered

Can one set up initial values for fminbnd?

No, you cannot. However, you might get a comparable effect if you use fminsearch instead, setting your objective to Inf outside ...

Can one set up initial values for fminbnd?

No, you cannot. However, you might get a comparable effect if you use fminsearch instead, setting your objective to Inf outside ...

9 days ago | 0

| accepted

Answered

Given a point, locate 3 point in different 8 directions.

Or maybe this is what you want. In the code below, A is your image and the result Neighbors(i,j,:) contains all 9 neighbors of A...

Given a point, locate 3 point in different 8 directions.

Or maybe this is what you want. In the code below, A is your image and the result Neighbors(i,j,:) contains all 9 neighbors of A...

9 days ago | 0

Answered

calculate mean in a for loop

No need for loops, Mean_answer=cumsum(data,2)./(1:size(data,2));

calculate mean in a for loop

No need for loops, Mean_answer=cumsum(data,2)./(1:size(data,2));

9 days ago | 0

Answered

Given a point, locate 3 point in different 8 directions.

I'm not sure I understand what the how-to challenge is in the question, but the approach that I think you want is to calculate a...

Given a point, locate 3 point in different 8 directions.

I'm not sure I understand what the how-to challenge is in the question, but the approach that I think you want is to calculate a...

9 days ago | 0