Unconfigured Ad

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • vishal.rossi
    Member
    • Apr 2013
    • 25

    #1

    Float Arithmatic in Bash

    Hi,
    I have to use this code below which works fine :

    output=$path
    tmp_dir=$path1
    mu=200
    sigma=80
    output_dir=$output
    tmp_dir=$tmp
    mu_length=$mu
    sigma_length=$sigma
    echo "input_format=sam
    sv_type=all
    mates_orientation=RF
    read1_length=100
    read2_length=100
    output_dir=$output
    tmp_dir=$tmp
    mu_length=$mu
    sigma_length=$sigma
    window_size=$((sigma*2 + mu*2))" > abc.txt


    What I need to do is
    window_size=$((sigma*2.82 + mu*2)) # float multiplication

    Will this thing work :
    window_size=$(('scale=4; sigma*2.82 + mu*2' | bc))

    Or any other way by which I can do float multiplication.

    Thanks in advance for the help
  • dpryan
    Devon Ryan
    • Jul 2011
    • 3478

    #2
    Originally posted by vishal.rossi View Post
    Will this thing work :
    window_size=$(('scale=4; sigma*2.82 + mu*2' | bc))
    Something like that should work. Bash doesn't do floating point arithmetic by itself. Honestly, you'll find if more convenient to anything more complicated in another language (perl, python, whatever). Shell scripts are great for simple process control jobs, but I wouldn't want to write anything else using them.

    Comment

    • Richard Finney
      Senior Member
      • Feb 2009
      • 701

      #3
      Try this
      window_size=`echo "sigma*2.82+mu*2" | bc`
      echo $window_size

      or

      window_size=`echo "scale=4;$sigma*2.82+$mu*2" | bc`

      See : http://stackoverflow.com/questions/1...-expr-on-float
      Last edited by Richard Finney; 05-04-2013, 08:46 AM.

      Comment

      • vishal.rossi
        Member
        • Apr 2013
        • 25

        #4
        Thanks for the reply. I too figured out a way:

        window_size=$(echo $d_mu*2 + $e_sigma*2.82 | bc -l)
        step_length=$(echo $d_mu*2/4 + $e_sigma*2.82/4 | bc -l)

        Comment

        Latest Articles

        Collapse

        • SEQadmin2
          16S/ITS Profiling vs. Shotgun Metagenomics: What Changes in Your Workflow?
          by SEQadmin2





          NGS has revolutionized clinical microbiology by offering new ways to identify and surveil pathogens without prior knowledge of the target. One popular approach is 16S rRNA and ITS amplicon sequencing, which targets specific microbial markers. But studies are increasingly incorporating shotgun metagenomics, a technique that sequences all DNA from a sample without targeting specific microbial markers. This approach allows more detailed taxonomic classification,...
          10-30-2026, 06:46 AM
        • SEQadmin2
          Multiomic Liquid Biopsy: What DNA/RNA Panels Reveal That DNA Alone Can’t
          by SEQadmin2



          Tumors contain complex mixtures of cell populations that evolve in response to treatment and host-specific factors. Tissue biopsies provide only static snapshots of a tumor’s state. But what if we could follow that evolution over time using a minimally invasive technique?

          Liquid biopsies can detect tumor-derived material circulating in the bloodstream, providing a way to study treatment response, detect emerging resistance, and discover new biomarkers. Circulating
          ...
          10-14-2026, 09:55 AM

        ad_right_rmr

        Collapse

        News

        Collapse

        Topics Statistics Last Post
        Started by SEQadmin2, Yesterday, 07:59 AM
        0 responses
        16 views
        0 reactions
        Last Post SEQadmin2  
        Started by SEQadmin2, 11-05-2026, 09:25 AM
        0 responses
        32 views
        0 reactions
        Last Post SEQadmin2  
        Started by SEQadmin2, 11-03-2026, 11:54 AM
        0 responses
        47 views
        0 reactions
        Last Post SEQadmin2  
        Started by SEQadmin2, 10-28-2026, 09:57 AM
        0 responses
        172 views
        0 reactions
        Last Post SEQadmin2  
        Working...