Professional Interests: numerical linear algebra, graph algorithms

Answered

Control edge alpha via edge weights to visualize a dynamic network

You can set the LineWidth to be zero for edges that should not be displayed: >> g = digraph([3 1 2], [2 3 1], [0 0.5 1]); >> p...

Control edge alpha via edge weights to visualize a dynamic network

You can set the LineWidth to be zero for edges that should not be displayed: >> g = digraph([3 1 2], [2 3 1], [0 0.5 1]); >> p...

17 hours ago | 1

Answered

how to create a symmetric Toeplitz matrix with bounds on eigenvalues?

You can use the MATLAB function toeplitz with one input argument (two-input returns a non-symmetric Toeplitz matrix).

how to create a symmetric Toeplitz matrix with bounds on eigenvalues?

You can use the MATLAB function toeplitz with one input argument (two-input returns a non-symmetric Toeplitz matrix).

2 days ago | 0

Answered

Interpolation for n-dimensional array data

I don't think interpn would work very well for you: The U, S and V matrices returned by SVD are not linearly dependent on the in...

Interpolation for n-dimensional array data

I don't think interpn would work very well for you: The U, S and V matrices returned by SVD are not linearly dependent on the in...

7 days ago | 1

Answered

eigs gives wrong eigenvalues

Edit: Please see the comment below, the first answer I gave here was going in the wrong direction. Thank you for the detailed d...

eigs gives wrong eigenvalues

Edit: Please see the comment below, the first answer I gave here was going in the wrong direction. Thank you for the detailed d...

8 days ago | 1

Answered

How can I solve linear equation system in parallel?

As John says, if you are using decomposition on one computer with several cores, the solver used already will use those cores if...

How can I solve linear equation system in parallel?

As John says, if you are using decomposition on one computer with several cores, the solver used already will use those cores if...

15 days ago | 1

Answered

Why Power of Matrix with decimal values gives really big numbers?

For a Markov Chain, you need the sum of each row to be 1 (as this represents the probability to transition to any state), and ev...

Why Power of Matrix with decimal values gives really big numbers?

For a Markov Chain, you need the sum of each row to be 1 (as this represents the probability to transition to any state), and ev...

16 days ago | 0

Answered

Which Right Eigenvector to report?

The left and right eigenvectors are matched one-by-one. For example, for [V, D, W] = eig(A), the eigenvalue D(k, k) corresponds ...

Which Right Eigenvector to report?

The left and right eigenvectors are matched one-by-one. For example, for [V, D, W] = eig(A), the eigenvalue D(k, k) corresponds ...

23 days ago | 0

Answered

eigs for generalized eigenvalue problem ( [V,D] = eigs(A,B) ) with spars matrix

A bug was introduced in R2017b in eigs for matrices with exact zero eigenvalues. This bug has been fixed in R2019a, the fix appl...

eigs for generalized eigenvalue problem ( [V,D] = eigs(A,B) ) with spars matrix

A bug was introduced in R2017b in eigs for matrices with exact zero eigenvalues. This bug has been fixed in R2019a, the fix appl...

1 month ago | 1

Answered

Error using eig Input matrix contains NaN or Inf from images

The variable covariance_matrix contains non-finite values (either Inf meaning infinity, returned for example from 1/0, or NaN me...

Error using eig Input matrix contains NaN or Inf from images

The variable covariance_matrix contains non-finite values (either Inf meaning infinity, returned for example from 1/0, or NaN me...

1 month ago | 0

Answered

Why are eigenvector matrices computed by matlab not idempotent

Hi Marco, You seem to be confusing two terms: A matrix M is idempotent if ; it's orthogonal if , which is what you are testing ...

Why are eigenvector matrices computed by matlab not idempotent

Hi Marco, You seem to be confusing two terms: A matrix M is idempotent if ; it's orthogonal if , which is what you are testing ...

2 months ago | 2

| accepted

Answered

Warning: Matrix is close to singular or badly scaled. Results may be inaccurate. RCOND = 7.252760e-17.

As lambda approaches an eigenvalue of A (which is the goal of your algorithm), the matrix A - lambda*eye(size(A)) becomes close ...

Warning: Matrix is close to singular or badly scaled. Results may be inaccurate. RCOND = 7.252760e-17.

As lambda approaches an eigenvalue of A (which is the goal of your algorithm), the matrix A - lambda*eye(size(A)) becomes close ...

2 months ago | 1

| accepted

Answered

How to compute efficiently A^(-1)*(1-exp(-A*h))?

For most sparse matrices expm(A) will be dense, so that should be expected to be expensive with a 1e4-by-1e4 matrix. If you are ...

How to compute efficiently A^(-1)*(1-exp(-A*h))?

For most sparse matrices expm(A) will be dense, so that should be expected to be expensive with a 1e4-by-1e4 matrix. If you are ...

2 months ago | 0

| accepted

Answered

How to add svd(singular value decomposition) in a custom layer

When dlarray supports a function, this means, most of all, that it supports automatic differentiation of this function - which f...

How to add svd(singular value decomposition) in a custom layer

When dlarray supports a function, this means, most of all, that it supports automatic differentiation of this function - which f...

2 months ago | 0

Answered

How to add svd(singular value decomposition) in a custom layer

Yes, this is because SVD is not supported for dlarray. For its first release in R2019b, dlarray supports about 80 basic methods,...

How to add svd(singular value decomposition) in a custom layer

Yes, this is because SVD is not supported for dlarray. For its first release in R2019b, dlarray supports about 80 basic methods,...

2 months ago | 0

| accepted

Answered

Open just some Graph Edges in Variable Editor and let the user modify them?

That's tricky: In terms of assignment, if G.Edges(i, :) is assigned to, the graph class interprets this as assigning to all elem...

Open just some Graph Edges in Variable Editor and let the user modify them?

That's tricky: In terms of assignment, if G.Edges(i, :) is assigned to, the graph class interprets this as assigning to all elem...

2 months ago | 0

| accepted

Answered

how get graph?

Since MATLAB R2015b, there are Graph and Network Algorithms in MATLAB that will allow you to construct and plot a graph of these...

how get graph?

Since MATLAB R2015b, there are Graph and Network Algorithms in MATLAB that will allow you to construct and plot a graph of these...

2 months ago | 0

Answered

Connected graph given adjacency matrix

I realize this is an old question, but since it's still getting visits, I have a small addition. As of R2015b, the new graph and...

Connected graph given adjacency matrix

I realize this is an old question, but since it's still getting visits, I have a small addition. As of R2015b, the new graph and...

2 months ago | 1

Answered

Extract eigenvalues and eigenvectors / Symbolic to numeric / Rayleigh-Ritz Method / Vibro-acoustics

The problem is making i and j into symbolic variables, which leads to the symbolic engine not knowing that these are real intege...

Extract eigenvalues and eigenvectors / Symbolic to numeric / Rayleigh-Ritz Method / Vibro-acoustics

The problem is making i and j into symbolic variables, which leads to the symbolic engine not knowing that these are real intege...

2 months ago | 0

Answered

Graph visualization adding white to my nodes. How to solve it?

I'd assume this problem will also happen with other graphics elements. Could you try the following code and let me know if you'r...

Graph visualization adding white to my nodes. How to solve it?

I'd assume this problem will also happen with other graphics elements. Could you try the following code and let me know if you'r...

3 months ago | 1

| accepted

Answered

Shortest path through node group sets

There is no direct graph-based algorithm to solve this. I would suggest using the optimization toolbox to define this as an opti...

Shortest path through node group sets

There is no direct graph-based algorithm to solve this. I would suggest using the optimization toolbox to define this as an opti...

3 months ago | 1

| accepted

Answered

Error using 'graph' function in matlab R2019b

Could you try starting a new MATLAB and just enter the following code: >> A = ones(3); >> G = graph(A); If this gives the err...

Error using 'graph' function in matlab R2019b

Could you try starting a new MATLAB and just enter the following code: >> A = ones(3); >> G = graph(A); If this gives the err...

3 months ago | 0

| accepted

Answered

how to avoid floating point error and figure out a way to break out of this loop such that it generates correct answer

There has been a lot of research on how to deal with floating-point error in the Lanczos algorithm, see the Wikipedia page for s...

how to avoid floating point error and figure out a way to break out of this loop such that it generates correct answer

There has been a lot of research on how to deal with floating-point error in the Lanczos algorithm, see the Wikipedia page for s...

3 months ago | 0

Answered

Why my eigenvalues from (v,d)=eig(k,m) are so close to each other?

Since you mentioned eigenvalues converging at a certain number in the context of FEA analysis: This is usually not the case for ...

Why my eigenvalues from (v,d)=eig(k,m) are so close to each other?

Since you mentioned eigenvalues converging at a certain number in the context of FEA analysis: This is usually not the case for ...

3 months ago | 0

Answered

Does the function "ode45" use matrix decomposition?

ODE45 does not use a decomposition or solve a linear system with A. However, ODE15s and ODE23s, which are specialized for "stiff...

Does the function "ode45" use matrix decomposition?

ODE45 does not use a decomposition or solve a linear system with A. However, ODE15s and ODE23s, which are specialized for "stiff...

3 months ago | 0

| accepted

Answered

could anyone help me to calculate the euclidean distance for the matrix.

Hi Bruno, I have the same problem where I can't comment on your answer, so adding another answer here. That's a good point - ve...

could anyone help me to calculate the euclidean distance for the matrix.

Hi Bruno, I have the same problem where I can't comment on your answer, so adding another answer here. That's a good point - ve...

4 months ago | 0

Answered

could anyone help me to calculate the euclidean distance for the matrix.

For MATLAB R2017b or later, you can use the vecnorm function for a simpler construction than the one involving sqrt, sum, and .^...

could anyone help me to calculate the euclidean distance for the matrix.

For MATLAB R2017b or later, you can use the vecnorm function for a simpler construction than the one involving sqrt, sum, and .^...

5 months ago | 1

Answered

Hi just want to know if someone can maybe help me i have this matrix t want to get the eigenvector but it give me complex values and im pretty sure it must not be complex values for that matrix

A simple way to verify if the returned eigenvalues are correct is to compute both the eigenvalues and the eigenvectors, and to c...

Hi just want to know if someone can maybe help me i have this matrix t want to get the eigenvector but it give me complex values and im pretty sure it must not be complex values for that matrix

A simple way to verify if the returned eigenvalues are correct is to compute both the eigenvalues and the eigenvectors, and to c...

5 months ago | 1

Answered

How can I solve a sparse linear system efficiently in MATLAB?

Do you need the whole matrix A*inv(B)*A', or do you just need to apply this matrix to a vector (A*inv(B)*A'*x)? In the second ca...

How can I solve a sparse linear system efficiently in MATLAB?

Do you need the whole matrix A*inv(B)*A', or do you just need to apply this matrix to a vector (A*inv(B)*A'*x)? In the second ca...

6 months ago | 0

Answered

Backslash (\) operator became much slower when updating from 2015b to 2019a

Thank you for these logs. The difference in behavior comes from the following message, saying that we repeat the factorization w...

Backslash (\) operator became much slower when updating from 2015b to 2019a

Thank you for these logs. The difference in behavior comes from the following message, saying that we repeat the factorization w...

6 months ago | 1

| accepted

Answered

Backslash (\) operator became much slower when updating from 2015b to 2019a

Based on the spy plot, I would be astonished if a different method was selected between the two releases - I think the LU solver...

Backslash (\) operator became much slower when updating from 2015b to 2019a

Based on the spy plot, I would be astonished if a different method was selected between the two releases - I think the LU solver...

6 months ago | 1