-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Additional variable names request #27
Comments
We should add extraterrestrial irradiance and clearness index terms. 'xni' is too cryptic, but 'extraterrestiral_normal' is perhaps too long. Maybe 'extra_irrad' as the base, with '_normal', '_hor' as suffixes. What is extraterrestrial 'beam' irradiance? Does beam refer to the plane of measurement? 'clearness_index' is understood to be GHI / extraterrestrial on the same plane, I'd prefer spelt out over 'kT' or any of the various symbols I've seen. xbi (extraterrestrial beam irradiance) or xni?? (kW/m2) |
Sorry xbi or xni mean "normal to the sun" so around 1366 ± a few percent depending on the earth-sun distance from the orbit ellipticity. |
Some of these parameters are already there: relative_humidity, wind_speed, wind_direction, airmass. Small question: should we change airmass to air_mass? This would be more consistent with the rest of the variables. I think we do not want to add a specific suffix for a reference cell measurement. It would be good to have alignment with the choice of names for ground irradiance values. We currently have:
where poa stands for "plane-of-array irradiance." I don't like using extra because that has another meaning. What about using xt or ext?
I could also get behind We chose direct over beam in the past, but I think beam is a little more descriptive. As with all these small decisions, nothing's perfect, but it's way better to just pick something than not finish this scheme. |
I'm not fond of 'extra' either. I'm not strongly opposed to 'xni' or similar but haven't seen those terms used anywhere else. The common notation is H_extra or I_(some subscript) which doesn't translate to any particular words. I also think the only extraterrestrial irradiance quantity in common use is extraterrestrial normal irradiance, i.e., outside the atmosphere on a plane normal to the the earth-sun line. Other terms may not be worth adding. I would have no idea what 'ghi_xt' or 'poa_global_xt' meant - outside the atmosphere (xt) but measured on a what plane, exactly? 'global' doesn't add anything here, since irradiance from sources other than the sun aren't being considered. |
@toddkarin Thanks, where were the names listed? I looked on https://duramat.github.io/pv-terms/ and didn't see them |
@steve-ransome I just rebuilt the docs, they should be there now. @cwhanse I'm happy to add |
@toddkarin Thanks it has changed, wind is there now |
I have only seen extraterrestrial irradiance calculated for planes normal to the sun, or horizontal to earth surface i.e. normal * cos(zenith). As far as 'xbi', since the middle character identifies the plane of measurement, I would use 'xni' so that the 'n' means the same thing as in 'dni'. |
Okay, so I will add Are there any objections to adding these suggested values for I'd suggest changing Note that pvlib uses |
I'd prefer if possible to have rsc and roc as they are more tied in with isc and voc than resistance_shunt and resistance_series. Also I use extraterrestrial irradiance on the poa as it is useful for some arrays with limited sensors as it gives a reasonable value of clearness index for a few hours around noon/ |
Okay, do we prefer |
Can we have a fill_factor? How does interval work, is it _minute, _hour, day? How about _5min or _3hour (are they valid). Several of the deprecated lines are wrong e.g. "imp [A]: Current at the maximum power point. [Deprecated/alternates: v_mp]" Are the orders of the inverters going to be changed ? e.g. max_inv_dc_current should have current to the left. Thanks |
I've never cared for "extraterrestrial". The atmospheric sciences literature refers to top of atmosphere radiation, abbreviated TOA. |
@steve-ransome Just added fill factor and fixed the deprecated lines. For inverter inverter parameters, we should decide which style to use. E.g.
any preferences? The second style is more consistent with the rest of pv-terms, but I think it is also less easily understandable. @wholmgren Yes extraterrestrial sounds like little green men. What about |
yes much better |
I'd prefer to place '_min', '_max' at the end of a name, and begin the name with the quantity: "temperature_inv_operating_min" It's less readable but much easier to find in a long list of terms. |
I've added toa variables, kTh, kTn, and changed the ordering for inverter parameters. For
I agree For |
'rsc' is the dynamic resistance at short circuit, suggest 'resistance_dynamic_sc'? what is 'kTh'? This is too cryptic for me. The notation for clearness index, or clearsky index, is not consistent in usage or literature. |
@toddkarin This is how my code currently looks, I use dataframes of ref, meas and norm and sim with the variables as columns at the moment so I am using meas['isc'] rather than isc_meas which would be equivalent. I hadn't asked for ic and vc names tio be added, if they become common then I would welcome suggestions/
@cwhanse
if you do "temperature_inv_operating_min" then the inv (level) is mixed in with the modifiers, it might be better to do "temperature_operating_min_inv" as that would be easier to parse if you are measuring something at different levels. You could maybe use double underscores to indicate the positions between them such as @toddkarin ALL I may have to use a long_form name (as you are doing) for contributions to PVLIB and a short_form name to actually use in systems. I'm sure this could be converted with automated translations such as resistance_series <-> rs temperature_module <-> tmod Is it worth having long and short forms in this? Or should I just work on this on my own? I've used these in the past |
sorry I closed this by mistake and have reopened it |
OK with me
I think the intent here is that a function signature (the argument list and the returned variables) uses long names. That's what creates compatibility across packages. Inside the function you can convert to whatever notation is convenient. |
@cwhanse OK thanks, I'll use the long form for compatibility and a "consistent short form" inside the code. If an automated translation facility is of any use I can share. One thing I think we haven't touched on is corrected data Previously I had used these codes for example for isc --> isc_AGTS isc or isc_U = uncorrected (default) A = corrected for AOI/beam fraction/reflectivity I'd used capital, initial letters and concatenated them in alphabetical order e.g. isc_AT or isc_TS I can't see an easy way of doing this that fits in with your conventions. Is this something we should consider or will it only be used internally? For now I have used "tcorr" as in I would probably agtscorr if I did them all. |
@steve-ransome I would say that the notation for temperature/irradiance/etc corrected values should be up to the user. For clearness index, pvsyst uses kT = ghi/ghi_toa. Is there a downside to defining a variable |
@toddkarin thanks
@toddkarin That's the definition I use for what I called kTh, I also had versions for plane of array kTi and 2D tracker kTn for normal where you take the global/extraterrestrial ratios on horizontal, tilted fixed and 2d tracked planes.. I'm happy with names like clearness_ghi as it's clear what it means. |
What about this for a set. Do you want different clearness_poa for poa_global and poa_direct? Irradiance,clearness_ghi,dimensionless,"Horizontal clearness index, clearness_ghi = ghi/ghi_toa ", |
input comes in W/m2 but is needed in kW/m2meas['poa_global_kw_m2'] = meas['poa_global']/1000 calculate normalised mlfm valuesnorm['isc'] = meas['isc'] / (meas['poa_global_kw_m2'] * isc_ref )
|
@toddkarin that's quite a comprehensive list, although beam fraction and diffuse fraction will be dependent on poa and I had always used them as I said previously What do others think? |
@mdeceglie what variable name do you prefer for performance ratio? |
@steve-ransome Yes, there is an optional suffix for non-standard units. Also, I prefer the more meaningful 0.80 over 80, i.e. stored as a fraction, not in percent. |
Here are a few more comments on version 0.1.1 Keep the variables in order "variable - modifier(s) - level - id" Optional suffixes should be split into level identifiers and others as in Optional Suffixes Levels Types of measurements Aggregated measurements (How are these to be used? show an example "_summed_day" ?) why not idc? inv or inverter ? modifiers relative or apparent first or last? random order I think the beam fraction is usually specified on the horizontal plane not poa, this needs to be clear in the name. measurement first, modifier second if possible e.g. height_array DateTime usually has a T as in date_time [YYYY-MM-DDTHH:MM:SS]: Date and time of measurement interval |
Good suggestion, I've split the optional suffixes. Anyone else have opinions about I'll switch to _inverter unless there are objections. Regarding modifiers, there seemed to be a strong desire to make these "human readable" for certain variables. Thanks for the random order suggestion. I changed the definition for fraction diffuse: Changed to height_array. The standard pandas date time doesn't have the T in this document: Do we want a different variables for |
IMO, pvterms should recommend ISO 8601 datetime values, although this is getting a bit far from recommending a common name for datetime. pandas understands ISO 8601, although I don't know why a space is substituted for the 'T' separator when values are displayed, perhaps to be more human friendly. |
Thanks for making many of the changes @toddkarin I had suggested yesterday But are still in this order "voltage_inv_ac_max", I think it makes more sense to put the "voltage" next to "ac", then the aggregator "max" followed by the level "inv" I understand about "human readable" and agree that "relative humidity" sounds better than "humidity relative". I see there's been talk on what other coding conventions for pvwatts, pvsyst, rdtools etc which all differ Couldn't we have a dictionary of approved terms for this work and then maintain look up terms for other conventions? e.g.
I think this would make it easier to follow and allow automated translation. I'd be happy to contribute to this work.` What about What is the status of this convention , how much other code has been already translated to use it? |
My suggestions in bold On the user guide page I suggest having the following, In order to standardize some common naming modifications, we have chosen a common order. (1) _XX, where XX is the name of the particular system. For simplicity, it is not necessary to use all modifications for a particular variable, you must only use one option from each variable e.g. you can't have _rated_sim or _string_array. Some examples: temperature_module_12 Module temperature sensor 12. |
I'm trying to get my code for the Loss Factors and Mechanistic Performance Models working using this naming convention before the workshop on 5th Aug https://pvpmc.sandia.gov/7865-2/
There are a few parameters I found missing that may be useful to all and there will be a few that are maybe MLFM specific.
I've made a list with suggested variable names, maybe they can be added, or let me know whether they already exist, or if they should just be calculations in my code..
Useful for all
Used by MLFM
rsc = -1/(dV/dI)|V=0 (Ohms)
roc = -1/(dV/dI)|V=Voc (Ohms)
i_half_vmp = current at Vmp/2 (A)
v_half_imp =voltage at Imp/2 (V)
Any help welcome!
The text was updated successfully, but these errors were encountered: