# checker.py # List of physics keywords physics_keywords = [ 'absorptivity', 'acceleration', 'accelerometer', 'acoustics', 'adhesion', 'aerodynamics', 'albedo', 'alloy', 'ammeter', 'amplifier', 'amplitude', 'anion', 'annihilation', 'anode', 'anti-gravity', 'antimatter', 'antineutron', 'antiparticle', 'antiproton', 'antiquark', 'astrophysics', 'atom', 'axion', 'ballistics', 'barometer', 'baryon', 'battery', 'beam', 'bending', 'biocatalysis', 'biophysics', 'boson', 'bremsstrahlung', 'brittleness', 'bubble', 'buoyancy', 'calculus', 'capacitance', 'capacitor', 'cathode', 'cation', 'centigrade', 'coherence', 'cohesion', 'convection', 'creep', 'crest', 'cyclotron', 'decibel', 'deflection', 'deformation', 'density', 'derivative', 'diamagnetism', 'dielectric', 'diffraction', 'dispersion', 'displacement', 'distance', 'drag', 'ductility', 'dynamics', 'dyne', 'econophysics', 'elasticity', 'electricity', 'electrodynamics', 'electromagnet', 'electromagnetism', 'electromechanics', 'electron', 'electronegativity', 'electronics', 'electrostatics', 'electrostriction', 'emissivity', 'energy', 'endothermic', 'enthalpy', 'entropy', 'equipartition', 'exothermic', 'farad', 'faraday', 'fermion', 'ferrimagnetism', 'ferromagnetism', 'fission', 'flavour', 'fluid', 'fluorescence', 'flux', 'focus', 'frequency', 'friction', 'function', 'fusion', 'gas', 'geophysics', 'gluon', 'gravitation', 'graviton', 'gravity', 'ground', 'hadron', 'half-life', 'heat', 'hertz', 'homeokinetics', 'hydrostatics', 'impedance', 'implosion', 'impulse', 'inductance', 'infrasound', 'inertia', 'integral', 'ion', 'ionization', 'isotope', 'joule', 'kelvin', 'kinematics', 'laser', 'lepton', 'lever', 'light', 'liquid', 'm-theory', 'machine', 'magnetism', 'magnetostatics', 'mass', 'mathematics', 'matrix', 'matter', 'mechanics', 'melting', 'meson', 'molecule', 'moment', 'momentum', 'motion', 'muon', 'nanoengineering', 'nanotechnology', 'neurophysics', 'neutrino', 'neutron', 'nucleon', 'nucleus', 'nuclide', 'ohm', 'optics', 'paraffin', 'parity', 'particle', 'pendulum', 'phenomenology', 'phosphorescence', 'photon', 'photonics', 'physics', 'piezoelectricity', 'pion', 'plasma', 'plasticity', 'pneumatics', 'positron', 'power', 'pressure', 'probability', 'proton', 'pulley', 'pulse', 'quantization', 'quantum', 'quark', 'quasiparticle', 'radiation', 'radionuclide', 'redshift', 'refraction', 'relativity', 'scalar', 'scattering', 'science', 'screw', 'siphon', 'solid', 'solubility', 'sonoluminescence', 'sound', 'speed', 'statics', 'stiffness', 'strain', 'stress', 'sublimation', 'superconductivity', 'superconductor', 'temperature', 'thermodynamics', 'thermometer', 'torque', 'toughness', 'trajectory', 'transducer', 'trigonometry', 'trimean', 'vacuum', 'vector', 'viscoelasticity', 'viscosity', 'voltage', 'voltmeter', 'volume', 'wave', 'wavelength', 'wedge', 'weight', 'wind', 'work', 'x-ray' ] def checker(query): try: found = False list_of_words = query.lower().split(" ") for word in list_of_words: for keyword in physics_keywords: if word in keyword.lower().split(" "): found = True break if found: break return found except Exception as e: print(f"Error: {e}") return False