2016-06-30 3 views
0

Я бег некоторых моделирований молекулярной динамики с использованием CHARMM и я продолжаю работать в ту же ошибкуFortran ошибки во время выполнения: Плохо значения при целочисленных чтения

At line 631 of file /cygdrive/c/CHARMM/source/io/psfres.src (unit = 90, file ='tdskr2v5_min_CHARMM.psf') 
Fortran runtime error: Bad value during integer read 

Так что я не знаю, Fortran, просто предупреждение. Но я получаю ошибку; он ожидает целое число и получает что-то еще. Строка 631:

#if KEY_LONEPAIR==1 
    ! Read lone pair stuff 
    numlp=0 
    numlph=0 
    read(u,fmt05,end=45) numlpx,numlphx 

Моя проблема в том, что я не могу понять, где раздел «НЭП» мой файл. Таким образом, я не могу определить, где в моем исходном файле читается плохое целое число. Мне было любопытно, есть ли у кого-нибудь предложения по тестированию и т. Д., Чтобы попытаться выяснить, где моя ошибка. Я пробовал заменять любые символы целыми числами, и это не исправить, так что это должна быть ошибка пробела, я просто не знаю, как определить, где находится ошибка интервала!

Редактировать: Я также отслеживаю, где происходят переменные numplx и numphx, и это не помогает мне. Некоторые предложения по тестированию, чтобы попытаться найти ошибку, будем очень благодарны!

+0

Какая ценность 'fmt05'? Как выглядят данные? Это звучит как несоответствие между введенным вами форматом и фактическим контентом. – innoSPG

+0

Данные - это текстовый файл со столбцами целых чисел, поэтому я предполагаю, что мои столбцы могут быть отключены пробелом. Я просто не понимаю, как определить, где ошибка – Monica

+0

Так что просто не используйте формат, если файл содержит только цифры, которые вы читаете. – innoSPG

ответ

0

Вам необходимо предоставить дополнительную информацию для решения конкретной проблемы.

Предоставленная информация, вы читаете от входа «U», где-то в коде, вы открываете этот вход, если это входной файл, вероятно, читает строку без двух переменных: numlpx, numlphx

Существует также место, где определяется формат ввода «fmt05», это инструкция о том, как читать эти две переменные, формат может пропустить 3 строки и прочитать одну и следующую строку другой.

Также можно сказал, что если с плавающей точкой, строки и т.д.

Ошибка у вас есть то, что вы читаете целочисленную переменную, и следуя инструкциям в формате, нашли что-то другое, что не может быть истолковано как целое ,

Надеюсь, что это поможет вам проверить свои входные значения и место размещения.