Functional requirements

Requirement Description
Implementation of code calculating vector potentials Module allowing for the calculation of vector potential changes using Maxwell's extended formulas.
Implementation of code calculating the reflection coefficient Module allowing for the calculation of the metal reflection coefficient as a function of wavelength and incidence angle from 0 to 90 degrees.
Implementation of code calculating the amplitude of vector potentials and fields of electric and magnetic vectors Algorithm in which the result is presented for the given amplitude values of the input signal X and Y. Includes the function y(x).
Substitution of input parameters Possibility for the user to modify input parameters, which will allow for flexible operation of the program. It applies to the input parameters for vector potentials and electromagnetic fields, including their amplitude.
Display of results in the form of function graphs Implementation of code that, thanks to which, the results of conducted calculations will be displayed in a window containing the function graph.
Comparison of input data for changes in the electromagnetic field Results of calculated changes in vector potentials and fields of metal waves, which will be compared for two or three metals. The results will be presented to the user in a separate results section.
Saving output data to a CSV file Possibility to save calculated data to a file, which can later be imported to an Excel spreadsheet.
Saving output data to a text file Possibility to save calculated data to a file, where each function result is placed in a column, and subsequent rows are generated by a loop using an algorithm.
Saving output data to a file in the Mathematica program format Possibility to save calculated data in a file format recognizable by the Mathematica program. This allows for results to be read in this software and enables further analysis.
Choosing save paths The results can be saved in the directory where the application was run, or in a location selected by the user.
User Interface Standardization of the application's interface, making the program more user-friendly.

Non-functional requirements

Requirement Description
Programming Language The programming language will enable the creation of a fully functional application. The choice will be based on the program's requirements and the capabilities of the available programming languages.
Working Environment The application will be written and will operate in the Windows 10 environment.
Code Implementation The code will be written in a structured manner, with comments explaining individual functions and the purpose of specific files.
User Interface Implementation The application will have a user interface that will be transparent and easy to use.
Separation of Individual Modules The application modules performing different tasks will be separated, providing the user with a distinct interface for numeric modules.