<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="bbPress/1.0.2" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>k-Wave User Forum &#187; Topic: Drive the input signals</title>
		<link>http://www.k-wave.org/forum/topic/drive-the-input-signals</link>
		<description>Support for the k-Wave MATLAB toolbox</description>
		<language>en-US</language>
		<pubDate>Wed, 13 May 2026 03:07:07 +0000</pubDate>
		<generator>http://bbpress.org/?v=1.0.2</generator>
		<textInput>
			<title><![CDATA[Search]]></title>
			<description><![CDATA[Search all topics from these forums.]]></description>
			<name>q</name>
			<link>http://www.k-wave.org/forum/search.php</link>
		</textInput>
		<atom:link href="http://www.k-wave.org/forum/rss/topic/drive-the-input-signals" rel="self" type="application/rss+xml" />

		<item>
			<title>JOKEjoe on "Drive the input signals"</title>
			<link>http://www.k-wave.org/forum/topic/drive-the-input-signals#post-4955</link>
			<pubDate>Fri, 23 Jan 2015 03:53:21 +0000</pubDate>
			<dc:creator>JOKEjoe</dc:creator>
			<guid isPermaLink="false">4955@http://www.k-wave.org/forum/</guid>
			<description>&#60;p&#62;Hi Brad ,&#60;/p&#62;
&#60;p&#62; thanks for your answer.  &#60;/p&#62;
&#60;p&#62; joe
&#60;/p&#62;</description>
		</item>
		<item>
			<title>Bradley Treeby on "Drive the input signals"</title>
			<link>http://www.k-wave.org/forum/topic/drive-the-input-signals#post-4953</link>
			<pubDate>Thu, 22 Jan 2015 22:27:05 +0000</pubDate>
			<dc:creator>Bradley Treeby</dc:creator>
			<guid isPermaLink="false">4953@http://www.k-wave.org/forum/</guid>
			<description>&#60;p&#62;Hi JOKEjoe,&#60;/p&#62;
&#60;p&#62;If you want to use multiple source transducers in the same simulation, you will need to define these individually using &#60;code&#62;source.p_mask&#60;/code&#62; and &#60;code&#62;source.p&#60;/code&#62; (rather than using the &#60;code&#62;kWaveTransducer&#60;/code&#62; class). Essentially, you define the position and shape of the transducers using the source mask, and then assign the time-varying signals used to drive the grid points within the source mask to &#60;code&#62;source.p&#60;/code&#62;. There is a lot more information on how to get started in the &#60;a href=&#34;http://www.k-wave.org/documentation/k-wave_time_varying_source_problems.php&#34;&#62;Time Varying Source Problems&#60;/a&#62; examples (these are accessible in the MATLAB help browser), and in the &#60;a href=&#34;http://www.k-wave.org/documentation.php&#34;&#62;k-Wave manual&#60;/a&#62;.&#60;/p&#62;
&#60;p&#62;Brad.
&#60;/p&#62;</description>
		</item>
		<item>
			<title>JOKEjoe on "Drive the input signals"</title>
			<link>http://www.k-wave.org/forum/topic/drive-the-input-signals#post-4944</link>
			<pubDate>Thu, 22 Jan 2015 14:00:26 +0000</pubDate>
			<dc:creator>JOKEjoe</dc:creator>
			<guid isPermaLink="false">4944@http://www.k-wave.org/forum/</guid>
			<description>&#60;p&#62;HI,&#60;br /&#62;
    If my understanding to the question  is accurate,maybe i face the same question.i am a college student,and i have a homework recendly:i kown the simple use of k-wave 3D,and my goal is use the tool to achieve two point communicate with one receiver,the receiver can receive the two signal at the same time,but the k-wave only support one transducer communicate with one receiver,i try to define two different transducer(different coordinate,transduce different signal),then maybe i should run kspaceFirstOrder3D,now i do not kown how to make the two transducer work in the same kgrid.later,i want to use frequency demodulator to separate the two signal.It puzzle me for a long time.&#60;br /&#62;
    Please, any suggestion is welcome.&#60;br /&#62;
THX
&#60;/p&#62;</description>
		</item>
		<item>
			<title>gigi on "Drive the input signals"</title>
			<link>http://www.k-wave.org/forum/topic/drive-the-input-signals#post-4881</link>
			<pubDate>Tue, 09 Dec 2014 21:01:19 +0000</pubDate>
			<dc:creator>gigi</dc:creator>
			<guid isPermaLink="false">4881@http://www.k-wave.org/forum/</guid>
			<description>&#60;p&#62;Hi Brad,&#60;/p&#62;
&#60;p&#62;thank you, but if I had 32 transmitting elements and one receiving how is the received signal? it is the result of a sort of superposition?&#60;/p&#62;
&#60;p&#62;It is possible to download the example_us_bmode_linear_transducer_modified.m from here:&#60;br /&#62;
&#60;a href=&#34;https://www.dropbox.com/s/v5bfybo4i3n36f5/example_us_bmode_linear_transducer_modified.m?dl=0&#34; rel=&#34;nofollow&#34;&#62;https://www.dropbox.com/s/v5bfybo4i3n36f5/example_us_bmode_linear_transducer_modified.m?dl=0&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;I did not change many things..&#60;/p&#62;
&#60;p&#62;thank you so much.&#60;/p&#62;
&#60;p&#62;Gg
&#60;/p&#62;</description>
		</item>
		<item>
			<title>Bradley Treeby on "Drive the input signals"</title>
			<link>http://www.k-wave.org/forum/topic/drive-the-input-signals#post-4873</link>
			<pubDate>Fri, 05 Dec 2014 18:10:56 +0000</pubDate>
			<dc:creator>Bradley Treeby</dc:creator>
			<guid isPermaLink="false">4873@http://www.k-wave.org/forum/</guid>
			<description>&#60;p&#62;Hi Gg,&#60;/p&#62;
&#60;p&#62;When an object of the &#60;code&#62;kWaveTransducer&#60;/code&#62; class is used as a sensor, the output signals are those received by the individual elements. No beamforming is performed unless you explicitly call the &#60;code&#62;scan_line&#60;/code&#62; method. For example, if you run the same simulation with 32 active elements or 1 active element, the signal received by the 1 active element would be the same in both cases.&#60;/p&#62;
&#60;p&#62;I am not sure about the NaN. If you post your full code, I will try to run it and see what the problem is.&#60;/p&#62;
&#60;p&#62;Brad.
&#60;/p&#62;</description>
		</item>
		<item>
			<title>gigi on "Drive the input signals"</title>
			<link>http://www.k-wave.org/forum/topic/drive-the-input-signals#post-4861</link>
			<pubDate>Thu, 27 Nov 2014 18:51:33 +0000</pubDate>
			<dc:creator>gigi</dc:creator>
			<guid isPermaLink="false">4861@http://www.k-wave.org/forum/</guid>
			<description>&#60;p&#62;Hi Brad,&#60;/p&#62;
&#60;p&#62;Thanks a lot for you answer,&#60;br /&#62;
but for me is not clear if the output signal registered by one element is the result of the superposition of 32 signals that come from 32 transmitting elements at once or no.&#60;br /&#62;
Can you explain me this ?&#60;/p&#62;
&#60;p&#62;To change the transmit and receive configuration I defined two different objects of the kWaveTransducer, I posted the code before your answer, but I have a lot of NAN, I do not understand why. I used a step of one element.&#60;br /&#62;
Please, any suggestion is welcome.&#60;/p&#62;
&#60;p&#62;Gg
&#60;/p&#62;</description>
		</item>
		<item>
			<title>Bradley Treeby on "Drive the input signals"</title>
			<link>http://www.k-wave.org/forum/topic/drive-the-input-signals#post-4858</link>
			<pubDate>Tue, 25 Nov 2014 18:37:48 +0000</pubDate>
			<dc:creator>Bradley Treeby</dc:creator>
			<guid isPermaLink="false">4858@http://www.k-wave.org/forum/</guid>
			<description>&#60;p&#62;Hi Gg,&#60;/p&#62;
&#60;p&#62;To answer your first question, the simulation is performed a little differently than how you describe. All 32 elements are switched on at once for both transmit and receive, and are used to form a single scan line. There is a detailed explanation of how this works in the html help for the example in MATLAB (you can also access this &#60;a href=&#34;http://www.k-wave.org/documentation/example_us_bmode_linear_transducer.php&#34;&#62;online&#60;/a&#62;). If you want to transmit and receive on different numbers or configurations of elements, then you need to define two different objects of the &#60;code&#62;kWaveTransducer&#60;/code&#62; class.&#60;/p&#62;
&#60;p&#62;Hope that helps,&#60;/p&#62;
&#60;p&#62;Brad.
&#60;/p&#62;</description>
		</item>
		<item>
			<title>gigi on "Drive the input signals"</title>
			<link>http://www.k-wave.org/forum/topic/drive-the-input-signals#post-4855</link>
			<pubDate>Sun, 23 Nov 2014 10:39:45 +0000</pubDate>
			<dc:creator>gigi</dc:creator>
			<guid isPermaLink="false">4855@http://www.k-wave.org/forum/</guid>
			<description>&#60;p&#62;Dear All,&#60;/p&#62;
&#60;p&#62;below there is the code that I wrote,&#60;br /&#62;
that has some problem because my output (sensor_data) is full of NAN....&#60;/p&#62;
&#60;pre&#62;&#60;code&#62;for scan_line_index = 1:number_scan_lines

        % update the command line status
        disp(&#38;#39;&#38;#39;);
        disp([&#38;#39;Computing scan line &#38;#39; num2str(scan_line_index) &#38;#39; of &#38;#39; num2str(number_scan_lines)]);

        % load the current section of the medium
        medium.sound_speed = sound_speed_map(:, medium_position:medium_position + Ny - 1, :);
        medium.density = density_map(:, medium_position:medium_position + Ny - 1, :);

        % run the simulation
	    for index_active_element=1:transducer.number_elements

            transducer1.active_elements(index_active_element) = 1;

            sensor_data = kspaceFirstOrder3D(kgrid, medium, transducer1, transducer, input_args{:});

            if save_mat_files
               file_name = sprintf(&#38;#39;examples_us_pre_beamforming_sensor_data_full_scan_aperture_%s_tr_%s&#38;#39;, num2str(scan_line_index), num2str(index_active_element));
               cmd=[&#38;#39;save &#38;#39;,file_name,&#38;#39;.mat sensor_data&#38;#39;];
               disp(cmd)
               eval(cmd);
            end

            transducer1.active_elements(index_active_element) = 0;
	    end                

%       extract the scan line from the sensor data
%       scan_lines(scan_line_index, :) = transducer.scan_line(sensor_data);

        % update medium position
        medium_position = medium_position + transducer.element_width;

    end&#60;/code&#62;&#60;/pre&#62;</description>
		</item>
		<item>
			<title>gigi on "Drive the input signals"</title>
			<link>http://www.k-wave.org/forum/topic/drive-the-input-signals#post-4853</link>
			<pubDate>Sat, 22 Nov 2014 19:05:50 +0000</pubDate>
			<dc:creator>gigi</dc:creator>
			<guid isPermaLink="false">4853@http://www.k-wave.org/forum/</guid>
			<description>&#60;p&#62;I apologize,&#60;br /&#62;
but I wrote transducer1.mask(i) = 1; but was transducer_input.mask &#60;/p&#62;
&#60;p&#62;thanks a lot.&#60;/p&#62;
&#60;p&#62;Gg
&#60;/p&#62;</description>
		</item>
		<item>
			<title>gigi on "Drive the input signals"</title>
			<link>http://www.k-wave.org/forum/topic/drive-the-input-signals#post-4851</link>
			<pubDate>Sat, 22 Nov 2014 15:36:06 +0000</pubDate>
			<dc:creator>gigi</dc:creator>
			<guid isPermaLink="false">4851@http://www.k-wave.org/forum/</guid>
			<description>&#60;p&#62;I apologize but I forget to tell that &#60;/p&#62;
&#60;p&#62;what are N and M in the NxM  matrix: &#60;/p&#62;
&#60;p&#62;N is the number of active elements and M is the number of samples&#60;/p&#62;
&#60;p&#62;thanks a lot.&#60;/p&#62;
&#60;p&#62;Gg
&#60;/p&#62;</description>
		</item>
		<item>
			<title>gigi on "Drive the input signals"</title>
			<link>http://www.k-wave.org/forum/topic/drive-the-input-signals#post-4850</link>
			<pubDate>Sat, 22 Nov 2014 15:28:40 +0000</pubDate>
			<dc:creator>gigi</dc:creator>
			<guid isPermaLink="false">4850@http://www.k-wave.org/forum/</guid>
			<description>&#60;p&#62;Hi All, Hi Dr. Cox and Dr. Treeby,&#60;/p&#62;
&#60;p&#62;The example &#34;example_us_b_mode_linear_transducer&#34;,&#60;/p&#62;
&#60;p&#62;% ...illustrates how k-Wave can be used for the simulation of&#60;br /&#62;
% B-mode ultrasound images (including tissue harmonic imaging) analogous to&#60;br /&#62;
% those produced by a modern diagnostic ultrasound scanner. It builds on&#60;br /&#62;
% the Defining An Ultrasound Transducer, Simulating Ultrasound Beam&#60;br /&#62;
% Patterns, and Using An Ultrasound Transducer As A Sensor examples. &#60;/p&#62;
&#60;p&#62;just to use the same words of the authors :-)&#60;/p&#62;
&#60;p&#62;The script in the RUN SIMULATION session is principally constituted by a loop on the number of scan lines (in this case 96), inside it is performed the generation of a phantom and contextually it is applied the&#60;br /&#62;
scan_lines method;&#60;/p&#62;
&#60;p&#62;At the input of kspaceFirstOrder3D function we have as source and as output the same transducer object&#60;/p&#62;
&#60;p&#62;kspaceFirstOrder3D(kgrid, medium, transducer, transducer, input_args{:});&#60;/p&#62;
&#60;p&#62;For what concern the output we have a sensor_data matrix of nxm elements&#60;br /&#62;
Now my question, every one single signal received it is generated by only one active element at a time?&#60;br /&#62;
I understand that the simulation is performed as below.&#60;br /&#62;
If we have 32 active elements, the first one element release the input pulse and register the returned pulse, after this, in sequence,  the second element release the input pulse and register the returned pulse, the third element release the input pulse and register the returned pulse and so on...&#60;br /&#62;
until all 32 signals were recorded, it is true?&#60;/p&#62;
&#60;p&#62;I would like to change the things in way to register with all 32 elements the signal that come from only one element, and choosing from time to time which element or which group of elements will be active in input.&#60;br /&#62;
At the limit it could have the received signal for each combination of the elements transmitters and receivers (openings full scan), where it will sequentially for each transmitting element all the receiving elements are illuminated. That is, if I for example, an array of 32 elements, for each of them which emits a pulse, it will have 32 that receive up to cover all combinations to have a total of 1024 combinations.&#60;/p&#62;
&#60;p&#62;I think that it will be possible to do this putting the&#60;br /&#62;
kspaceFirstOrder3D inside a inner loop (32 or different number_of_active_elements iterations) after defining a new object transducer ie using a transducer_input (that will change inside at the loop) as input and a transducer_output  object as output,&#60;br /&#62;
it will be something like this:&#60;/p&#62;
&#60;p&#62;for i=1:step:number_of_elements&#60;/p&#62;
&#60;p&#62;  transducer1.mask(i) = 1;&#60;/p&#62;
&#60;p&#62;  sensor_data = kspaceFirstOrder3D(kgrid, medium, transducer_input(i), transducer_output, input_args{:}).&#60;/p&#62;
&#60;p&#62;end&#60;/p&#62;
&#60;p&#62;but maybe there is a solution more smart than this mine... &#60;/p&#62;
&#60;p&#62;How can I do it?&#60;/p&#62;
&#60;p&#62;I hope that my questions are clear. &#60;/p&#62;
&#60;p&#62;thanks a lot&#60;/p&#62;
&#60;p&#62;Gg
&#60;/p&#62;</description>
		</item>

	</channel>
</rss>
