public static TableModel getLSAWTreeSimCAll(String englishQuery, String frenchQuery, String germanQuery,
            int descLangOption, int commentLangOption, int captionLangOption,
            double descWeight, double commentWeight, double captionWeight,
            double thresholdDesc, double thresholdComment, double thresholdCaption) {
        double w1, w2, w3;
        List<Result> resultList = new ArrayList<Result>();
        List<Result> resultListC1;
        List<Result> resultListC2;
        List<Result> resultListC3;

        resultListC1 = getLSADescLang(englishQuery, frenchQuery, germanQuery,
                thresholdDesc, 0);
        resultListC2 = getLSACommentLang(englishQuery, frenchQuery, germanQuery,
                thresholdDesc, 0);
        resultListC3 = getLSACaptionLang(englishQuery, frenchQuery, germanQuery,
                thresholdDesc, 0);

        w1 = descWeight + BOBOT_DESC;
        w2 = commentWeight + BOBOT_COMMENT;
        w3 = captionWeight + BOBOT_CAPTION;

        for (int i = 0; i < MAX_RECORD; i++) {
            double c1 = getResultValue(resultListC1, i);
            double c2 = getResultValue(resultListC2, i);
            double c3 = getResultValue(resultListC3, i);
            double devider = c1 == 0.0 ? 0.0 : w1;
            devider += c2 == 0.0 ? 0.0 : w2;
            devider += c3 == 0.0 ? 0.0 : w3;
            double total = 0.1 + 0.9 * (c1 + c2 + c3) / devider;
            if (total > 0.0) {
                resultList.add(new Result(i, total));
            }
        }

        Collections.sort(resultList, new Comparator<Result>() {
            @Override
            public int compare(Result o1, Result o2) {
                return o1.getId() == o2.getId() ? 1 : 0;
            }
        });
        return new TabelModelResult(resultList);
    }