In this section, instructions about how to use SolarPVsoft Application 1.0.0 are given. The following links will take you to the different sections of SolarPVsoft.

Index



SolarPVsoft consists of three main functionalities, which simulate the operation of a solar cell at a diiferent experimental conditions. Diode Equation and Drift - Diffusion Modeling are similar functionalities, as both display a set of fields in a form, which after clicking on the button, they are sent to the server. However, Quantum Efficiency requires the user to upload a file to the server along with some chosen options

Every functionality display a results page, if the calculation is succesful. These pages contain results obtained from the calculation process (either numerical or a chart), and the possibility to download a zip directory which contains result files for later use. Every functionality will be explained in detail on each section.

Every page display on top a navigation bar. This bar allows the user to move through the entire application from a functionality to a different one. Either SolarPVsoft or Home tabs, redirect to main application page.

In the Home page, the user will be able to access to each funcionality as well, through the images or the displayed buttons. In case there is any error through application usage or any calculation process, an error page will be displayed, notifying the produced error to the user and a brief explanation of itself. This way the user knows what might have gone wrong and how to solve it. The SolarPVsoft application has its own limits, so depending on user input data, senseless results or an error page may be displayed.

Every time a calculation process end, results will be kept for a range of an hour or two. In case a user tries to get some results from a calculation which happened more than two hours ago, an error page will be displayed, as this information will not longer exist. A message will be displayed after every calculation, so the user knows about this situation beforehand.

Every page to introduce values for the calculation process have a captcha field. This is made as a necessary secure procedure to block automatic bots from requesting calculation through form fields. Beware of clicking on captcha field, so it changes every time is clicked in.


Quantum Efficiency allows the user to calculate the integrated current density in a range of wavelenghts. The usage of this functionality goes with a set of options which can be chosen depending on the type of calculation that will be made and the possibility to upload a file. This file must be uploaded with a '.dat' or '.txt' extension. In case a different extension is uploaded, an error page will be displayed. It is important to choose the calculation options before uploading the file, once it is uploaded, although these choices will be still visible, any change applied to them will not change anything through calculation process. Therefore, it is really important to first select the calculation choices and then upload the file.

How to use it

First option will let the user make this calculation through measured efficiencies or currents. This is due to the number of gauges which do not transform current values into efficiency ones. Thus, we allow the user to introduce any of them, after clicking on the desired option. If "current" is selected, then the unit section is disabled. The reason for this is to block these options as current values are not measured as percentages. But, in case efficiency option is clicked, these options will be enabled again, and user will be able to choose the one which links to their values (hundred percent or parts per unit). In the case that the "current" option is selected, user will notice that three files will be required to be uploaded instead of one. See below for further details.

Next option will allow the users to decide the range of wavelengths to make the calculation. It is noteworthy that users might want to make calculations in a range of wavelengths which do not correspond to the one the uploaded file has. Therefore this option allows the users to change this range and adjust it to their own preferences. If the user choose a larger range than the one the file uploaded file has, SolarPVsoft will automatically adjust its calculation to the last wavelength in the file. In case, values are uploaded in increasing order, (highest wavelength and efficiency/current value on top and lowest on the bottom), SolarPVsoft will handle this and make the calculation as usual.
In case, values are written down in the file in a random order, SolarPVsoft will not be able to handle, and thus an error might be raised. Users must be careful with their data order and be sure format is adjusted to the one required by this very application.

If 'Efficiency' option is selected, only one file is required to be uploaded (file listing with wavelengths and efficiencies - hundred percent or parts per unit), but if the 'Current' option is chosen three files must be uploaded (first file with wavelength values and current cell values, second file with wavelength values and current photodiode values and a third file with wavelenght values and photodiode standard values - current or irradiance values for this last file). In case the standard photodiode values are given in the form of irradiances, cell dimension in cm² must be indicated)

The input files must be structured in two separated columns. First column must contain wavelength values in nanometers (SolarPVsoft only considers wavelength values which are separated by one nanometer, if this separation were smaller, an error might come up) and the second column with the efficiency or current values (depending on the desired option). First line can have a comment (indicated by a '#' character), but the rest of lines must contain these two columns with the values. In case it is not formatted this way, an error may result. Every file must have an extension '.dat' or '.txt', in case it is different.

Once every required field is filled out, the user will be able to click on the 'Calculate' button. This action leads the user to a new page which displays the results of the calculation. This result page contains numerical results, a plotted chart (either Current or Efficiency values are plotted on the chart), a 'Download File' button (which let the user download few files in a Zip folder with some results), and a 'Start over!' button which lets the user to go back and calculate again default rendered values.

A message is displayed on the screen after loading this result page. This message lets the user know the calculated results will be deleted in an hour.

The zip folder contains a README file (which plays as an instructions file), chart (which contains plotted chart) and if Current option was chosen by the user, an efficiencies file (which contains two columns of values, wavelength values and current values).

Errors

Captcha
Captcha error is produced every time an input captcha value is wrong. Beware, every time captcha field is clicked, the image changes!

Required files
In case no file is found after sending data, an error comes up. Beware of uploading the required number of files for each calculation!

Internal error
In case there is any error when handling the request process, this error is displayed. If this happens, please verify your uploaded file follows the format requirements indicated above

File extension
File extension error is raised when the file extension does not fulfill the functionality requirements. Extension must be '.dat' or '.txt'.

Fill every field
Whenever there are some empty fields, this error is raised. Please be sure to fill every field, as all of them are required for a regular calculation process.

File to delete do not exist
In case an uploaded file has already been deleted either by the application or the user, this one will not exist anymore. Hence, if the user tries to delete it again, an error is raised. In this case, please click the 'Start over!' button in error page.

Required parameters
Required parameters error is raised if there was an error trying to get one of the requested parameters. Be sure every parameter requested was filled

Verify your file
In case a file does not contain numbers in it, this error is produced. Please, be sure every value in the file is a number. In case a small amount of null or NaN values are present in the file, the calculation process will go through. In case it does not, consider removing all of them

Internal error in calculation process
This error is raised whenever a calculation process end in an empty result or yields senseless values. Please verify that the input data make sense

Input parameters format
Input parameters format error is raised whenever an input value does not follow application format rules. Beware of having file/s filled with numbers and input wavelength values range as numbers

Internal error while chart creation
This error is raised anytime there is error through the chart building process. To avoid it, verify that the input data follow application rules

Internal error while results download
Internal error while results download is raised every time a problem is found when downloading a zip folder. In this case, try again.

Cookies
This error is raised every time a user tries to access any functionality of SolarPVsoft without having accepted cookies policy


Diode Equation allows the user to calculate the IV Curve through the Diode Equation. The usage of this functionality goes with a set of boxes, which are required to be filled.

How to use it

Diode Equation has a set of boxes, filled with values, which are sent to the server. This set of values are necessary to make the calculations, so beware of filling all of them. In case any field is empty, the very page will warn the user colouring the field in red. Once the red field is clicked, red color vanishes and lets the user add a new value. Every time any introduced value does not follow application rules, an error sign will be displayed on the page.
In order to avoid this, application rules are displayed:

  • Any number that is not an integer, decimal or in scientific notation will be displayed as an error
  • In case the RESISTANCES option is selected, 'Series Resistance' value must be between 0 and 15 (both included) and 'Shunt Resistance' value must be between 100 and 106 (1E6) (both included)
  • Whenever captcha field is not filled
  • Always Initial voltage is higher or equal to Final voltage, as the calculation of a reverse IV Curve is not enabled

Required parameter fields are: Dark Saturation Current, Light Generated Current (both measured in Ampers), Ideality factor, Temperature (Kelvin), Series and Shunt Resistances - in case RESISTANCES option is selected - (measured in Ohms), and Initial, Final and Step voltage (in Volts).
NORMAL or RESISTANCES option allow the user to choose if they want to change the resistance values or not. In case NORMAL is chosen, resistance values are taken in consideration but not changed. On the other hand, anytime the RESISTANCES option is selected, the resistance values can be modified.

Initial voltage and Final voltage determine the voltage range in which the IV Curve will be calculated. Step voltage value determines the step used for IV Curve calculation. The one by default is enough to obtain a good curve resolution and precision. The smallest this value gets, the slower the calculation will become.

Series Resistance value is related to the number of iterations required to solve accurately the Diode Equation. Please keep in mind that the higher this value, the more iterations will be necessary and the calculation process will take longer.

Once every required field is filled out, the user will be able to click on the 'Calculate' button. This action takes the user to a new page which displays the calculation process result. This result page contains numerical results, a plotted chart, a 'Download File' button (which lets the user download few files in a Zip folder with some results), a 'Start over!' button which takes the user back with default rendered values or the 'Keep same values!' button which does the same action as the previous one, but in this case SolarPVsoft keeps the previous values introduced by the user.

A message is displayed on the screen after loading this result page. This message lets the user know the calculated results will be deleted in an hour.

The zip folder contains a README file (including specific instructions), chart (which contains a plotted chart), data file (which contains two columns of values, current - right - versus - voltage - left) and results file (which contains the numerical data displayed in the page).

Errors

Captcha
Captcha error is produced every time an input captcha value is wrong. Beware, every time captcha field is clicked, the image, and therefore the value changes!

Internal error
In case there is any error through handling request process,this error comes up. If this error is raised, please verify that your uploaded file complies with the format requirements indicated above

Series resistance
Series resistance error is raised whenever this value is lower than 0 and higher than 15 Ohms

Shunt resistance
Shunt resistance error is raised whenever this value is lower than 100 and higher than 1E6 Ohms

Fill every field
If some boxes in the form are left empty, this error is raised. Please be sure to fill every field, as all of them are required for a regular calculation process

Required parameters
Required parameters error is raised if there was an error trying to get one of the requested parameters. Be sure every parameter requested was filled

Voltage values
In case one voltage value is missing, this error is raised. Please verify every voltage field is filled out and try again.

Initial and Final voltages
SolarPVsoft does not have IV Curve reverse calculation, therefore the Initial voltage value must always be lower than the Final voltage value. If you invert these values or both are equal, and error is raised.

Check your input values
In case no current value is obtained from input parameters, this error is raised. Please verify values make sense and can produce a result.

Current value out of range
Whenever a current result value is senseless or not numerical, this error is raised. To avoid this, please be sure input values can produce a result.

Wrong results
Wrong results error is raised whenever there is no numerical convergence in the calculation. Please, verify your input values can produce a regular result.

Internal error in calculation process
This error is raised when a result calculation process ends in an empty result or produces senseless values. Please verify input data make sense

Input parameters format
Input parameters format error is raised when an input value does not follow application format rules. Beware of introducing values according to the specification indicated above

Internal error while chart creation
This error is raised always there is any problem through the chart building process. To avoid it, verify that the input data follows application rules

Internal error while results download
Internal error while results download is raised every time a problem is found when downloading zip folder result. If this is the case, try again.

Cookies
This error is raised every time a user tries to access any functionality of SolarPVsoft without having accepted cookies policy

Drift - Diffusion Modeling allows the user to calculate the IV Curve and the time-dependent photocurrent using the Drift-Diffusion Modeling. The usage of this functionality goes with a set of boxes, in a form-like, which are required to be filled. There are two forms in this functionality: Basic and Advanced (the Basic form has fewer parameters than the Advanced). Basic form is mainly aimed at simple calculations without bothering too much about physical and numerical conditions. If you wish a deeper control of these parameter, you can use the Advanced form.

How to use it

Drift - Diffusion Modeling has two forms, each one with a set of boxes. To to get a result, every one of them have to be filled. In case a box is left empty, the application will warn the user by colouring the box in red. Once the red box is clicked, red color vanishes and lets the user add a new value. Every time any introduced value does not follow the application rules, an error sign will be displayed.
In order to avoid this, consider the following:

  • Any number that is not an integer, decimal or in scientific notation will be displayed as an error
  • Final value cannot be higher than 1.3 V
  • Captcha field must be correctly input
  • The Initial voltage value must be higher or equal to the Final voltage value, as the reverse calculation of the IV Curve is not enabled

Before making the calculation, illumination can be chosen to be WHITE or MONOCHROMATIC. Depending on the selected option, the absorption coefficient will be enabled to be modified by the user if MONOCHROMATIC option is selected, otherwise it will remain unactive. If the white light option is chosen, users will need to upload a file containing wavelength (nm) and absorbance values (1/m) (Abs coeff box will be disabled in this case). If the monochromatic option is selected, no file will be required to be uploaded, a value in Abs coeff box will be required instead.

As mentioned above, this functionality allows the user to calculate Time-dependent Current or IV Curve. In order to do this, 'Just one value of voltage' option must be chosen to get Current, and Curve IV Simple to get the full IV Curve calculation. Both forms have the same options, so the user will be able to make both calculations using both forms.

Initial voltage and Final voltage determine the range of voltage values in which the IV Curve will be calculated. Step voltage value determines the step used for the IV Curve calculation. The one by default is enough to obtain a good curve resolution and precision. The smallest this value gets, the slower the calculation will become. Note that if these values are set too low, the server might shut down the calculation process.

Once every required box is filled out, the user will be able to click on the 'Calculate' button. This action leads users (as long as captcha and rest of values are correct) to a new element that shows the progress of this calculation, (this functionality takes longer to display a result). With this new element, users are able to check the kind of calculation, the voltage is being calculated at, the iteration is going through, and the current is being calculated at that iteration. Iteration numbers correspond to the 'nt' input value, only available on Advanced form, as this number states the number of iterations used by the calculation itself.
There is the possibility to stop calculation process at any time (excepting at first voltages). By clicking on Stop button, execution gets stopped and results are displayed. (This takesa few seconds).

Once the calculation is done, two outcomes might happen. If the calculation process returned a result, a result page is displayed, but in case there is any error, an error page is displayed. The result page contains numerical results, a plotted chart, a 'Download File' button (which let the user download few files in a Zip folder), a 'Start over!' button which lets the user to go back to the input form with default rendered values or the 'Keep same values!' button which does the same action as the previous one, but in this case previous values are kept.
The error page contains the error label (see below), an explanation of everything user can find along the page, a brief explanation of the error, the possibility to be redirected to this own page (Application Help) and two buttons to redirect users to the input form again with default values from SolarPVsoft or values introduced by the user before getting the error.

A message is displayed on the screen after loading this result page. This message lets the user know the calculated results will be deleted in an hour.

The zip folder contains a README file (containing some information about the contents of each file), chart (which contains plotted chart), results file (which contains numerical data displayed on the page), an output folder (which contains files with the x-dependent electron density, hole density, electromagnetic field and current density values), transients file (in case current option is chosen, which contains two columns of values, left one includes time values in seconds and right one the current values in mA/cm²), IVCurve (in case IV curve option is selected, which contains two columns of values, left one represent voltage values in volts, middle one the current values in mA/cm² and right one power values in mW/cm²).

Errors

Captcha
Captcha error is produced every time an input captcha value is wrong. Beware, every time captcha field is clicked, the image, and therefore the value changes!

Internal error
In case there is any error through handling request process, this error is raised. If this is the case, please verify your uploaded file to follow file format required and that the input data make sense.

nx/nt values
This error is raised every time one or both of these values are introduced as decimal and not as integers. Please, introduce them only as integers

Input values numbers
Input values must be numbers following the application rules commented above

Required fields
Always there are some empty fields, this error is raised. Please be sure to fill every field, as all of them are required for a regular calculation process

Voltage in an incorrect format
Whenever any voltage value is in an incorrect format, this error is raised. Please be sure to format values as stated above.

Input unit vales
Input unit vales error is raised every time values are not introduced in their correct unit format. Please verify the value is in the correct format before sending them to the server.

Required parameters
Required parameters error is raised if there was an error trying to get one of the requested parameters. Be sure every parameter requested was filled

Voltage values
In case one voltage value is missing, this error is raised. Please verify every voltage box is filled and try again.

Initial and Final voltages
SolarPVsoft does not include IV Curve reverse calculation, therefore Initial voltage value must always be lower than Final voltage value. If you input the value in the wrong order or both are equal, and error is raised.

Check your input values
In case no current value is obtained from input parameters, this error is raised. Please verify values make sense and can produce a result.

Current value out of range
Whenever a current result value is senseless or not numerical, this error is raised. In order to avoid this, please be sure input values can produce a result.

Internal error in calculation process
This error is raised whenever result calculation process end in an empty result or senseless values. Please verify that the input data make sense

Input parameters format
Input parameters format error is raised whenever a input value does not follow application format rules. Beware of introducing values as applications rules state

Internal error while chart creation
This error is raised always there is any problem through chart building process. In order to avoid it, verify that input data follow the application rules

Internal error while results download
Internal error while results download is raised every time a problem is found when downloading zip folder result in your hard disk. If this happens, try again.

Cookies
This error is raised every time a user tries to access any functionality of SolarPVsoft without having accepted cookies policy

Format uploaded file
This error is raised every time a user tries to upload a file with the following errors: a file extension different than '.txt' or '.dat', most of the uploaded values are NaN or nul or uploaded file does not follow the format indicated above.

Log file
This error is raised every time a user tries to download a Log file which does not exist. If this error is raised, no calculation was made, so this file was never created. To avoid this error, please try again and if this error is raised twice, make some changes to any input parameter. It might be a problem with any other error related to an input value upstream the execution


Captcha is a method to verify a human user is the one using SolarPVsoft. This captcha is enabled in every functionality and it is completely required to return results. It consists of an image and a field, every time the field is clicked, captcha value is renewed. Beware of clicking on it after typing the correct captcha value. Every time a wrong captcha value is introduced, an error will be raised, so please verify this captcha value is the correct one before sending it to the server.
In case the captcha value is incorrect, user will be able to find two options to keep going on with calculation process. In case user wants to start again with default values, just click on 'Start over!' button, but in case user wants to maintain the values previously introduced, just click on the 'Keep same values' button (this functionality is only available for Diode Equation and Drift - Diffusion Modeling).


Cookies are stored on the user's computer to allow SolarPVsoft to work properly and extends its own functionalities. Besides that, some cookies have the main function to increase data protection. It is important to make clear that application cookies do not store any personal data or use stored data for any other thing else than the functioning of this application. SolarPVsoft application is under 'Pablo de Olavide's University' policy, so data are used in a transparent way with the intention of giving users a nice experience and usability.
For further information, please visit the following page to know more about 'Pablo de Olavide's' policy: Personal data protection and the following one for Privacy policy: Policy

If cookies have not been accepted yet, please click on SolarPVsoft or Home tabs on the navigation bar on the top of the page to get back to accept our cookies.


Personal Data is never recorded on this application, excepting IP numbers, as a way to monitor SolarPVsoft activity and use. This information is not treated by third applications, so data is stored safely in our server. The purpose of this goal is to keep track of the number of visitors this application receives along with the most frequent funcionality use and other important information for the administration of SolarPVsoft.

Therefore, this information is exclusively for statistical purposes and it does not have any other intention. Hence, despite the fact we do store IP numbers, users are still completely unknown to the application. Thus, privacy is maintained as we do not link any IP numbers to any other personal data.

It is strongly important to us to be transparent in terms of data management, and let users understand that our intention with this application is to give service, we are not interested in personal data further than statistic information. Please, if you would like to know more about our data management policy or your rights, click on the following link: Personal data protection. SolarPVsoft's data management policy is under's 'Pablo de Olavide's ' University policy.


What is SolarPVsoft?
SolarPVsoft is a software project created to cover an empty niche in solar cells field. The idea is to give users (such as researchers, sector professionals, students or other interested people) the opportunity to automate regular calculations through this application. SolarPVsoft is able to simulate the response of a solar cell under certain conditions introduced by the user through requested parameters

Is it free to use?
SolarPVsoft is completely free to use and open to every person who might work in this field or just find it interesting to make some calculations and learn more about this fascinating field.

Is it possible to save my results?
SolarPVsoft lets users to download their results in their own computers, but these are not stored in the server for more than one hour

Is there any way to get in contact with us?
There is no way to get in contact with us for now. But we are planning to have a customer service soon, so users have a channel to solve issues or give us feedback about SolarPVsoft functionalities or new ideas to add

What can I do when I need to understand the theoretical part behind a functionality?
Every user can obtain more details about the mathematics and physics our functionalities are developed on, just clicking on our Theoretical Background section: Theoretical Background