Look, if you need to post fake code as a stand-in, then say so upfront and try to make sure that it either compiles or produces the same error that you got from your real code. I had to change
normal(0,s_trial[o];
}
to
normal(0,s_trial[o]);
in order for the code to compile.
Now when I Googled the error message “Dimension mismatch in assignment”, I found a forum post that seemed to indicate that the error happens during compilation. Before the error message that you posted, did you see a message that said, “SYNTAX ERROR, MESSAGE(S) FROM PARSER”?