Log in

No account? Create an account
Matlab Discussion and Help's Journal
[Most Recent Entries] [Calendar View] [Friends]

Below are the 19 most recent journal entries recorded in Matlab Discussion and Help's LiveJournal:

[ << Previous 20 ]
Wednesday, November 23rd, 2011
6:22 pm
a singular Jacobian encountered
Hi, guys! I was solving ODE when I struggled with this mistake.
when l is lower then 0.01 it matlab writes 'Unable to solve the collocation equations -- a singular Jacobian encountered'.

ProgramCollapse )

When solving analytically the integration constants take the form:
betm = 0.000000000000000001; %zero
betd = 0.000000000000000001; %zero

Cdb = Em * betm * hm / (Em * betm * hm + Ed * betd * hd);
Cmb =- Ed * betd * hd / (Em * betm * hm + Ed * betd * hd);

instead of



And I really don't know how to code it.:\

Friday, June 3rd, 2011
10:16 am
I'm trying to create an image processing program in MATLAB that can do the following:
(1) Load an image.
(2) Crop image.
(3) Scale image.
(4) Edit image.
- Intensity adjust.
- Auto-intensity adjust.
- Contrast adjust.
- Color bring-out.
(5) Blur image.
(6) Convert to grayscale.
(7) Plot histograms.
(8) Undo
(9) Redo
(10) Save current working image.
(11) Play a slideshow.
(12) Exit.

I have three questions:
(1) I am really struggling for the code to write the 'undo/redo' function. I've tried almost everything and nothing has actually worked. If you guys could maybe help me put together something, I'd really appreciate it!

(2) I want my program to offer submenus. For example, when you run Load Image, I would like the program to list out the other functions that you may use after loading the image. How could I go about doing that? So far I only have a script that references multiple functions that I have written.

(3) As far as blurring the image goes, I want there to be options to blur it vertically, horizontally and all over. This is the code I have:

function [ out1 ] = blurred_image( filename, direction )
if (direction == 3);
I = imread(filename);
h = fspecial('gaussian',10,10);
out1 = imshow(I);

if (direction == 2);
I = imread(filename);
I = double(I)/255;
k = 1; % Order of the polynomial
windowSize = 25;
verticallySmoothedImage = sgolayfilt(I, k, windowSize, [], 1);
imshow(verticallySmoothedImage, [0 255]);

if (direction == 1);
I = imread(filename);
I = double(I)/255;
k = 1;
windowSize = 25;
horizontallySmoothedImage = sgolayfilt(I, k, windowSize, [], 2);
imshow(horizontallySmoothedImage, [0 255]);


So basically, if you entered blurred_image('pic.jpg', 3), it would show you your picture blurred in all directions. However, what if I wanted the user to specify the number of pixels they would like to blur? How would I edit my code to do that?

Thank you so much in advance!
Tuesday, December 7th, 2010
11:47 am
Simulink на Mac OS
Есть две проблемы:

1. Не работает прокрутка и мультитач

2. Необходимо сохранить схему в формате, понятном для любого компутера, на котором не установлен матлаб, например в PDF или PNG.
(при попытке воспользоваться стандартными средствами сохраняется только часть схемы, если сохранять для web, то схема разбивается на огромное множество фреймов, просматривать которые если и можно, то печатать на принтере уже не возможно)

Может кто подскажет как решить эти две проблемы?

P.S. установлен матлаб (R2010 b) 64-bit

Excuse for my English.
I use Simulink in Mac OS

There are problems:

1. Scrolling and Multi-touch doesn't work

2. It is necessary to keep the scheme in a format, clear for any computer on which it is not established matlab, for example in PDF or PNG.
(At attempt to use standard means the scheme part remains only if to keep for web the scheme breaks into huge set of frames, to look through which if and it is possible to print on the printer it is already impossible)

Who can will prompt as to solve these two problems?

P.S. matlab (R2010 b) 64-bit
Saturday, February 13th, 2010
6:36 pm
Вырезание объектов из изображений
Имеется цветное изображение (I), в котором содержится много клеток, имеется бинарная маска с этого изображения (bw).

Используя текст:
[bw1 num]=bwlabel(bw,8);

У меня получилось разрезать маску "bw" и получить в "Image" изображения всех клеток по отдельности.

Как вырезать на исходном изображении точно такие же куски как и на маске. Тоесть на маске я по сути размечаю как надо разрезать, но разрезать надо именно цветное изображение. В итоге должны получиться из 1 изображения "I" много маленьких изображений и на каждом по 1 клетке?
Monday, January 12th, 2009
12:35 am
как вызывать функции, написанные на Java и C?
Необходимо в программе на матлабе вызывать функции, написанные на Java и C.
Вопрос-просьба: возможно встречались хорошие примеры как это делать (хелп в матлабе читать умею). Хочется не просто общие слова, а реальные примеры работающие посмотреть.
Tuesday, June 17th, 2008
2:17 pm
How to use "gradient" func with sparse arrays?
I know it is probably a long shot but I will try it anyway.

I am trying to calculate a gradient between points in a sparse array. Normally I would use a gradient function, but for a sparse array it calculates gradients between data points and surrounding zeros, obviously not what I wanted. Is there a standard way to handle sparse arrays with functions like gradient, pdist, linkage etc?
Thursday, February 14th, 2008
5:14 pm
creating financial time series
I have a highly frequent financial time series (fts) of 48 daily values over a year (17520 values totally). The most frequent one matlab can handle, as far as I understand, are daily values. I ran the following command:




big_table=[dates haywards_dispatch_2001 Haywards_final_2001 halfhourly_periods]


As expected, it didn't work out well enough. Does anybody have an idea how I could have 48 values each day, i.e. instead of

  '01-Jan-0000'        [          17.3600]    [          15.8000]    [                1]
  '02-Jan-0000'        [          16.6100]    [          15.5000]    [                2]

I'll get

  '01-Jan-0000'        [          17.3600]    [          15.8000]    [                1]
  '01-Jan-0000'        [          16.6100]    [          15.5000]    [                2]

and so on for 46 more values.

Thursday, February 7th, 2008
12:15 pm
more on the simulink problem...
Ok, so I think I've traced the problem to the initial condition (IC) block. It isn't putting out the ic I want (the output is .6005 instead of .6). Has anyone else ever had this problem? Any ideas how I can fix it?
Monday, February 4th, 2008
12:01 am
array length?
hi all,

there's another problem that I've got: although MAtlab 7.1 help is pretty straightforward in terms of length of array, it says:

You can open arrays having up to 2^19 (524288) elements, which is eight times more than the previous limit, 2^16 (65536).

But when I do this (i.e. import array with about 80k entries), I get a message Cannot display variables with more than 65536 rows or columns.

Is there any way to override this issue?


Tuesday, January 29th, 2008
2:10 pm

I need help with importing data in Matlab 6.5: my original files are all either .csv or .txt. When I click 'Import data', and choose the file, for some reason all the entries are imported in one column (i.e. the delimiter, such as comma is not recognized!).

What could I be doing wrong here? I seem to follow all instructions pretty closely...



нужна помощь с импортом файлов в матлаб. Проблема: при загрузке .csv и .txt файлов все записи оказываются в одном столбце, т.е. почему-то запятая (или иной делимитер) не различается. Что делать?

Заранее спасибо!
Friday, January 25th, 2008
10:49 am
This is kind of a long shot, but... (cross posted)
I have a simulink model that is almost identical to a matlab script (it uses the exact same function, but there are loops instead of a for loop ). But in simulink the output is off. My advisor and I think it's an integration scheme or a time step problem, but I've played around with all the settings and the numbers come out the same. The steady state numbers are good if I make the time step ginormous, but the transient values don't look as nice.

Sooooo are there any simulink whizzes out there who have any suggestions?

Thanks in advance!

edit: Sorry, to clarify: what possible things can make a simulink model act differently from a matlab script, when they're essentially the same?
Tuesday, December 18th, 2007
10:02 am
С помощью функции fit выполняется подгонка данных к заданной модели. Возможно ли сделать так, чтобы полученное уравнение содержало в себе некоторые точки из входных данных, которые с вероятностю 1 входят в результирующую кривую?
Tuesday, December 4th, 2007
1:49 am
изобразить понятно в трехмерном пространстве f = six(x)+sin(y)+sin(z).

вопрос, как и на чем это реализовать можно?

может как-то эксперементировать с цветами?... заградуировать цвета спектра от -3 до 3 ...я не знаю...
и изображать достаточно дискретно точки пространства. чтобы можно было при поворотах различать по скорости движения точек разных цветов их относительное положение.
а можно сделать анимацию, где изобразить срез этого пространства движущийся вдоль оси.

опять же вопрос, где можно задавать точкам пространства цвет в зависимости от значения функции?
на С писать чтоли самому?...
Sunday, October 21st, 2007
4:35 pm
здравствуй матлаб)
Учебники нашла, спасибо всем)
Теперь возник вопрос как импортировать данные из Excel ? у меня получается только импортировать матрицу 10 на10. А если столбцы и строки больше 10 - что тогда делать и где это настраивать?
И как строить графики по экспериментальным данным? я не имею ввиду стандарты типа построить синус или экспоненту, а просто разброс точек соединить конкретного опыта...и
Если кто знает где это написано подробно или сможет объяснить - буду благодарна) И заранее спасибо)
Saturday, October 20th, 2007
9:16 pm
Ребят, кто-нибудь знает где можно скачать учебник по матлаб? Интересует только построени графиков различных
Wednesday, October 10th, 2007
12:02 am
New to Matlab
Hello all. I'm completing an assignment on matlab and we were asked to change C++ coding to matlab coding but I'm not sure how to go about this (basically creating an M-file for the Insertion Sort Algorithm that accepts an array a) Thank you for any help in advance Here is the C++ code: 
insert(array a,  int length, value) {
         int i = length -1;
         while (i >= 0 && a[i] > value) {
               a[i +1] = a[i];
               i = i - 1;
         a[i + 1]   :=value;

insertionSort(array a, int length) {
        int i = 0;
       while (i < length)   {
                  insert(a, i, a[ i ]);
Wednesday, September 19th, 2007
3:03 pm
dumb q
I created a table in matlab with the follwing script:

fprintf('\nCharacter Decimal \t HEX \t Binary') %Headings for table
for n=65:90;
fprintf('\n\t%c \t\t\t %d \t %s \t %s',letter,n,str,str2)

How do I get it to skip a line after every fourth entry in the table?
Friday, September 7th, 2007
8:41 pm
I'm trying to use ode45 to solve a certain second-order non-linear ODE (the geodesic equation for a Riemannian metric). The idea is that we have the plane (represented by a 128×128 square) with a background "metric". The key here is that there are two 128×128 matrices Fx and Fy which represent how a particle constrained to a particular ODE would behave. These two matrices are fixed. (x,y) represents the position in the plane and (u,v) represents the velocity. My setup for ode45 is of the form:

function zprime = geoeqn(t,z)
% z = [ x_pos, y_pos, x_vel, y_vel ]

x = z(1); y = z(2); u = z(3); v = z(4);

xdot = u;
ydot = v;
udot = 1/4 * ( Fx(round(x),round(y)) * (u^2 - v^2) + 2*Fy(round(x),round(y)) * u*v );
vdot = 1/4 * ( -Fy(round(x),round(y)) * (u^2 - v^2) + 2*Fx(round(x),round(y)) * u*v );

zprime = [xdot ydot udot vdot];

Ideally, MATLAB should see that I've already defined matrices Fx and Fy and simply solve the differential equation. However, when I enter [t,geo] = ode45('Tom_geoeqn',[0 1],[40 40 1 1]), MATLAB freaks out and says:

??? Undefined function or method 'Fx' for input arguments of type 'double'.

What's the problem here? Why is MATLAB not seeing my pre-existing matrices? How can I tell ode45 to use these data?
Tuesday, June 5th, 2007
10:13 pm
help pls
есть проблема:
необходимо реализовать в приложении, компилируемом на Си Борланд Билдере (да впрочем любом С++ компиляторе), функцию упрощения математических выражений относительно заданных переменных, желательно принимающей данные и выдающей результаты в формате ТЕХ-формул. причем мат выражения практически любой сложности.

теоретически самый простой вариант - это подключить dll из Matlab, в котором реализуется функция
The simplify function is a powerful, general purpose tool that applies a number of algebraic identities involving sums, integral powers, square roots and other fractional powers, as well as a number of functional identities involving trig functions, exponential and log functions, Bessel functions, hypergeometric functions, and the gamma function. Here are some examples.
R = simplify(S)
simplify(S) simplifies each element of the symbolic matrix S using Maple simplification rules.
ssimplify(sin(x)^2 + cos(x)^2) returns 1
simplify(exp(c*log(sqrt(a+b)))) returns (a+b)^(1/2*c)
The statements S = [(x^2+5*x+6)/(x+2),sqrt(16)];
R = simplify(S)
return R = [x+3,4]
другой вариант выдрать из Maple, так как батлаб по сути это и делает.

собственно второй месяц занимаюсь первым. причем задача по подключению пакета матлабовских dll по работе с матрицами решается довольно просто, используя книгу "Подкур. использование библиотек Матлаб в Си"
а вот с символическими функциями есть проблемы. так как они работают в особом моде матлаба, котороый просто не симулируется в Си.

третий способ наити того, кто разрабатывал подобные функции и подкомуниздить.
четвертый способ. собственно то, что я сейчас делаю - спросить друзей ;)
[ << Previous 20 ]
About LiveJournal.com