Virus Diagnosis and detection