Comments in code for orientation not clear

조회 수: 2 (최근 30일)
YASSER
YASSER 2024년 2월 24일
편집: Yash 2024년 9월 5일
Dear Sirs
I've got a matlab code to use for PV parameter estimation
My problem is that the code seems to be not complete or need some specification from me
The author developper write some comments as orientation in order to add inputs but it is vague
Can anyone try to translate the comment or the intention of it ?
% Parameter Extraction from least-square fitting
% Numerical Differentiation is performed using Quasi-Newton Line Search
% ------------------------------------------------------------------------
% ---------------------------Output generated-----------------------------
% res.iter: nIter - Total number of iterations
% res.v: Least Square cost function vector [1 x nIter]
% res.delv: Gradient column vector [1 x nIter]
% res.aold: Parameters [nPara x (nIter + 1)]
% res.dela: Delta paramters [nPara x nIter]
% res.normDelCheck: || dela/a ||_2 [1 x nIter]
% ------------------------------------------------------------------------
% ------------------------------------------------------------------------
% Pragya Sharma, March 30 2017
% ps847@cornell.edu
% ------------------------------------------------------------------------
function [res] = paraExtractLS(par)
% --------------------Set up needs input from user--------------------
% par.sMeas: Measurement data
% ---------- last column: Output variable
% ---------- First to (last - 1) columns: Variables
% par.sMod: Function handle to Model function
% par.a0: Initial parameter input column vector
% par.h: Numerical differentiation step size column vector
% par.mode:
% ---------'QN': Quasi-Newton
% -------------: Can insert your own Numerical Differentiation Method
% par.maxIter: Maximum number of iterations
% par.ls: Line Search Yes or No
% par.tol: Tolerance on converging condition
% --------------------------------------------------------------------
% --------------------------------------------------------------------
% Setting up problem
  댓글 수: 2
Walter Roberson
Walter Roberson 2024년 2월 24일
The comments describe the expected input par -- it is expected to be a struct with the given fields, sMeas, sMod, a0, h, mode, maxIter, ls, and tol
YASSER
YASSER 2024년 2월 25일
So this mean that the author is expecting from the user to enter these inputs without clarifying what does it mean exactly ?

댓글을 달려면 로그인하십시오.

채택된 답변

Yash
Yash 2024년 9월 3일
편집: Yash 2024년 9월 5일
Hi Yasser,
Based on the comments in your MATLAB code, it seems like the author has provided a framework for parameter extraction using a least-square fitting method. The comments indicate where you need to provide specific inputs or configurations. The input "par" should be a struct with the given fields, sMeas, sMod, a0, h, mode, maxIter, ls, and tol.
Inputs Required from User:
1. Measurement Data (par.sMeas): This should be a matrix where:
  • The last column contains the output variable (the dependent variable you are trying to model).
  • The first to the second-to-last columns contain the independent variables (the inputs to your model).
2. Model Function (par.sMod): This should be a function handle to your model function. The model function should take the independent variables and parameters as input and return the predicted output.
3. Initial Parameters (par.a0): A column vector containing initial guesses for the parameters you want to estimate. These are the starting points for the optimization process.
4. Numerical Differentiation Step Size (par.h): A column vector specifying the step size for numerical differentiation. This is used to approximate the gradient of the cost function.
5. Mode (par.mode): A string indicating the method for numerical differentiation. The default is 'QN' for Quasi-Newton. You can specify another method if desired.
6. Maximum Iterations (par.maxIter): An integer specifying the maximum number of iterations the algorithm should perform.
7. Line Search (par.ls): A boolean or string indicating whether to use line search during the optimization. Specify 'Yes' or 'No'.
8. Tolerance (par.tol): A small positive number specifying the convergence tolerance. The algorithm will stop if the change in parameters is less than this value.
I hope this helps!

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Logical에 대해 자세히 알아보기

제품


릴리스

R2020b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by