Buenas Olivier.

Gracias por tu rápida respuesta

Todo lo que has dicho me parece excelente pero el detalle esta en que mi
data experimental esta tomada con respecto a la longitud de onda y la
densidad de energía.

Lo que tu afirmas, tomando en cuenta la frecuencia, es una forma de escribir
la ecuación para la densidad de energía en función de dicha frecuencia que
básicamente proviene de decir que:

[image: \lambda=\frac{c}{\nu}]

donde: lamda es la longitud de onda
           c es la velocidad de la luz
           v es la frecuencia.

que sucede si en este caso trabajo con la frecuencia podría estar
introduciendo errores sistemáticos al problema y pues eso me hace pensar que
el valor de h para la constante de Planck no sera el mas óptimo.


puedes corroborarlo viendo este enlace sobre el tema:
http://en.wikipedia.org/wiki/Planck's_law


Lo que estoy tratando entonces de hacer es encontrar los parámetros
iniciales para la función de ajuste pero por las dos maneras que e planteado
me encuentro con esos 2 errores que coloque en mi primer mensaje y pues  e
recurrido a ustedes por falta de bibliografía acerca de estos en
Internet.(que de seguro debe haber pero no encuentro una solución clara al
problema que se me presenta)
<http://en.wikipedia.org/wiki/Planck's_law>
El 5 de diciembre de 2010 15:08, Olivier Nuñez <onunez@iberstat.es>escribió:

> Daniel
>
> al contestar rápidamente cometí un error.
> Es más bien la función
>
> (b1, b2) -> { (b1/x_i^3) / (exp(b2/x_i/T) - 1 ) }_{ i = 1..n }
>
> que ha de ser inyectiva para que todo vaya bien (donde los x_i son los
> periodos de onda considerados en tu experimento).
> Asegurarse de que dicha función es inyectiva no es trivial pero con un poco
> de algebra se hace.
> Un saludo. Olivier
>
>
> --
> ____________________________________
>
> Olivier G. Nuñez
> Email: onunez@iberstat.es
> Tel : +34 663 03 69 09
> Web: http://www.iberstat.es
>
> ____________________________________
>
>
>
>
> El 05/12/2010, a las 13:39, Daniel Arismendi escribió:
>
> Buenas dias comunidad antes que nada gracias a las ultimas respuestas
> obtenidas por parte de ustedes.
>
> Mientras me leia las paginas que me dejaron para guiarme me dedique a
> buscar
> el libro correspondiente a nlrwr
>
> Nonlinear Regression with R de Christian Ritz • Jens Carl Streibig el cual
> les  puedo enviar por correo al que lo desee para que lo lean y lo tengan
> dentro de su repertorio bibliografico pues es al que hacen referencia en
> estos casos de regresiones no lineales la gente de R
>
> Estuve resolviendo lo del problema del parametro de ajuste para la
> constante
> de Planck mediante minimos cuadrados y pues me tope con estos problemas.
>
> En primer lugar como no soy tan agil encontrando los parametros para mi
> funcion de ajuste en este caso
>
> fun.ajust<-nls( y ~ (b1/x^5) * (1 / (exp(b2/x*T) - 1) ), data=datos,
> trace=TRUE,
>                      start=c(b1 = 0.01, b2 = 0.02) )
>
> me encuentro siempre con estos errores :
>
> 1*- Error in nls(... :
>       step factor 0.000488281 reduced below 'minFactor' of 0.000976562
> 2*- Error in nls(... :
>       singular gradient
> 3*- Error in nlsModel(formula, mf, start, wts) :
>       singular gradient matrix at initial parameter estimates
>
> Estos solamente sin usar algun algoritmo para encontrar los minimos
> cuadrados pues cuando use los algoritmos siguientes encontraba otros
> errores:
>
> algorithm: specification of estimation algorithm:
> – "default": the Gauss-Newton algorithm (the default)
> – "plinear": for models with conditionally linear parameters
> - "port": for models with constraints on the parameters
> (can be used with the arguments lower/upper)
>
> Dado que tirar piedras no me funciona pues los errores siguen saliendo y la
> experiencia es algo que te dice como podrian ser los parametros iniciales
> de
> ajuste me dedique a usar 2 maneras a traves de las cuales pudiera encontrar
> mis parametros de ajuste.
>
>
> 1*-Hago uso de la libreria nlstools
>
> library(nlstools)
> modelo<-V2~(b1/V1^5) * (1 / (exp(b2/V1*T) - 1)
> preview(formula = modelo, data = datos, start = start =
>
> list(b1=0.01,b2=0.02))
>
> Error: no se pudo encontrar la función "preview"
>
>
> Referencia a la funcion preview:
>  Details
>
> The function preview helps defining the parameter starting values prior
> fitting the model. It provides a superimposed plot of observed (circles)
> and
> predicted (crosses) values of the dependent variable versus one of the
> independent variables with the model evaluated at the starting values of
> the
> parameters. The function overview returns the parameters estimates, their
> standard errors as well as their asymptotic confidence intervals and the
> correlation matrix (alternately, the function confint provides better
> confidence interval estimates whenever it converges). plotfitdisplays a
> superimposed plot of the dependent variable versus one the independent
> variables together with the fitted model
>
>
> 2*- parecida a preview pero haciendo uso de una funcion predefinida y la
> funcion curve superpuesta sobre los puntos de los datos experimentales:
>
> datos<-read.table("datos.txt")
>
>
> attach(datos)
>
>
> plot(V2~V1,data=datos,xlab="longitud de onda",ylab="densidad de
>
> energia")
>
> T<-1595
> modelo1<- function(V1,b1,b2){(b1/V1^5) * (1 / (exp(b2/V1*T) - 1) )}
> plot(V2~V1,data=datos,ylim=c(0,1.85e3),xlab="longitud de
>
> onda",ylab="densidad de energia")
>
> curve(modelo(V1,b1=0.01,b2=0.02),add=TRUE)
>
>       Error en curve(modelo(V1, b1 = 0.01, b2 = 0.02), add = TRUE) :
>       'expr' must be a function, call or an expression containing 'x'
>
>
> Referencia a esta segunda forma la encontre en el libro de nlrwr.
>
> Agradeceria si alguien conoce de estos errores como podria solucionarlos
> pues es poca la bibliografia respecto a estos en la web y no logro terminar
> de hacer la funcion de ajuste.
>
> Saludos a toda la comunidad.
>
> [[alternative HTML version deleted]]
>
> _______________________________________________
> R-help-es mailing list
> R-help-es@r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
>
>
>

	[[alternative HTML version deleted]]

