Of course it is better if you keep all your controls with input data available at immediate request, without recreating every time the user interface, when your user switch from input to analyze or viceversa. This will give a snappy response time and a better usability.
From a conceptual point of view, I don't like to hide/show controls on the screen. In your scenario I will try do divide the UI interface in two parts, one with the input controls and another for the analyzing activities. (SplitContainer comes to mind) In this way the user will be able to see on which input data is working and allows you (perhaps) to dinamically change the analyzing results while changing the input data.
However, I don't know how complex are the input data and analyze parts. Sometimes, if you have a very cluttered form is better to separate the two functionality inside a tabcontrol or separate windows (or, as you have already done, with this groupbox hide/show functionality).