Community Profile

photo

James Tursa


Last seen: Today
3.964 total contributions since 2007

Interested in external applications, mex & engine applications with Fortran, C, C++, etc, particularly in the areas of speed improvement and memory management efficiencies.

Contact

James Tursa's Badges

  • Revival Level 3
  • Master
  • Personal Best Downloads Level 3
  • First Review
  • 5-Star Galaxy Level 5
  • First Submission
  • 36 Month Streak
  • Thankful Level 2
  • Knowledgeable Level 4
  • First Answer
  • Solver

View details...

Contributions in
View by

Answered
Using vectorization to shorten run time
E.g., [P,D] = meshgrid(p,d); % generate all possible combinations X = [P(:) D(:)]; % combine them into side-by-side column vec...

etwa 8 Stunden ago | 1

| accepted

Answered
why does dimension of input variable change in ode45
The dimension changes to a column vector because that is the way ode45( ) operates. Your derivative function needs to be able t...

etwa 8 Stunden ago | 0

Answered
Maatlab crash with .mex function
I had to make some assumptions about how the matrix data areas are supposed to be loaded. We can try this first to see if these...

etwa 8 Stunden ago | 0

Answered
How to calculate standard deviation in double for loop?
The short answer is don't do that. This style of programming has many problems. See this link for alternatives: https://www.m...

etwa 24 Stunden ago | 0

Answered
Add row to an empty array if a condition is fulfilled
No need for an explicit loop. Just use logical indexing: result = m(strcmp(m(:,3),'A'),:);

ein Tag ago | 0

| accepted

Answered
reproduce random numbers for the third dimension
If you don't want the random numbers to change from iteration to iteration, then don't regenerate them inside the loop. Calcula...

ein Tag ago | 0

Answered
Using an Array as an input
The error message actually tells you exactly what to do. Use element-wise operator .^ instead of the matrix operator ^ Energy ...

ein Tag ago | 1

Answered
Runge-Kutta 2
The + 4.*x1 should be - 4.*x1 in your derivative function. Also, using both X1 and x1 and X2 and x2, even though MATLAB is case...

ein Tag ago | 0

| accepted

Answered
3D array of rotation matrices multiplied on 2D array of vectors
To answer your side question of how to transpose 2D pages of an array, you can use the permute function to swap the first two di...

ein Tag ago | 0

Answered
Passing structs/objects to functions
MATLAB typically passes shared data copies of input arguments to functions. That means creating a separate mxArray header for t...

3 Tage ago | 0

Answered
How can I solve a system of ODE's, in which the equations have a dependency on time, as well as the other ODEs?
Just code it up as it appears using a 3-element state vector, where the elements are defined as follows y(1) = x y(2) = y y(3...

10 Tage ago | 0

Answered
How to improve the speed of large matrix addition?
If you are generating a new matrix C each time, then you are essentially doing two things: (1) Copying all the elements of A in...

10 Tage ago | 0

Answered
Dealing with very small or very large numbers
I guess the obvious suggestion is to work in units of nanometers or maybe picometers instead of meters. Can you do that?

12 Tage ago | 0

| accepted

Answered
How to use if statement in function?
Add this code to the top of your function: if( N <= 0 ) error('N needs to be > 0') end That being said, your loop probab...

13 Tage ago | 1

| accepted

Answered
How to build a quaternion from a normal vector?
If you have the Aerospace Toolbox, you could do the following n = 1x3 unit normal vector a = angle to rotate in radians v = 1...

13 Tage ago | 0

Answered
Runge-Kutta 2
Normally one would plot the position, not the velocity. So I would have expected you to plot the "1" index of your solutions. ...

13 Tage ago | 0

Answered
Double Variable Second order Differential Equation
Just write a derivative function using four states instead of two. The states will be x, y, dxdt, and dydt. The derivitives of...

13 Tage ago | 1

| accepted

Answered
How can I divide each element of a vector by each of the elements of another vector in MATLAB?
Assuming a and b are both column vectors, you can use automatic array expansion by transposing one of them and using element-wis...

14 Tage ago | 0

| accepted

Answered
"Array indicies must be positive integers" error
You can't have 0 or fractional indexing in MATLAB. Take this section of code for example: for t = 0:1:200 U(0,t) = ui; ...

14 Tage ago | 0

Answered
what is the difference between the 2 codes ?
zeros([2,2]) passes one argument, a 2-element vector [2,2]. zeros(2,2) passes two arguments, the scalars 2 and 2. The result i...

14 Tage ago | 0

Answered
Getting all Permutations of a 18+ integer vector
The number of different permutations of a vector of size n is n! (n factorial). So what you are attempting has these many possi...

15 Tage ago | 0

Answered
Calculating a matrix with a specific form
You could rearrange the equations, isolate m(1), m(2), and m(3) and solve for them directly. E.g., rearrange the equations to f...

15 Tage ago | 2

Answered
Combine logical arrays into one array
L = L1 | L2 | L3 | L4;

15 Tage ago | 0

| accepted

Answered
How to vectorise code involving matrix multiplications with vectors
See this link: https://www.mathworks.com/matlabcentral/answers/776812-how-to-vectorize-a-b-operation-on-slices-of-3d-matrices?s...

15 Tage ago | 0

| accepted

Answered
What is the corect code for writing an error message when a user inputs an array instead of a scalar value?
Several ways to test for a scalar. E.g., if( ~isscalar(x) ) error('Input is not a scalar'); end or if( numel(x) ~= 1 )...

15 Tage ago | 0

Answered
Calculating and and recording a vector during each iteration of a "while" loop.
E.g., using a counter to store all of your iteration data in a cell array and then post process this: k = 1; % the counter Rce...

15 Tage ago | 0

| accepted

Answered
Trying to separate Quaternion coefficients into array.
Use the double( ) function to convert to numeric array, then use regular indexing. E.g., try this function g = actfun(q) ...

15 Tage ago | 1

| accepted

Answered
quat2eul is giving me a strange result
Maybe all you have to do is add 2*pi to all results that are less than -pi to get things how you want.

20 Tage ago | 0

| accepted

Answered
Handling Inputs mex function
The prhs[ ] variables are of type pointer to mxArray ... you cannot use simple native C conversions with them. You must use som...

22 Tage ago | 0

| accepted

Answered
How can I fix this error?
Delete the extra closing parentheses. I.e., delete the paren where the red underline is.

23 Tage ago | 0

Load more