Está en la página 1de 11

COMPOSICIÓN DE FUNCIONES

Una función compuesta es la imagen resultado de la aplicación sucesiva de dos o más funciones sobre un mismo elemento x.

Siendo f y g dos funciones, se define la composición de dos funciones (denotada por g o f) como:

La composición de funciones se realiza aplicando dichas funciones en orden de derecha a izquierda, de manera que en (g o f)(x)

primero actua la función f y luego la g sobre f(x).

Propiedades de la composición de funciones

1. La composición de funciones es asociativa

2. La composición de funciones no es conmutativa

3. El elemento neutro en la composición de funciones es la función identidad (id).

4. El función inversa de la composición de funciones f y g es:


Dominio de la función composición

Sean Dom f el dominio de la función f y Dom g el de g, entonces el dominiode la función composición es:

DERIVADA
Considerando la función f definida en el intervalo abierto I y un punto a fijo en I, se tiene que la derivada de la función f en el
punto se define como sigue:

Si este límite existe, de lo contrario, la derivada, no está definida. Esta última expresión coincide con la velocidad instantánea del
movimiento continuo uniforme acelerado en cinemática.
Aunque podrían calcularse todas las derivadas empleando la definición de derivada como un límite, existen reglas bien establecidas,
conocidas como teoremas para el cálculo de derivadas, las cuales permiten calcular la derivada de muchas funciones de acuerdo a
su forma sin tener que calcular forzosamente el límite. Tales reglas son consecuencia directa de la definición de derivada y de reglas
previas, como puede apreciarse en todo buen texto de cálculo infinitesimal.
También puede definirse alternativamente la derivada de una función en cualquier punto de su dominio de la siguiente manera:

La cual representa un acercamiento de la pendiente de la secante a la pendiente de la tangente ya sea por la derecha o por la
izquierda según el signo de . El aspecto de este límite está relacionado más con la velocidad instantánea del movimiento
uniformemente acelerado que con la pendiente de la recta tangente a una curva.
No obstante su aparente diferencia, el cálculo de la derivada por definición con cualquiera de los límites anteriormente expresados,
proporciona siempre el mismo resultado.
PARA ESTE CASO EL PUNTO 3 Y 4 SERA EN UNO SOLO DEBIDO A QUE SON VARIOS MENUS Y VARIOS CODIGOS ASI QUE SE INICIARA
CON EL PRIMER MENU SEGUIDAMENTE DE SU CODIGO EN GUIDE Y ASI SUCESIVAMENTE.

PARA ESTA PRUEBA SE ASIGNARA LAS SIGUIENTES FUNCIONES

F(x)=sin(x) G(x)=1+x^3

MENU PRINCIPAL (FUNCIONES)

CODIGO DE MENU FUNCIONES:


function varargout = FUNCIONES(varargin)

gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @FUNCIONES_OpeningFcn, ...
'gui_OutputFcn', @FUNCIONES_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end

if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end

function FUNCIONES_OpeningFcn(hObject, eventdata, handles, varargin)

handles.output = hObject;

guidata(hObject, handles);

function varargout = FUNCIONES_OutputFcn(hObject, eventdata, handles)

varargout{1} = handles.output;

function funcion1_Callback(hObject, eventdata, handles)

function funcion1_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))


set(hObject,'BackgroundColor','white');
end

function funcion2_Callback(hObject, eventdata, handles)

function funcion2_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))


set(hObject,'BackgroundColor','white');
end

function salir_Callback(hObject, eventdata, handles)


close;

function siguiente_Callback(hObject, eventdata, handles)


global fx
global gx

fx=(get(handles.funcion1,'String'));
gx=(get(handles.funcion2,'String'));
close;
LAS_OPERACIONES_DE_FUNCIONES;
function pushbutton3_Callback(hObject, eventdata, handles)

MENU SELECCIÓN DE OPERACIONES (LAS_OPERACIONES_DE_FUNCIONES)

CODIGO DE LAS_OPERACIONES_DE_FUNCIONES:
function varargout = LAS_OPERACIONES_DE_FUNCIONES(varargin)

gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @LAS_OPERACIONES_DE_FUNCIONES_OpeningFcn, ...
'gui_OutputFcn', @LAS_OPERACIONES_DE_FUNCIONES_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end

if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end

function LAS_OPERACIONES_DE_FUNCIONES_OpeningFcn(hObject, eventdata, handles, varargin)


global fx
global gx
(set(handles.f11,'string',fx));
(set(handles.f22,'string',gx));

handles.output = hObject;

guidata(hObject, handles);

function varargout = LAS_OPERACIONES_DE_FUNCIONES_OutputFcn(hObject, eventdata, handles)

varargout{1} = handles.output;

function pushbutton1_Callback(hObject, eventdata, handles)

function edit1_Callback(hObject, eventdata, handles)

function edit1_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))


set(hObject,'BackgroundColor','white');
end

function pushbutton2_Callback(hObject, eventdata, handles)

function selec_suma_Callback(hObject, eventdata, handles)


close(gcbf);
suma_resta;

function selec_corre_Callback(hObject, eventdata, handles)


close;
correlacion1;

function selec_com_Callback(hObject, eventdata, handles)


close;
composicion;

function selec_derivada_Callback(hObject, eventdata, handles)


close(gcbf);
derivada;

function selec_integral_Callback(hObject, eventdata, handles)


close;
integral;

function volve_al_menu_principal_Callback(hObject, eventdata, handles)


close;
FUNCIONES;

function f11_Callback(hObject, eventdata, handles)

function f11_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))


set(hObject,'BackgroundColor','white');
end

function f22_Callback(hObject, eventdata, handles)

function f22_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))


set(hObject,'BackgroundColor','white');
end

PRIMERA OPERACIÓN (ALGEBRA DE FUNCIONES)

SUMA RESTA

CODIGO DE SUMA_RESTA:
function varargout = suma_resta(varargin)

gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @suma_resta_OpeningFcn, ...
'gui_OutputFcn', @suma_resta_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end

if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end

function suma_resta_OpeningFcn(hObject, eventdata, handles, varargin)


global fx
global gx
set(handles.f1sumaresta,'string',fx);
set(handles.f2sumaresta,'string',gx);

handles.output = hObject;

guidata(hObject, handles);

function varargout = suma_resta_OutputFcn(hObject, eventdata, handles)

varargout{1} = handles.output;
function volver_al_menu_de_operaciones_sum_res_Callback(hObject, eventdata, handles)
close(gcbf);
LAS_OPERACIONES_DE_FUNCIONES;

function f1sumaresta_Callback(hObject, eventdata, handles)


a=get(handles.f1sumaresta, 'string');
syms x;
ezplot(handles.g_suma,a,[-10,10]);

function f1sumaresta_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))


set(hObject,'BackgroundColor','white');
end

function f2sumaresta_Callback(hObject, eventdata, handles)


b=get(handles.f2sumaresta, 'string');
syms x;
ezplot(handles.g_funcion2_sum_res,b,[-10,10]);

function f2sumaresta_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))


set(hObject,'BackgroundColor','white');
end

function SUMA_Callback(hObject, eventdata, handles)


[x,y]=meshgrid(-5:.07:5);
a=(get(handles.f1sumaresta,'string'))
b=(get(handles.f2sumaresta,'string'))
c=sym (a)
d=sym (b)
pepa =c+d
pepa2= char(pepa)
pepon=eval (pepa)
class(pepa)
set (handles.restri,'string',(pepa2))
[i,j]=meshgrid(-5:.07:5);
h=3*i+8*j*j;
class h
plot3(x,y,pepon);

function RESTA_Callback(hObject, eventdata, handles)


[x,y]=meshgrid(-5:.07:5);
a=(get(handles.f1sumaresta,'string'))
b=(get(handles.f2sumaresta,'string'))
c=sym (a)
d=sym (b)
pepa =c-d
pepa2= char(pepa)
pepon=eval (pepa)
class(pepa)
set (handles.restri,'string',(pepa2))
[i,j]=meshgrid(-5:.07:5);
h=3*i+8*j*j;
class h
plot3(x,y,pepon);

function volver_al_menu_principal_Callback(hObject, eventdata, handles)


close;
FUNCIONES;

SEGUNDA OPERACIÓN (CORRELACION)

CODIGO DE CORRELACION1:
function varargout = correlacion1(varargin)

gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @correlacion1_OpeningFcn, ...
'gui_OutputFcn', @correlacion1_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end

if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end

function correlacion1_OpeningFcn(hObject, eventdata, handles, varargin)


global fx
global gx
set(handles.funcion1corre,'string',fx);
set(handles.funcion2corre,'string',gx);

handles.output = hObject;

guidata(hObject, handles);

function varargout = correlacion1_OutputFcn(hObject, eventdata, handles)

varargout{1} = handles.output;

function volver_al_menu_de_operaciones_corre_Callback(hObject, eventdata, handles)


close;
LAS_OPERACIONES_DE_FUNCIONES;

function funcion2corre_Callback(hObject, eventdata, handles)


b=get(handles.funcion2corre, 'string');
syms x;
ezplot(handles.g_funcion2_corre,b,[-10,10]);

function funcion2corre_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))


set(hObject,'BackgroundColor','white');
end

function funcion1corre_Callback(hObject, eventdata, handles)


a=get(handles.funcion1corre, 'string');
syms x;
ezplot(handles.g_funcion1_corre,a,[-10,10]);

function funcion1corre_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))


set(hObject,'BackgroundColor','white');
end

function volver_al_menu_principal_Callback(hObject, eventdata, handles)


close;
FUNCIONES;

function OK_Callback(hObject, eventdata, handles)


[x,y]=meshgrid(-5:0.1:5);
a=(get(handles.funcion1corre,'string'))
b=(get(handles.funcion2corre,'string'))
c=sym (a)
d=sym (b)
pepa =c-d
pepa2= char(pepa)
pepon=eval (pepa)
pepon3=eval(c);
pepon4=eval(d);
class(pepa)
if pepa2=='0'
set (handles.restriccion,'string','SON IGUALES')
else
set (handles.restriccion,'string','NO SON IGUALES')
plot3(x,y,pepon4);hold on
plot3(x,y,pepon3);
end

TERCERA OPERACIÓN (COMPOSICION)

CODIGO DE COMPOSICION:
function varargout = composicion(varargin)

gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @composicion_OpeningFcn, ...
'gui_OutputFcn', @composicion_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end

if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end

function composicion_OpeningFcn(hObject, eventdata, handles, varargin)


global fx
global gx
set(handles.funcion1com,'string',fx);
set(handles.funcion2com,'string',gx);

handles.output = hObject;

guidata(hObject, handles);

function varargout = composicion_OutputFcn(hObject, eventdata, handles)

varargout{1} = handles.output;

function volver_al_menu_de_operaciones_com_Callback(hObject, eventdata, handles)


close;
LAS_OPERACIONES_DE_FUNCIONES;

function hallar_com_Callback(hObject, eventdata, handles)


fc1=get(handles.funcion1com,'string')
fc2=get(handles.funcion2com,'string')
syms x
fcc=subs(fc1,x,fc2)
fcc=char(fcc);
set (handles.FG,'string',fcc)
ezplot(handles.g_composicion,fcc,[-10,10]);

function funcion1com_Callback(hObject, eventdata, handles)


a=get(handles.funcion1com, 'string');
syms x;
ezplot(handles.g_funcion1_com,a,[-10,10]);

function funcion1com_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))


set(hObject,'BackgroundColor','white');
end

function funcion2com_Callback(hObject, eventdata, handles)


b=get(handles.funcion2com, 'string');
syms x;
ezplot(handles.g_funcion2_com,b,[-10,10]);

function funcion2com_CreateFcn(hObject, eventdata, handles)


if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end

function volver_menu_prin_Callback(hObject, eventdata, handles)


close;
FUNCIONES;

CUARTA OPERACIÓN (DERIVA)

FUNCION F(x) FUNCION G(x)

CODIGO DE DERIVADA:
function varargout = derivada(varargin)
gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @derivada_OpeningFcn, ...
'gui_OutputFcn', @derivada_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end

if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end

function derivada_OpeningFcn(hObject, eventdata, handles, varargin)


global fx
global gx
set(handles.valor1,'string',fx);
set(handles.valor2,'string',gx);

handles.output = hObject;

guidata(hObject, handles);

function varargout = derivada_OutputFcn(hObject, eventdata, handles)

varargout{1} = handles.output;

function volver_al_menu_de_operaciones_deri_Callback(hObject, eventdata, handles)


close;
LAS_OPERACIONES_DE_FUNCIONES;

function g_derivada1_CreateFcn(hObject, eventdata, handles)

function hallar_d_Callback(hObject, eventdata, handles)

[x,y]=meshgrid(-5:0.1:5);
a=(get(handles.valor1,'string'))
b=sym(a)
d=eval(b);
c=diff (b)
d=eval(c);
e=eval(b);
f=diff (c)
g=eval(f);
set (handles.respuesta,'string',char(c))
set (handles.respuesta2,'string',char(f))
plot3 (x,y,e);hold on
plot3 (x,y,d);
plot3 (x,y,g);
grid on
hold off

function hallar_d2_Callback(hObject, eventdata, handles)


[x,y]=meshgrid(-5:0.1:5);
a=(get(handles.valor2,'string'))
b=sym(a)
c=diff (b)
d=eval(c);
e=eval(b);
f=diff (c)
g=eval(f);
set (handles.respuesta3,'string',char(c))
set (handles.respuesta4,'string',char(f))
plot3 (x,y,e);hold on
plot3 (x,y,d);
plot3 (x,y,g);
grid on
hold off

function valor1_Callback(hObject, eventdata, handles)

function valor1_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))


set(hObject,'BackgroundColor','white');
end

function valor2_Callback(hObject, eventdata, handles)

function valor2_CreateFcn(hObject, eventdata, handles)


if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end

function uipushtool1_ClickedCallback(hObject, eventdata, handles)


global ctrl
ctrl =0;
set(handles.valor1, 'String', '');
set(handles.respuesta, 'String', '');
axes(handles.g_derivada1);
cla
set(handles.g_derivada1, 'Visible', 'off');
clc

function menu_principal_d_Callback(hObject, eventdata, handles)


close;
FUNCIONES;

function uipushtool2_ClickedCallback(hObject, eventdata, handles)


global ctrl
ctrl =0;
set(handles.valor2, 'String', '');
set(handles.respuesta3, 'String', '');
axes(handles.g_derivada2);
cla
set(handles.g_derivada2, 'Visible', 'off');
clc

QUINTA OPERACIÓN (INTEGRAL)

FUNCION F(x) FUNCION G(x)

CODIGO DE LA INTEGRAL:
function varargout = integral(varargin)

gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @integral_OpeningFcn, ...
'gui_OutputFcn', @integral_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end

if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end

function integral_OpeningFcn(hObject, eventdata, handles, varargin)


global fx
global gx
set(handles.valorf1,'string',fx);
set(handles.valorf2,'string',gx);

handles.output = hObject;

guidata(hObject, handles);

function varargout = integral_OutputFcn(hObject, eventdata, handles)

varargout{1} = handles.output;

function seleccion_de_funcion_inte_Callback(hObject, eventdata, handles)

function seleccion_de_funcion_inte_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))


set(hObject,'BackgroundColor','white');
end

function figure1_ButtonDownFcn(hObject, eventdata, handles)

function lim_inf_inte_Callback(hObject, eventdata, handles)

function lim_inf_inte_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))


set(hObject,'BackgroundColor','white');
end

function lim_sup_inte_Callback(hObject, eventdata, handles)

function lim_sup_inte_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))


set(hObject,'BackgroundColor','white');
end
function hallar_int1_Callback(hObject, eventdata, handles)
t=str2double(get(handles.lim_inf_inte, 'string'));
r=str2double(get(handles.lim_sup_inte, 'string'));

[x,y]=meshgrid(t:0.1:r);
a=(get(handles.valorf1,'string'))
b=sym(a)
c=int (b)
d=eval(c);
e=eval(b);
set (handles.resul1,'string',char(c))
plot3 (x,y,e);hold on
plot3 (x,y,d);
grid on
hold off

function volver_al_muno_de_operaciones_inte_Callback(hObject, eventdata, handles)


close;
LAS_OPERACIONES_DE_FUNCIONES;

function hallar_int1_CreateFcn(hObject, eventdata, handles)

function volver_menu_princi_Callback(hObject, eventdata, handles)


close;
FUNCIONES;

function valorf1_Callback(hObject, eventdata, handles)


a=get(handles.valorf1, 'string');
syms x
ezplot(handles.axes2,a,[-10,10]);

function valorf1_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))


set(hObject,'BackgroundColor','white');
end

function valorf2_Callback(hObject, eventdata, handles)


b=get(handles.valorf2, 'string');
syms x
ezplot(handles.g_integral,b,[-10,10]);

function valorf2_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))


set(hObject,'BackgroundColor','white');
end

function hallar_int2_Callback(hObject, eventdata, handles)


t=str2double(get(handles.lim_inf_inte, 'string'));
r=str2double(get(handles.lim_sup_inte, 'string'));
[x,y]=meshgrid(t:0.1:r);
a=(get(handles.valorf2,'string'))
b=sym(a)
c=int (b)
d=eval(c);
e=eval(b);
set (handles.resul2,'string',char(c))
plot3 (x,y,e);hold on
plot3 (x,y,d);
grid on
hold off

function edit5_Callback(hObject, eventdata, handles)

function edit5_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))


set(hObject,'BackgroundColor','white');
end

EN ALGUNAS VERSIONES DE MATLAB NO LOGRA ESTABLECER EL CODIGO DE CERRAR UNA INTERFAZ Y ABRIR
OTRA INTERFAZ ESTO DEBIDO A QUE LE FALTA LIBRERIAS PARA LOGRAR DICHA OPERACIÓN.

MATLAB LOGRA REALIZAR LAS OPERACIONES COMO diff(f,x)=deriva, int(f,x)=integral, subs=este comando
logra hacer la composición de funciones es decir F(G(x))

POR ULTIMO PARA REPRESENTAR LAS INTERFASES SE RECOMIENDA PONER PRESENTACION LOGOS FONDOS
ASI PARA QUE SEA UN TRABAJO MAS PRESENTABLE Y MAS ELEGANTE.

También podría gustarte