Elementwise multiplication, function definition
Mostrar comentarios más antiguos
Hello Community
I have an issue defining a function where the input is a meshgrid. Somehow there must be an issue with the elementwise multiplication.
Input: [x, y] = meshgrid(linspace(0,400,400),linspace(0,30000,400));
A1 = -8.269000000000000;
m1 = 2.071000000000000;
m2 = 0.239700000000000;
B1 = -13.100000000000000;
n1 = 2.813000000000000;
B2 = -49.960000000000001;
n2 = 18.170000000000002;
z1 = (10^A1*x.^m1*y.^m2+y.*(10^B1*x.^n1+10^B2*x.^n2))*100;
Output:
min(min(z1)) = 188.7492
Conclusion:
The minimal value of z1 is 188.7492. However looking at the equation, z1 should be 0 for x = 0 and y = 0.
Somehow there is a mistake writing the equation oder defining input (x,y)
Can anybody help me?
Respuesta aceptada
Más respuestas (1)
David Sanchez
el 17 de Mayo de 2013
Hi, try your code like this:
[x, y] = meshgrid( linspace(0,400,400),linspace(0,30000,400) );
A1 = -8.269000000000000;
m1 = 2.071000000000000;
m2 = 0.239700000000000;
B1 = -13.100000000000000;
n1 = 2.813000000000000;
B2 = -49.960000000000001;
n2 = 18.170000000000002;
AA = 10^A1;
BB = x.^m1;
CC = y.^m2;
z1_1 = AA.*BB.*CC;
DD = 10^B1;
EE = x.^n1;
FF = 10^B2;
GG = x.^n2;
z1_2 = y.*( DD*EE + FF*GG );
z1 = ( z1_1 + z1_2 )*100;
2 comentarios
David Sanchez
el 17 de Mayo de 2013
You will get you zero values along with values close to 0 too.
Ben
el 17 de Mayo de 2013
Categorías
Más información sobre Graphics Performance en Centro de ayuda y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!