finally, the code for training looks like this. but the loss does not move at all and all parameters show NONe. i have absolutly no idea , what wrong m i doing.
modelFCNN = NetworkFCNN(R_k_plus_1_train.shape[1], 1)

#weight intizalization routine (Xavier if batch normalisation is there int he netowrk, or else uniform)
glorot_weight_zero_bias(model=modelFCNN)

criterion1 = torch.nn.MSELoss()
optimizer1 = torch.optim.Adam(modelFCNN.parameters(), 
                            lr=HP1['LEARNING_RATE']) 
                            #momentum=HP['NUM_MOMENTUM'], 
                            #weight_decay=HP['WEIGHT_DECAY'], 
                            #)
#scheduler1 = torch.optim.lr_scheduler.LambdaLR(optimizer1, lr_lambda=[epoch_smooth_decay])  
# select the LR schedule


modelFCNN.train()
model.eval()

ref_train_losses = []
ref_valid_losses = []
ref_valid_score = []
ref_epochs=[]

#start = time.time()

#epoch_iter = tqdm(range(1, HP['NUM_EPOCHS'] + 1))
epoch_iter =range(1, HP1['NUM_EPOCHS'] + 1)

#for epoch in range(1, HP['NUM_EPOCHS'] + 1):

for epoch in epoch_iter:   
    #epoch_iter.set_description('Epoch')
    
    ref_epochs.append(epoch)
    
    #training over all batch data
    batch_idx_ref, tloss_avg_ref,vloss_avg_ref = 0, 0,0
    for batch_idx_ref, (data_rk, data_rk_plus1) in enumerate(train_loader_ref):
        #print (batch_idx)
        y_pred_ref = modelFCNN(to_var(data_rk_plus1)) # predict y based on x
        
        

        
        # concatenate the tensor with the state vector along columns
        #sysnn_input = np.concatenate( (to_np(data_rk),to_np(y_pred_ref) ),axis=1)
        sysnn_input = torch.cat( (data_rk,y_pred_ref) ,dim=1)

        
        # now feed in this input to the trained sys NN model
        output_sys=model(to_var(sysnn_input))

        
        #compute the loss 
        loss_FCNN = criterion1(output_sys, to_var(data_rk_plus1)) # compute loss  


        optimizer1.zero_grad() # clear gradients
        loss_FCNN.backward() # compute gradients
        optimizer1.step() # apply gradients

        tloss_avg_ref += loss_FCNN.item()

    tloss_avg_ref /= batch_idx+1
    ref_train_losses.append(tloss_avg_ref)
        
    print(" Epoch : %s , Train loss: %s " %(epoch,tloss_avg_ref))